site.js
4.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
$(function() {
$("#newsletter").validate();
var ads = [
{
quote: "Take your icon game to the next level. Check out <strong>Fonticons</strong>, from the maker of Font Awesome.",
class: "fonticons",
url: "https://fonticons.com/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_1_next_level&utm_campaign=promo_4.4_update",
btn_text: "Gimme Some!"
},
{
quote: "Make your icons load 10x faster! Check out <strong>Fonticons</strong>, from the maker of Font Awesome.",
class: "fonticons",
url: "https://fonticons.com/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_3_faster_loading&utm_campaign=promo_4.4_update",
btn_text: "Gimme Some!"
},
{
quote: "Looking for other great icon sets? Check out <strong>Fonticons</strong>, from the maker of Font Awesome.",
class: "fonticons",
url: "https://fonticons.com/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_4_more_icons&utm_campaign=promo_4.4_update",
btn_text: "Gimme Some!"
},
{
quote: "Want to add your own icon? Check out <strong>Fonticons</strong>, from the maker of Font Awesome.",
class: "fonticons",
url: "https://fonticons.com/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_6_your_own_icon&utm_campaign=promo_4.4_update",
btn_text: "Gimme Some!"
},
{
quote: "<strong>Black Tie</strong>, from the creator of Font Awesome. On sale at the Kickstarter price for a limited time.",
class: "black-tie",
url: "http://blacktie.io/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_2_kickstarter&utm_campaign=promo_4.4_update",
btn_text: "Check it Out!"
},
{
quote: "Want clean, minimalist icons? Check out <strong>Black Tie</strong>, the new multi-weight icon font from the maker of Font Awesome.",
class: "black-tie",
url: "http://blacktie.io/?utm_source=font_awesome_homepage&utm_medium=display&utm_content=ad_5_clean_minimalist&utm_campaign=promo_4.4_update",
btn_text: "Check it Out!"
}
];
selectFonticonsAd();
// start the icon carousel
$('#icon-carousel').carousel({
interval: 5000
});
$('[data-toggle="popover"]').popover();
var $filter_by = $('#filter-by');
// Filter icons
if($filter_by.length) {
var $filter_val = $('#filter-val');
var $filter = $('#filter');
var $other = $('#new, #web-application, #hand, #transportation, #gender, #form-control, #medical, #currency, #text-editor, #directional, #video-player, #brand, #file-type, #spinner, #payment, #chart');
var $clear = $('#filter-clear');
var $no_results = $('#no-search-results');
var $icons = $('.filter-icon', $filter);
// Add tab completion
$filter_by.tabcomplete(filterSet, {
arrowKeys: true
});
$clear.on('click', function(e) {
e.preventDefault();
$filter_by
.val('')
.trigger('input')
.trigger('keyup')
.focus();
$clear.addClass('hide'); // Hide clear button
});
$filter_by.on('keyup', function() {
var $this = $(this);
var val = $this.val().toLowerCase();
$filter.toggle(!!val);
$other.toggle(!val);
$clear.toggleClass('hide', !val);
$filter_val.text(val);
if(!val) return;
var resultsCount = 0;
$icons.each(function() {
var filter = $(this).attr('data-filter').split('|');
var show = inFilter(val, filter);
if (!show) {
if (val.slice(-1) === 's') {
// Try to be smart. Make plural terms singular.
show = inFilter(val.slice(0, -1), filter);
}
}
if (show) resultsCount++;
$(this).toggle(!!show);
});
if( resultsCount == 0 && val.length != 0 ) {
$no_results.find('span').text(val);
$no_results.show();
} else {
$no_results.hide();
}
});
}
function inFilter(val, filter) {
for (var i = 0; i < filter.length; i++) {
if (filter[i].match(val)) return true;
}
return false;
}
$filter_by
.val('')
.trigger('input')
.trigger('keyup')
.focus();
if ($clear) {
$clear.addClass('hide'); // Hide clear button
}
function selectFonticonsAd() {
random_number = Math.floor( Math.random() * ads.length );
random_ad = ads[random_number];
$('#banner').addClass(random_ad.class);
$('#rotating-message').html(random_ad.quote);
$('#rotating-url').attr("href", random_ad.url);
$('#rotating-url').html(random_ad.btn_text);
$('#banner').collapse('show');
}
});