1
|
$(function() {
|
2
|
// dynamic grid
|
3
|
altair_contact_list.init();
|
4
|
});
|
5
|
|
6
|
altair_contact_list = {
|
7
|
init: function() {
|
8
|
|
9
|
var $contact_list = $('#contact_list'),
|
10
|
searchArray = [];
|
11
|
|
12
|
// get all filters
|
13
|
$contact_list.children().each(function() {
|
14
|
var thisfilters = $(this).attr('data-uk-filter').split(','),
|
15
|
thisfiters_length = thisfilters.length;
|
16
|
|
17
|
for($i=0;$i<thisfiters_length;$i++) {
|
18
|
if($.inArray( thisfilters[$i], searchArray ) == -1) {
|
19
|
// exclude companies
|
20
|
searchArray.push(thisfilters[$i]);
|
21
|
}
|
22
|
}
|
23
|
});
|
24
|
var searchArray_length = searchArray.length;
|
25
|
|
26
|
// initialize dynamic grid
|
27
|
var $myGrid = UIkit.grid($contact_list,{
|
28
|
controls: '#contact_list_filter',
|
29
|
gutter: 20
|
30
|
});
|
31
|
|
32
|
// find user or email
|
33
|
$("#contact_list_search").keyup(function(){
|
34
|
var sValue = $(this).val().toLowerCase();
|
35
|
|
36
|
if(sValue.length > 2) {
|
37
|
var filteredItems = '';
|
38
|
for($i=0;$i<searchArray_length;$i++) {
|
39
|
if(searchArray[$i].indexOf(sValue) !== -1) {
|
40
|
filteredItems += (filteredItems.length > 1 ? ',' : '') + searchArray[$i];
|
41
|
}
|
42
|
}
|
43
|
if(filteredItems){
|
44
|
// filter grid items
|
45
|
$myGrid.filter(filteredItems);
|
46
|
} else {
|
47
|
// show all
|
48
|
$myGrid.filter('all');
|
49
|
}
|
50
|
} else if(sValue.length > 0) {
|
51
|
// reset filter
|
52
|
$myGrid.filter();
|
53
|
}
|
54
|
|
55
|
});
|
56
|
|
57
|
$myGrid.on('afterupdate.uk.grid', function(e, children) {
|
58
|
if(children.length > 0) {
|
59
|
$('.grid_no_results').fadeOut();
|
60
|
} else {
|
61
|
$('.grid_no_results').fadeIn();
|
62
|
}
|
63
|
});
|
64
|
|
65
|
}
|
66
|
};
|
67
|
|
68
|
|
69
|
|
70
|
|