Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function() {
  2.   'AdminVesti';
  3.   'Beta verzija v1.18102017-b2';
  4.   'Samo za EXTRA temu, ne mesati sa themeforest plugine zbog kompaktibilnosti fa_ elementa';
  5.  
  6.   window.fa_ajax_search = {
  7.     input_fields : 'input[name="search_keywords"]',
  8.  
  9.     delay : 100, // pauza pre slanja search zahteva
  10.  
  11.     // Jezik
  12.     lang : {
  13.       title : 'PRETRAGA',
  14.       searching : 'Trazi teme po "{KEYWORDS}"...',
  15.       no_results : 'Nisu pronadjeni rezultati za "{KEYWORDS}"',
  16.       close : 'Zatvori'
  17.     },
  18.  
  19.  
  20.     // cekanje pre nego sto se napravi search
  21.     queue : function (caller) {
  22.       fa_ajax_search.clear(); // obrisi trenurne pretrage
  23.  
  24.       fa_ajax_search.wait = window.setTimeout(function() {
  25.         fa_ajax_search.query(caller);
  26.       }, fa_ajax_search.delay);
  27.     },
  28.  
  29.  
  30.     // Napravi search pretragu u pop up
  31.     createPopup : function (caller) {
  32.       if (!fa_ajax_search.popup) {
  33.         var popup = document.createElement('DIV');
  34.  
  35.         popup.className = 'fa_ajax_search-results';
  36.         popup.innerHTML =
  37.           '<a href="javascript:fa_ajax_search.clear();" class="fa_ajax_search-close" title="' + fa_ajax_search.lang.close + '">X</a>'+
  38.           '<div class="fa_ajax_search-title">' + fa_ajax_search.lang.title + '</div>'+
  39.           '<ul class="fa_ajax_search-topics"></ul>'+
  40.           '<p style="text-align:center;">'+
  41.             '<a href="#" class="button1">' + fa_ajax_search.lang.view_all + '</a>'+
  42.           '</p>';
  43.  
  44.         fa_ajax_search.popup = popup;
  45.       }
  46.  
  47.       fa_ajax_search.popup.getElementsByTagName('UL')[0].innerHTML = '<li>' + fa_ajax_search.lang.searching.replace('{KEYWORDS}', caller.value) + '</li>';
  48.       fa_ajax_search.popup.lastChild.getElementsByTagName('A')[0].href = fa_ajax_search.url(caller);
  49.       caller.parentNode.appendChild(fa_ajax_search.popup);
  50.     },
  51.  
  52.  
  53.     // potvrdi pretragu
  54.     query : function (caller) {
  55.       fa_ajax_search.createPopup(caller);
  56.  
  57.       fa_ajax_search.request = $.get(fa_ajax_search.url(caller), function(d) {
  58.         fa_ajax_search.showResults(caller, $('.topictitle', d));
  59.       });
  60.     },
  61.  
  62.  
  63.     // create and return the search URL
  64.     url : function (caller) {
  65.       var form = $(caller).closest('form')[0],
  66.           where = form ? form.search_where : null;
  67.  
  68.       return '/search?search_keywords=' + encodeURIComponent(caller.value) + '*' + ( where ? '&search_where=' + where.value : '' );
  69.     },
  70.  
  71.  
  72.     // prikazi rezultat u pop up
  73.     showResults : function (caller, results) {
  74.       var i = 0,
  75.           j = results.length,
  76.           list = fa_ajax_search.popup.getElementsByTagName('UL')[0],
  77.           frag = document.createDocumentFragment(),
  78.           li;
  79.  
  80.       if (j) {
  81.         for (; i < j; i++) {
  82.           li = document.createElement('LI');
  83.  
  84.           results[i].href = results[i].href.replace(/%2A$/, '');
  85.  
  86.           li.appendChild(results[i]);
  87.           frag.appendChild(li);
  88.         }
  89.  
  90.         list.innerHTML = '';
  91.         list.appendChild(frag);
  92.       } else {
  93.         list.innerHTML = '<li>' + fa_ajax_search.lang.no_results.replace('{KEYWORDS}', caller.value) + '</li>';
  94.       }
  95.     },
  96.  
  97.  
  98.     // pokreni izabrane reci
  99.     init : function (node) {
  100.       $(node).keyup(function() {
  101.         if (this.value.length >= 3) {
  102.           fa_ajax_search.queue(this);
  103.         } else {
  104.           fa_ajax_search.clear();
  105.         }
  106.       }).attr('autocomplete', 'off');
  107.     },
  108.  
  109.  
  110.     // ocisti i prekini trenutnu pretragu
  111.     clear : function () {
  112.       if (fa_ajax_search.wait) {
  113.         window.clearTimeout(fa_ajax_search.wait);
  114.         delete fa_ajax_search.wait;
  115.       }
  116.  
  117.       if (fa_ajax_search.request) {
  118.         fa_ajax_search.request.abort();
  119.         delete fa_ajax_search.request;
  120.       }
  121.  
  122.       if (fa_ajax_search.popup && fa_ajax_search.popup.parentNode) {
  123.         fa_ajax_search.popup.parentNode.removeChild(fa_ajax_search.popup);
  124.       }
  125.     }
  126.   };
  127.  
  128.  
  129.   // stil pretrage
  130.   $('head').append(
  131.     '<style type="text/css">'+
  132.       '.fa_ajax_search-results {'+
  133.         'font-family:arial, verdana, sans-serif;'+
  134.         'font-size:12px;'+
  135.         'text-align:left;'+
  136.         'white-space:normal;'+
  137.         'background:#FFF;'+
  138.         'border:1px solid #CCC;'+
  139.         'box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);'+
  140.         'margin-top:3px;'+
  141.         'position:absolute;'+
  142.         'z-index:1;'+
  143.       '}'+
  144.  
  145.       '.fa_ajax_search-title {'+
  146.         'color:#FFF;'+
  147.         'background:#69C;'+
  148.         'font-size:16px;'+
  149.         'height:25px;'+
  150.         'line-height:25px;'+
  151.         'margin:-1px -1px 0 -1px;'+
  152.         'padding:0 40px 0 6px;'+
  153.       '}'+
  154.  
  155.       '.fa_ajax_search-results a.fa_ajax_search-close {'+
  156.         'color:#FFF !important;'+
  157.         'background:none;'+
  158.         'display:block;'+
  159.         'position:absolute;'+
  160.         'top:-1px;'+
  161.         'right:-1px;'+
  162.         'text-align:center;'+
  163.         'text-decoration:none !important;'+
  164.         'font-size:18px;'+
  165.         'line-height:25px;'+
  166.         'height:25px;'+
  167.         'width:35px;'+
  168.         'margin:0 !important;'+
  169.         'padding:0 !important;'+
  170.       '}'+
  171.  
  172.       '.fa_ajax_search-results a.fa_ajax_search-close:hover { background:#F33 !important; }'+
  173.  
  174.       '.fa_ajax_search-results > p { padding:3px; }'+
  175.  
  176.       '.fa_ajax_search-topics {'+
  177.         'width:100%;'+
  178.         'max-height:300px;'+
  179.         'overflow-y:auto;'+
  180.         'overflow-x:hidden;'+
  181.       '}'+
  182.  
  183.       '.fa_ajax_search-topics {'+
  184.         'color:#333;'+
  185.         'border-top:1px solid #CCC;'+
  186.         'border-bottom:1px solid #CCC;'+
  187.         'padding:0 !important;'+
  188.       '}'+
  189.  
  190.       '.fa_ajax_search-topics li {'+
  191.         'padding:3px;'+
  192.         'display:block !important;'+
  193.         'line-height:14px !important;'+
  194.         'margin:0 !important;'+
  195.       '}'+
  196.  
  197.       '.fa_ajax_search-topics li:nth-child(even) { background:rgba(0, 0, 0, 0.05); }'+
  198.       '.fa_ajax_search-topics li:nth-child(odd) { background:rgba(0, 0, 0, 0.1); }'+
  199.  
  200.       '.fa_ajax_search-topics a.topictitle, #ipbwrapper .fa_ajax_search-results > p > a {'+
  201.         'font-size:12px;'+
  202.         'font-weight:normal !important;'+
  203.         'padding:0 !important;'+
  204.         'background:none !important;'+
  205.       '}'+
  206.     '</style>'
  207.   );
  208.  
  209.  
  210.   $(function() {
  211.     fa_ajax_search.init(fa_ajax_search.input_fields);
  212.   });
  213.  
  214. }());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement