Merge branch 'master' of https://github.com/h3ct0r/easyappointments into h3ct0r-develop

This commit is contained in:
Alex Tselegidis 2016-03-22 22:18:55 +01:00
commit 2c3deeeb89
4 changed files with 78 additions and 29 deletions

View file

@ -402,15 +402,17 @@ class Backend_api extends CI_Controller {
$this->load->model('customers_model'); $this->load->model('customers_model');
$key = $this->db->escape_str($_POST['key']); $key = $this->db->escape_str($_POST['key']);
$key = strtoupper($key);
$where_clause = $where_clause =
'(first_name LIKE "%' . $key . '%" OR ' . '(first_name LIKE upper("%' . $key . '%") OR ' .
'last_name LIKE "%' . $key . '%" OR ' . 'last_name LIKE upper("%' . $key . '%") OR ' .
'email LIKE "%' . $key . '%" OR ' . 'email LIKE upper("%' . $key . '%") OR ' .
'phone_number LIKE "%' . $key . '%" OR ' . 'phone_number LIKE upper("%' . $key . '%") OR ' .
'address LIKE "%' . $key . '%" OR ' . 'address LIKE upper("%' . $key . '%") OR ' .
'city LIKE "%' . $key . '%" OR ' . 'city LIKE upper("%' . $key . '%") OR ' .
'zip_code LIKE "%' . $key . '%")'; 'zip_code LIKE upper("%' . $key . '%") OR ' .
'notes LIKE upper("%' . $key . '%"))';
$customers = $this->customers_model->get_batch($where_clause); $customers = $this->customers_model->get_batch($where_clause);

View file

@ -294,15 +294,14 @@
</fieldset> </fieldset>
</form> </form>
</div> </div>
<div class="modal-footer footer">
</div> <button id="save-appointment" class="btn btn-primary">
<div class="modal-footer footer"> <?php echo $this->lang->line('save'); ?>
<button id="save-appointment" class="btn btn-primary"> </button>
<?php echo $this->lang->line('save'); ?> <button id="cancel-appointment" class="btn btn-default" data-dismiss="modal">
</button> <?php echo $this->lang->line('cancel'); ?>
<button id="cancel-appointment" class="btn btn-default" data-dismiss="modal"> </button>
<?php echo $this->lang->line('cancel'); ?> </div>
</button>
</div> </div>
</div> </div>

View file

@ -168,12 +168,12 @@ body .modal.full-screen .modal-content {
body .modal.full-screen .wrapper { body .modal.full-screen .wrapper {
min-height: 100%; min-height: 100%;
margin-bottom: -67px; /* modal-footer height */ /*margin-bottom: -67px;*/ /* modal-footer height */
} }
body .modal.full-screen .modal-footer { body .modal.full-screen .modal-footer {
background-color: #f5f5f5; background-color: #f5f5f5;
position: absolute; /*position: absolute;*/
bottom: 0; bottom: 0;
width: 100%; width: 100%;
height: 67px; height: 67px;

View file

@ -842,6 +842,8 @@ var BackendCalendar = {
// Display modal form. // Display modal form.
$dialog.find('.modal-header h3').text(EALang['new_appointment_title']); $dialog.find('.modal-header h3').text(EALang['new_appointment_title']);
$dialog.modal('show'); $dialog.modal('show');
}); });
/** /**
@ -926,17 +928,63 @@ var BackendCalendar = {
$('#filter-existing-customers').keyup(function() { $('#filter-existing-customers').keyup(function() {
var key = $(this).val().toLowerCase(); var key = $(this).val().toLowerCase();
var $list = $('#existing-customers-list'); var $list = $('#existing-customers-list');
$list.empty();
$.each(GlobalVariables.customers, function(index, c) { var postUrl = GlobalVariables.baseUrl + '/index.php/backend_api/ajax_filter_customers';
if (c.first_name.toLowerCase().indexOf(key) != -1 var postData = {
|| c.last_name.toLowerCase().indexOf(key) != -1 'csrfToken': GlobalVariables.csrfToken,
|| c.email.toLowerCase().indexOf(key) != -1 'key': key
|| c.phone_number.toLowerCase().indexOf(key) != -1 };
|| c.address.toLowerCase().indexOf(key) != -1
|| c.city.toLowerCase().indexOf(key) != -1 // Try to get the updated customer list
|| c.zip_code.toLowerCase().indexOf(key) != -1) { $.ajax({
$list.append('<div data-id="' + c.id + '">' 'type': 'POST',
+ c.first_name + ' ' + c.last_name + '</div>'); 'url': postUrl,
'data': postData,
'dataType': 'json',
'timeout': 1000,
'global': false,
'success': function(response) {
/////////////////////////////////////////////////////////////
console.log('Filter Customers Appointment Response:', response);
/////////////////////////////////////////////////////////////
$list.empty();
$.each(response, function(index, c) {
$list.append('<div data-id="' + c.id + '">'
+ c.first_name + ' ' + c.last_name + '</div>');
// Verify if this customer is on the old customer list
var result = $.grep(GlobalVariables.customers,
function(e){ return e.id == c.id; });
// Add it to the customer list
if(result.length == 0){
GlobalVariables.customers.push(c);
}
});
},
'error': function(jqXHR, textStatus, errorThrown) {
//////////////////////////////////////////////////////////////////
console.log('Filter Customers Appointment Error:', jqXHR, textStatus,
errorThrown);
//////////////////////////////////////////////////////////////////
// If there is any error on the request, search by the local
// client database
$list.empty();
$.each(GlobalVariables.customers, function(index, c) {
if (c.first_name.toLowerCase().indexOf(key) != -1
|| c.last_name.toLowerCase().indexOf(key) != -1
|| c.email.toLowerCase().indexOf(key) != -1
|| c.phone_number.toLowerCase().indexOf(key) != -1
|| c.address.toLowerCase().indexOf(key) != -1
|| c.city.toLowerCase().indexOf(key) != -1
|| c.zip_code.toLowerCase().indexOf(key) != -1
|| c.notes.toLowerCase().indexOf(key) != -1) {
$list.append('<div data-id="' + c.id + '">'
+ c.first_name + ' ' + c.last_name + '</div>');
}
});
} }
}); });
}); });