jQuery(function() {
   //Для search
   jQuery("#search_input").change(function() {
      var links = jQuery("li > a", "div#header"); // Ссылки tab'ов
      links.each(function(i) {
         linkProcessor(this);
      });
      links = jQuery("a.dark_grey", "div.roundedBox"); // Ссылки engine'ов
      links.each(function(i) {
         linkProcessor(this);
      });
   });

   if (1 == jQuery("#search_input").length) {
      var date = new Date();
      date.setTime(date.getTime() - 86400);
      document.cookie = "landingKeyword=; expires=" + date.toGMTString() + "; path=/";
      /*var options = {
         path: '/',
         expires: -1
      };
      jQuery.cookie('landingKeyword', '', options);*/
   }
      
   //Для mypage
   jQuery("#searchQueryInput").change(function() {
      var href = jQuery("#searchPageLink").attr("href");
      var query = encodeURIComponent(jQuery("#searchQueryInput").val());
      var q_pos = href.indexOf("?query=");
      if (-1 < q_pos) {
         href = href.substr(0, q_pos + 7) //7 - "?query=".length
              + query;
      } else {
         href += "?query=" + query;
      }
      jQuery("#searchPageLink").attr('href', href);

      var options = {
         path: '/',
         expires: 10
      };
      jQuery.cookie('landingKeyword', jQuery("#searchQueryInput").val(), options);
   });
});

function linkProcessor(elem) {
   var href = jQuery(elem).attr("href");
   if ("#" == href) {
      return;
   }
   var query = encodeURIComponent(jQuery("#search_input").val());
   if (href.match(/.*\/[^\/]+\.html$/)) {
      if ((-1 < href.indexOf("__query-")) ||
          (-1 < href.indexOf("__type-")) ||
          (-1 < href.indexOf("__engine-"))) {
         var q_pos = href.indexOf("__query-");
         if (-1 < q_pos) {
            href = href.substr(0, q_pos + 8); //8 = "__query-".length
            href += query + ".html";
         } else {
            q_pos = href.lastIndexOf(".html");
            href = href.substr(0, q_pos + 5); //5 = ".html".length
            href += "__query-" + query + ".html";
         }
      } else {
         var q_pos = href.lastIndexOf("/");
         href = href.substr(0, q_pos + 1); //1 = "/".length
         href += query + ".html";
      }
   } else if ((-1 < href.indexOf("search?"))
           || (-1 < href.indexOf("search/?"))
           || (-1 < href.indexOf("home?"))
           || (-1 < href.indexOf("home/?"))
           || (-1 < href.indexOf("advanced?"))
           || (-1 < href.indexOf("advanced/?"))
             ) {
      if (href.match(/[\?&]query=/)) {
         var q_pos = href.indexOf("query=");
         var amp_pos = href.lastIndexOf("&");
         if (q_pos > amp_pos) {
            href = href.substr(0, q_pos + 6); //6 = "query=".length
            href += query;
         } else {
            href = href.substr(0, q_pos + 6) //6 = "query=".length
                  + query
                  + href.substr(amp_pos);
         }
      } else {
         href += "&query=" + query;
      }
   }
   jQuery(elem).attr('href', href);
}
