Add robots.txt

Rename for case sensitive
Optimize search engine
Remove useless options htaccess
Add Modal
Add delete, add contact
This commit is contained in:
2018-11-27 17:57:27 +09:00
parent 561bfbf475
commit 3222d1db84
16 changed files with 941 additions and 36 deletions

View File

@ -172,7 +172,7 @@ class APIContact extends API {
}
public function search( array $data ) {
if ( count_chars( $data[ "query" ] ) >= 3 ) {
if ( count_chars( $data[ "query" ] ) >= 2 ) {
$result = Contact::search( $data[ "query" ] );
if ( $result !== null ) {
$this->returnJson( [

View File

@ -3,8 +3,8 @@
namespace CAUProject3Contact;
class Config {
const SITE_JS_VERSION = '0.01';
const SITE_CSS_VERSION = '0.01';
const SITE_JS_VERSION = '0.02';
const SITE_CSS_VERSION = '0.02';
const TITLE_HEADER = 'Your contact';
const DESCRIPTION_HEADER = 'Manage your contact easly';

View File

@ -8,16 +8,16 @@ use PDO;
class BDD {
// Server BDD
// const SQL_SERVER = 'sql.sanchez-mathieu.fr'; // BDD Server
// const SQL_LOGIN = 'why7n0_contact'; // BDD Login
// const SQL_PASSWORD = 'fC3c87Gy'; // BDD Password
// const SQL_DB = 'why7n0_contact'; // BDD Name
const SQL_SERVER = 'sql.sanchez-mathieu.fr'; // BDD Server
const SQL_LOGIN = 'why7n0_contact'; // BDD Login
const SQL_PASSWORD = 'fC3c87Gy'; // BDD Password
const SQL_DB = 'why7n0_contact'; // BDD Name
// Local BDD
const SQL_SERVER = 'localhost'; // BDD Server
const SQL_LOGIN = 'root'; // BDD Login
const SQL_PASSWORD = ''; // BDD Password
const SQL_DB = 'contact'; // BDD Name
// const SQL_SERVER = 'localhost'; // BDD Server
// const SQL_LOGIN = 'root'; // BDD Login
// const SQL_PASSWORD = ''; // BDD Password
// const SQL_DB = 'contact'; // BDD Name
private static $bdd;

View File

@ -93,7 +93,7 @@ class Contact {
$lastKey = endKey( $words );
foreach ( $words as $key => $word ) {
$normal = self::getQuerySearch( $word, [ "first_name", "last_name", "surname" ] );;
$hard = self::getQuerySearch( $word, [ "email", "address", "phone_number" ] );
$hard = self::getQuerySearch( $word, [ "email", "address", "phone_number", "birthday" ] );
$q1 .= $normal;
$q2 .= $normal;
$q3 .= $hard;

View File

@ -2,7 +2,7 @@
<div class="row">
<div class="col s12 main-container">
<table class="highlight centered">
<table class="highlight centered responsive-table">
<thead>
<tr>
<th>First Name</th>
@ -12,12 +12,13 @@
<th>Address</th>
<th>Phone Number</th>
<th>Birthday</th>
<th colspan="2"></th>
</tr>
</thead>
<tbody>
<?php
foreach ( $contacts as $contact ) {
echo "<tr>";
echo "<tr data-id='" . $contact->getId() . "'>";
echo " <td>" . $contact->getFirstName() . "</td>";
echo " <td>" . $contact->getLastName() . "</td>";
echo " <td>" . ( $contact->getSurname() ? $contact->getSurname() : "" ) . "</td>";
@ -25,6 +26,8 @@
echo " <td>" . ( $contact->getAddress() ? $contact->getAddress() : "" ) . "</td>";
echo " <td>" . ( $contact->getPhoneNumber() ? $contact->getPhoneNumber() : "" ) . "</td>";
echo " <td>" . ( $contact->getBirthday() ? date( "Y-m-d", strtotime( $contact->getBirthday() ) ) : "" ) . "</td>";
echo " <td><i class=\"material-icons left modify\">create</i></td>";
echo " <td><i class=\"material-icons left delete\">delete</i></td>";
echo "</tr>";
}
?>

View File

@ -1,16 +1,55 @@
</div>
</main>
<div id="modal" class="modal modal-fixed-footer">
<div class="modal-content">
<h4>Add new contact</h4>
<p>Test</p>
</div>
<div class="modal-footer">
<a class="waves-effect waves-green btn-flat">Validate</a>
<a class="waves-effect waves-red btn-flat">Cancel</a>
<div id="modal" class="md-modal">
<div class="md-content">
<h3 class="md-header">Add contact</h3>
<div class="md-container row">
<form class="col s12">
<div class="row">
<div class="input-field col s6">
<input id="first_name" type="text" class="validate" required>
<label for="first_name">First Name*</label>
</div>
<div class="input-field col s6">
<input id="last_name" type="text" class="validate" required>
<label for="last_name">Last Name*</label>
</div>
<div class="input-field col s6">
<input id="surname" type="text" class="validate">
<label for="surname">Surname</label>
</div>
<div class="input-field col s6">
<input id="email" type="email" class="validate">
<label for="email">Email</label>
</div>
<div class="input-field col s6">
<input id="address" type="text" class="validate">
<label for="address">Address</label>
</div>
<div class="input-field col s6">
<input id="phone_number" type="tel" class="validate">
<label for="phone_number">Phone Number</label>
</div>
<div class="input-field col s6">
<input id="birthday" type="date" class="validate">
<label for="birthday">Birthday</label>
</div>
<div class="col s12 mandatory">* fields mandatory</div>
</div>
</form>
</div>
<div class="md-footer">
<a class="waves-effect waves-green btn-flat" id="md-validate">Validate</a>
<a class="waves-effect waves-red btn-flat" id="md-cancel">Cancel</a>
</div>
</div>
</div>
<div class="md-overlay"></div>
<footer class="page-footer blue">
<div class="footer-copyright">
@ -21,12 +60,12 @@
</div>
</footer>
<script src="/js/jquery-3.3.1.min.js"></script>
<script async src="/js/materialize.min.js"></script>
<script type="text/javascript" src="/js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="/js/materialize.min.js"></script>
<script async src="/js/javascript.js?v=<?= CAUProject3Contact\Config::SITE_JS_VERSION ?>"></script>
<script async type="text/javascript"
src="/js/javascript.js?v=<?= CAUProject3Contact\Config::SITE_JS_VERSION ?>"></script>
<link href="/css/materialize.min.css" rel="stylesheet">
<link href="/css/style.css?v=<?= CAUProject3Contact\Config::SITE_CSS_VERSION ?>" rel="stylesheet">
</body>

View File

@ -24,6 +24,8 @@
content="https://<?= $_SERVER[ 'SERVER_NAME' ] . \CAUProject3Contact\Config::FAVICON_PATH ?>"/>
<!-- <meta property="fb:app_id" content="1000452166691027" /> -->
<!--Let browser know website is optimized for mobile-->
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link href='https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700%7CRoboto+Condensed:400,700%7CMaterial+Icons'
rel='stylesheet' type='text/css'>
@ -32,6 +34,10 @@
<meta name="theme-color" content="#ffffff">
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="/css/materialize.min.css" media="screen,projection"/>
<link type="text/css" rel="stylesheet" href="/css/modal.css">
<?php if ( isset( $this->head[ 'robotNoIndex' ] ) && $this->head[ 'robotNoIndex' ] == true ) { ?>
<meta name="robots" content="noindex"/>
<?php } ?>