custom.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. /*=ÑÖÅÏÈÒÜ("'";A1;"': '";B1;"', ";ÅÑËÈ(ÎÑÒÀÒ(ÑÒÐÎÊÀ(A1);5)=0;"|";""))
  2. =ÑÖÅÏÈÒÜ(".";A1;":before{content:'\";B1;"'}")
  3. =ÑÖÅÏÈÒÜ("<li><i class=""";A1;"""></i> ";A1;"</li>")*/
  4. (function(d, s, id) {
  5. var js, fjs = d.getElementsByTagName(s)[0];
  6. if (d.getElementById(id)) return;
  7. js = d.createElement(s); js.id = id;
  8. js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=216775695049843";
  9. fjs.parentNode.insertBefore(js, fjs);
  10. }(document, 'script', 'facebook-jssdk'));
  11. function hslToRgb(h, s, l) {
  12. var r, g, b;
  13. if (!s) {
  14. r = g = b = l; // achromatic
  15. }
  16. else {
  17. function hue2rgb(p, q, t) {
  18. if(t < 0) t += 1;
  19. if(t > 1) t -= 1;
  20. if(t < 1/6) return p + (q - p) * 6 * t;
  21. if(t < 1/2) return q;
  22. if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
  23. return p;
  24. }
  25. var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
  26. var p = 2 * l - q;
  27. r = hue2rgb(p, q, h + 1/3);
  28. g = hue2rgb(p, q, h);
  29. b = hue2rgb(p, q, h - 1/3);
  30. }
  31. r = 'rgb('+Math.round(r * 255)+', '+Math.round(g * 255)+', '+Math.round(b * 255)+')';
  32. return r;
  33. }
  34. function applySliders() {
  35. var
  36. color = $('[name=color]').val(),
  37. shadow = $('[name=shadow]').val();
  38. $('.result').css('font-size', $('[name=size]').val()+'px')
  39. .css('color', hslToRgb(color/100, 0.5, 0.5))
  40. .css('text-shadow', shadow+'px ' + shadow+'px '
  41. + $('[name=blur]').val() + 'px black')
  42. .css('filter', 'progid:DXImageTransform.Microsoft.Shadow(Color=black, direction=135, strength='+shadow+')');
  43. }
  44. function findIcons() {
  45. var iconame = $.trim($('.searchIcons input[type=text]').val()), numCols = 6, i, s, prevTab;
  46. $('#searchResults .panIcons').html('');
  47. prevTab = $('.tabs .current');
  48. if (!iconame) {
  49. prevTab.click();
  50. return;
  51. }
  52. $('#searchTab a').click().removeClass('current');
  53. prevTab.addClass('current');
  54. s = ''; i = 0;
  55. $('.panIcons [class*="'+iconame+'"]').each(function() {
  56. i++;
  57. if (i == numCols) {
  58. s += '</tr><tr>';
  59. i = 0;
  60. }
  61. s += '<td>'+$(this).parent().html()+'</td>';
  62. });
  63. if (s)
  64. s = '<table><tr>'+s+'</tr></table>';
  65. $('#searchResults .panIcons').html(s);
  66. $('.panes .panel').hide();
  67. $('#searchResults').show();
  68. }
  69. function shuffle(o) {
  70. for (var j, x, i = o.length; i; j = parseInt(Math.random() * i), x = o[--i], o[i] = o[j], o[j] = x);
  71. return o;
  72. }
  73. function preparePreviewAndSearch(ligatures) {
  74. var values = [], copyvalues, previcons = [], s = '', i;
  75. ligatures = ligatures.split("\n");
  76. for (i in ligatures)
  77. if (ligatures[i].substr(0, 6) == '.icon-')
  78. values.push(ligatures[i].split(':')[0].substr(1));
  79. copyvalues = values;
  80. for (i=0; i<50; i++) {
  81. var tmp = copyvalues.splice(Math.floor(Math.random()*copyvalues.length), 1);
  82. previcons.push(tmp[0]);
  83. }
  84. for (i in previcons)
  85. s += ' <span class="'+previcons[i]+'"></span>';
  86. $('#preview').html('<h2>Random icons preview</h2>' + s);
  87. $('.searchIcons input[type=text]').autocomplete({lookup:values, deferRequestBy:50, onSelect: findIcons});
  88. $('.searchIcons input[type=text]').keyup(findIcons);
  89. }
  90. $(document).ready(function() {
  91. $('.sliders input').rangeinput({
  92. css: {handle: 'knob'},
  93. onSlide: applySliders,
  94. change: applySliders,
  95. });
  96. applySliders();
  97. $.get("css/whhg.css", preparePreviewAndSearch);
  98. // initiate page scroller plugin
  99. $('body').pageScroller({navigation: '.ps'});
  100. });
  101. $(function() {
  102. // setup ul.tabs to work as tabs for each div directly under div.panes
  103. $("ul.tabs").tabs("div.panes > .panel");
  104. });