SHARE
TWEET

Untitled

a guest Jun 19th, 2017 46 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2.  
  3. // pobranie menu2
  4. function getMenu2(){
  5.         $.ajax({
  6.             type: 'POST',
  7.             dataType: 'json',
  8.             timeout: 6000,
  9.             url: 'ajax/search-menu.php?action=getParents&tree=2',
  10.             success: function(json) {
  11.                 ajaxRequestData = json;
  12.                 console.log('getMenu2:succes');
  13.                 buildMenu2();
  14.                 //$('#configurator-loader').hide();
  15.             },
  16.             error: function(xhr){
  17.                 if(xhr.status=='404')
  18.                     console.log('404');
  19.             }
  20.         })
  21.     }
  22.  
  23. //pobranie potomkow
  24. function getMenu2Child(id_node, step){
  25.         //$('.searching-row').removeClass('active');
  26.         //$('#'+id_next_container).addClass('loading');
  27.        
  28.         $.ajax({
  29.             type: 'POST',
  30.             dataType: 'json',
  31.             timeout: 6000,
  32.             url: '/ajax/search-menu.php?action=getChildren&node='+id_node,
  33.             success: function(json) {
  34.                 ajaxRequestData2 = json;
  35.                 console.log('getMenu2Child:succes');
  36.                 buildOptions(step);
  37.  
  38.             },
  39.             error: function(xhr){
  40.                 if(xhr.status=='404')
  41.                     console.log('404');
  42.             }
  43.         })
  44. }
  45.  
  46. //budowanie menu2
  47.  function buildMenu2() {
  48.     var menu2_tree = ajaxRequestData;
  49.     //$('#searching-marka').removeClass('loading');
  50.     //$('#searching-marka').addClass('active');
  51.     var searchingNodes = '';
  52.     $.each(menu2_tree, function(pos) {
  53.         var SearchingContent = '';
  54.         //SearchingContent += ('<div class="s_itemwrapper">');
  55.         $.each(menu2_tree[pos], function(key, val) {           
  56.  
  57.             if (key === 'name') SearchingContent += ('<a class="menu_search_hover" data-name="'+val+'"');
  58.             if (key === 'description') SearchingContent += (' data-options="'+val+'"');
  59.             if (key === 'ni') SearchingContent += (' data-rel="' + val + '"');
  60.  
  61.             if (key === 'expand') SearchingContent += (' data-search="'+val+'">---</a>');
  62.  
  63.         }); //wewnątrz
  64.         searchingNodes += SearchingContent;
  65.     });
  66.     $('#menu_2_search .menu_search_hover').html(searchingNodes)
  67.     $('#menu_2_search .menu_search_hover a').each(function(){
  68.         $(this).text($(this).data('name'));
  69.         var cutter = $(this).data('options').substring(3,$(this).data('options').length-4);
  70.         $(this).attr('data-options_clear', cutter)
  71.         console.log('options: '+cutter)
  72.         if($(this).data('rel') == '132') buildSelects(cutter);
  73.  
  74.     })
  75.  
  76.     console.log('searchingNodes = loaded');
  77.  
  78. }
  79.  
  80. //budowanie selektow (1 widok)
  81. function buildSelects(selects) {
  82.         console.log('selects '+selects)
  83.         selects = selects.split('/');  
  84.  
  85.         var textSelect='';
  86.         for (i = 0; i < selects.length; i++) {
  87.             textSelect += '<div class="menu_search'+(i+1)+'"><select name="menu_alt[2_'+(i+1)+']" class="menu_search'+(i+1)+'"><option value="">'+selects[i]+'</option></select></div>';
  88.         }
  89.         textSelect += '<button type="submit" class="search_send">Szukaj</button>';
  90.         $('#menu_2_search .menu_search_selects_sub').html(textSelect)
  91.         if(!$('#menu_2_search .menu_search_hover a.active').size())$('#menu_2_search .menu_search_hover a:first-child').click();
  92. }
  93.  
  94. //budowanie opcji w danym selekcie
  95. function buildOptions(step){  
  96.   //$('#'+id_next).removeClass('loading');
  97.   //$('#'+id_next).addClass('active');    
  98.   var menu2_node = ajaxRequestData2.items;
  99.   var searchingNode = '';
  100.   $.each( menu2_node, function(pos) {
  101.     var TempDataPush ='';
  102.     var SearchingContent = '';
  103.     var name_link='';
  104.     //budowanie linków
  105.     $.each(menu2_node[pos], function(key,val) {    
  106.             if(key==='id') TempDataPush+=('<option value="'+val+'">');
  107.             if(key==='name') TempDataPush+=(val+'</option>');  
  108.     });//wewnątrz
  109.    $('.menu_search'+step+' select').append(TempDataPush);
  110.     $('.menu_search'+step+'').removeClass('disabled');
  111.     $('.menu_search'+step+' select').removeAttr('disabled');
  112.   });
  113.   console.log('buildOptions= loaded');
  114.  
  115.     }
  116.  
  117.  
  118.  
  119.  
  120.  
  121. // ---- ODPALAM --- //
  122. getMenu2();
  123.  
  124.  
  125. $('#menu_2_search .menu_search_hover a').unbind().die().live('click', function(){
  126.     $('#menu_2_search .menu_search_hover a').removeClass('active');
  127.     $(this).addClass('active');
  128.     console.log($(this).data('options_clear'));
  129.     buildSelects($(this).data('options_clear'));
  130.     getMenu2Child($(this).data('rel'), 1);
  131.     $('.menu_search_selects_sub > div:not(.menu_search1)').each(function(){
  132.         $(this).addClass('disabled');
  133.         $(this).find('select').attr('disabled', 'disabled');       
  134.     })
  135. })
  136.  
  137. $('#menu_2_search select').unbind().die().live('change', function(){
  138.     var _step = parseInt($(this).attr('class').slice(-1));
  139.     _step++;
  140.     getMenu2Child($(this).val(), _step);
  141.     console.log('option '+_step)
  142.  
  143. })
RAW Paste Data
Top