//================================= alltrades_shop = { basket: [], compare: [], favorites: [], main_prices: [], price_mods: [], pricelist_fields: '', pricelist_vals: [], pricelist_store: [], renew_timer: null, step: -1, show_prev: true, loading: false, basket_renew_no_items: false, category_id: 0, items_loading_flag: false, items_on_page: 8, items_os: 0, save_fields_queue: [], lang_prefix: '', show_item_modal: function (id) { $.get(alltrades_shop.lang_prefix + '/?show=modal_page&mode=atc&name=item_modal&item_id='+id, function(html){ alltrades_shop.show_dialog(html); alltrades_shop.price_recount(id); }); }, get_item_variant: function(id) { var selected_variant = 0; var var_price = parseInt(window.location.hash.substr(window.location.hash.indexOf('variant=') + 8)); for(var i in alltrades_shop.pricelist_vals[id]) { if(alltrades_shop.pricelist_vals[id][i] == var_price) { selected_variant = i; } } var variants = []; var tmp0 = alltrades_shop.pricelist_fields.split(','); for(k in tmp0) { let field_id = tmp0[k]; if(variants.length == 0) { $('#basket_opt_' + id + '_' + field_id + ' option').each(function() { variants[variants.length] = field_id + ':' + $(this).attr('value'); }); } else { var variants2 = []; for(j in variants) { $('#basket_opt_' + id + '_' + field_id + ' option').each(function() { variants2[variants2.length] = variants[j] + '|' + field_id + ':' + $(this).attr('value'); }); } variants = variants2; } } for(var i in variants) { let tmp = variants[i].split('|'); let pl_key = 0; for(var j in tmp) { let tmp1 = tmp[j].split(':'); pl_key += parseInt('0x'+hex_md5(tmp1[1]).substr(0, 6)); } if(pl_key == selected_variant) { for(var j in tmp) { let tmp1 = tmp[j].split(':'); $('#basket_opt_' + id + '_' + tmp1[0]).val(tmp1[1]); } } } alltrades_shop.price_recount(id); }, price_recount: function (id){ var price=alltrades_shop.main_prices[id]; if(typeof price == 'undefined'){ return false; } if(alltrades_shop.pricelist_fields!=''){ var fields=alltrades_shop.pricelist_fields.split(','); var pl_key=0; for(i in fields){ val=$('select[name="basket_opt['+fields[i]+']"], input:radio[name="basket_opt['+fields[i]+']"]:checked, input:checkbox[name="basket_opt['+fields[i]+']"]:checked, input:text[name="basket_opt['+fields[i]+']"]').val(); if(val!=undefined){ pl_key+=parseInt('0x'+hex_md5(val).substr(0, 6)); } } if(alltrades_shop.pricelist_vals[id]!=undefined && alltrades_shop.pricelist_vals[id][pl_key]>0){ price=alltrades_shop.pricelist_vals[id][pl_key]; } } $('.add2basket-options select').each(function(){ var tmp=this.id.split('_'); var key=$(this).val().replace(/[\'"]/g, '-'); if(alltrades_shop.price_mods[id]!=undefined && alltrades_shop.price_mods[id][tmp[3]]!=undefined){ price+=+alltrades_shop.price_mods[id][tmp[3]][key]; } }); $('.add2basket-options input[type=checkbox]').each(function(){ if(this.checked){ var tmp=this.id.split('_'); var key=$(this).val().replace(/[\'"]/g, '-'); if(alltrades_shop.price_mods[id]!=undefined && alltrades_shop.price_mods[id][tmp[3]]!=undefined){ price+=+alltrades_shop.price_mods[id][tmp[3]][key]; } } }); $('.add2basket-options input[type=radio]').each(function(){ if(this.checked){ var tmp=this.id.split('_'); var key=$(this).val().replace(/[\'"]/g, '-'); if(alltrades_shop.price_mods[id]!=undefined && alltrades_shop.price_mods[id][tmp[3]]!=undefined){ price+=+alltrades_shop.price_mods[id][tmp[3]][key]; } } }); $('.add2basket-options input[type=text]').each(function(){ var tmp=this.id.split('_'); if(alltrades_shop.price_mods[id]!=undefined && alltrades_shop.price_mods[id][tmp[3]]!=undefined){ price+=+alltrades_shop.price_mods[id][tmp[3]]*this.value; } }); if(Math.round(price)!=price){ price=price.toFixed(2); } $('#main_price_'+id).html(price); }, add_to_basket: function(obj, id, pricelist_pos){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=add&id='+id; if(pricelist_pos!=undefined){ url=url+'&pricelist_pos='+pricelist_pos; } var postdata=$('.add2basket_form_'+id+(alltrades_shop.step==0?'_tmp':'')).serialize() alltrades_shop.start_loading(); $.post(url, postdata, function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.step>0){ $(obj).children('img').attr('src', '/images/in_basket.png').attr('title', 'Уже есть в корзине'); } switch(alltrades_shop.step){ case 0: if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } break; case 1: location.href=alltrades_shop.basket['uri']; break; case 2: if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } alltrades_shop.update_basket_html(); break; case 3: alltrades_shop.close_dialog(); var m_ph=$('#main_photo_'+id); if(m_ph.length == 0) { alltrades_shop.update_basket_html(); return; } $('body').prepend(''); $('#main_img_shadow').animate({top:$('#basket_total').offset().top, left:$('#basket_total').offset().left, width:'100px', height:'100px', opacity:0}, 600, function(){ $(this).remove(); alltrades_shop.update_basket_html(); } ); break; } }); }, remove_from_basket: function(k){ $.get(alltrades_shop.lang_prefix + '/?show=basket&act=delete&mode=ajax&id='+k, function(html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } alltrades_shop.renew_basket(true); }); }, one_click_buy: function(id) { var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=one_click_buy&id='+id; $.post(url, $('.add2basket_form_'+id).serialize(), function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } }); }, start_loading: function (){ $('#message_box').html('
'); }, show_dialog: function (html){ $('#message_box').html('
' + html); $(".fancy").fancybox({'zoomSpeedIn': 300, 'zoomSpeedOut': 300, 'overlayShow': true}); $('#curtain').show().click(alltrades_shop.close_dialog); $('#message_box').css('top', $(window).scrollTop()+$(window).height()*0.1).show(); var width=$('#message_box > section').css('width'); if(parseInt(width)>300 && parseInt($(document).width())>999){ $('#message_box').css('width', width).css('margin-left', '-'+parseInt(width)/2+'px'); } }, update_basket_html: function(){ var el; for(k in alltrades_shop.basket){ el=$('#'+k).get(0); if(el!=undefined){ if(el.tagName=='INPUT'){ el.value=alltrades_shop.basket[k]; }else if($('#'+k+' span').length>0){ el=$('#'+k+' span').html(alltrades_shop.basket[k]); }else{ el=$('#'+k+'').html(alltrades_shop.basket[k]); } } } }, close_dialog: function (){ $('#message_box').hide('normal', function(){$('#curtain').fadeOut();}); }, check_store: function (obj, id, check_store) { if(/[^0-9.]/.test(obj.value)){ obj.value=obj.value.replace(/[^0-9.]/, ''); } if(check_store==''){ return; } if(+obj.value>+$('#store'+id+' span').html()){obj.style.color='red';obj.value=$('#store'+id+' span').html();$('#store'+id).css('color', 'red');} }, change_order_field: function(id, options) { $('.delivery_'+id).hide(); obj = $('#order_field_'+id+''); if(obj.length == 0) { return false; } if(obj.get(0).tagName == 'SELECT') { var func = obj.children(':selected').attr('func'); var params = obj.children(':selected').attr('params'); }else{ obj = $('#order_field_'+id+' :checked'); var func = obj.attr('func'); var params = obj.attr('params'); } switch(func) { case 'delivery': if($('#add_func_field_'+id).length) { $('#add_func_field_'+id).html('').show(); } else { $('#order_field_'+id+'').after('
'); } $('#add_func_field_'+id).load(alltrades_shop.lang_prefix + '/?show=delivery&mode=ajax&field_id='+id+'¶ms='+params, function(html) { if($('#delivery_to_zip').val()>0){ $.get(alltrades_shop.lang_prefix + '/?show=delivery&field_id='+id+'&act=calculate&mode=ajax&delivery_to_zip='+$('#delivery_to_zip').val()+'&r='+Math.random(), function(html) { $('#delivery_variants_'+id).html(html); }); }}); break; case 'yandex_delivery': $('#yd_block.delivery_'+id).show(); break; case 'rupost_delivery': alltrades_delivery.init('rupost', id); break; case 'novaposhta_delivery': $('#novaposhta_block.delivery_'+id).show(); break; case 'boxberry_delivery': $('#boxberry_block.delivery_'+id).show(); break; case 'cdek_delivery': alltrades_delivery.init('cdek', id); break; case 'dpd_delivery': $('#dpd_block.delivery_'+id).show(); break; case 'shiptor_delivery': alltrades_delivery.init('shiptor', id); break; } alltrades_shop.save_order_field(id, ''); }, send_save_order_field_queue: function() { if(alltrades_shop.save_fields_queue.length == 0) { return; } if(alltrades_shop.loading) { alltrades_shop.renew_timer = setTimeout(function() { alltrades_shop.send_save_order_field_queue(); }, 300); return; } alltrades_shop.loading = true; var query = JSON.parse(alltrades_shop.save_fields_queue.pop()); $.post(alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=save_order_field', query, function(json) { alltrades_shop.loading = false; alltrades_shop.load_basket_from_json(json); alltrades_shop.send_save_order_field_queue(); }); }, save_order_field: function(id, info) { var val; if($('[name="field[' + id + ']"]').length == 0) { return; } var val; switch($('[name="field[' + id + ']"]').get(0).tagName) { case 'SELECT': val = $('[name="field[' + id + ']"]').val(); break; default: val = $('[name="field[' + id + ']"]:checked').val(); break; } console.log(JSON.stringify({'field_id': id, 'value': val, 'info': info})); alltrades_shop.save_fields_queue.push(JSON.stringify({'field_id': id, 'value': val, 'info': info})); alltrades_shop.send_save_order_field_queue(); }, array_to_str: function(arr) { var str = ''; for(j in arr) { str += j + '='+arr[j] + '|||'; } return str; }, str_to_array: function(str) { if(typeof str == 'undefined') { return {}; } var ret = {}; var tmp = str.split('|||'); for(var i in tmp) { var tmp1 = tmp[i].split('='); if(tmp1[0] != '') { ret[tmp1[0]] = tmp1[1]; } } return ret; }, get_cookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for(var i=0; i 0) { lang = location.pathname.substr(location.pathname.indexOf('/') + 5).split('/')[0]; this.lang_prefix = '/lng-' + lang; } }, init_basket: function() { this.get_lang(); if(alltrades_shop.get_cookie('PHPSESSID') != sessionStorage.getItem('sessionId')) { sessionStorage.setItem('sessionId', alltrades_shop.get_cookie('PHPSESSID')); if(typeof(localStorage.getItem('basket_arch')) != 'undefined') { $.post(alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=load_basket', {'basket_arch': localStorage.getItem('basket_arch')}, function(json){ alltrades_shop.load_basket_from_json(json); }); } } }, start_loading: function() { if(!alltrades_shop.basket_renew_no_items){ $('.basket .discount_amount span').html(''); $('.basket .basket_discount span').html(''); $('.basket .basket_weight_str span').html(''); } $('#basket_items_amount span').html(''); $('#basket_discount span').html(''); $('#basket_discount_amount span').html(''); $('#basket_full_amount span').html(''); $('#basket_weight span').html(''); $('#basket_amount').html(''); $('#basket_total').html(''); }, load_basket_from_json: function(json) { if(json.indexOf('|||') > 0) {json = json.split('|||')[1];} eval(json); if(!alltrades_shop.basket_renew_no_items) { for (i in alltrades_shop.basket['items']){ $('.basket #item_'+i+' .discount_amount span').html(alltrades_shop.basket['items'][i]['discount_amount']); $('.basket #item_'+i+' .basket_weight_str span').html(alltrades_shop.basket['items'][i]['weight_str']); $('.basket #item_'+i+' .basket_discount span').html(alltrades_shop.basket['basket_discount']); } for(i in alltrades_shop.basket['fields_func']) { if(typeof alltrades_shop.basket['fields_func'][i]['options'] !=="undefined"){ for(j in alltrades_shop.basket['fields_func'][i]['options']){ $('#order_field_'+i+' option').each(function(){ if($.trim($(this).text())==alltrades_shop.basket['fields_func'][i]['options'][j]['value']){ $(this).attr('func', alltrades_shop.basket['fields_func'][i]['options'][j]['func']); $('#order_field_price_'+i).hide(); } }); } } } } $('#basket_items_amount span').html(alltrades_shop.basket['basket_amount']); if(alltrades_shop.basket['basket_discount'] > 0) { $('#basket_discount_amount').show(); $('#basket_discount').show(); } else { $('#basket_discount_amount').hide(); $('#basket_discount').hide(); } $('#basket_discount_amount span').html(alltrades_shop.basket['basket_discount_amount']); $('#basket_discount span').html(alltrades_shop.basket['basket_discount']); $('#basket_weight span').html(alltrades_shop.basket['basket_weight']); $('#basket_full_amount span').html(alltrades_shop.basket['basket_full_amount']); $('#basket_amount').html(alltrades_shop.basket['basket_amount']); $('#basket_total').html(alltrades_shop.basket['basket_total']); if(alltrades_shop.basket['enable_order'] == '1') { $('#order_button').attr('disabled', false).on('click', function() { $('#order_form').attr('action', alltrades_shop.lang_prefix + '/?show=order').submit(); }); $('#basket_minimum_order_amount').hide(); }else{ $('#order_button').attr('disabled', true).unbind('click'); $('#basket_minimum_order_amount').show(); } }, refresh_basket: function() { if(!alltrades_shop.loading && alltrades_shop.check_renew_possible()) { clearTimeout(alltrades_shop.renew_timer); alltrades_shop.start_loading(); alltrades_shop.renew_timer = setTimeout( function() { $.get(alltrades_shop.lang_prefix + '/?show=basket&act=refresh_basket&mode=ajax', '', function(json) { alltrades_shop.load_basket_from_json(json); alltrades_shop.loading = false; }); }, 2000); alltrades_shop.loading = true; } }, renew_basket: function (no_items) { if (typeof(no_items)=='undefined') { alltrades_shop.basket_renew_no_items=false; }else{ alltrades_shop.basket_renew_no_items=no_items; } if(!alltrades_shop.loading && alltrades_shop.check_renew_possible()) { clearTimeout(alltrades_shop.renew_timer); alltrades_shop.start_loading(); alltrades_shop.renew_timer = setTimeout(function(){alltrades_shop.renew_basket_serv();}, 2000); alltrades_shop.loading = true; } }, renew_basket_serv: function () { if(!alltrades_shop.check_renew_possible()) { alltrades_shop.loading = false; return false; } $.post(alltrades_shop.lang_prefix + '/?show=basket&act=edit_json&mode=ajax'+(alltrades_shop.basket_renew_no_items?'':'&clean_add_fields=1'), $('#order_form').serialize(), function(json){ alltrades_shop.load_basket_from_json(json); alltrades_shop.loading = false; }); }, add_num_inc: function(id, max_num){ var num=$('.add2basket_form_'+id).find('input[name=num]'); if(typeof max_num == 'undefined' || max_num == '' || parseInt(max_num)>parseInt(num.val())){ num.val(parseInt(num.val())+1); }else if(typeof max_num != 'undefined'){ $('#store'+id).show(); } }, add_num_dec: function(id){ var num=$('.add2basket_form_'+id).find('input[name=num]'); if(parseInt(num.val())>1){ num.val(parseInt(num.val())-1); } }, check_renew_possible: function(){ var flag=true; $('.basket .basket_item .num').each(function(){if($.trim(this.value)==''){flag=false;}}); return flag; }, items_pages_loading_counter: 0, items_pages_loading: function(category_id, os, on_page, type, order){ if(typeof order == 'undefined'){ order=''; } if(typeof type == 'undefined'){ type=''; } alltrades_shop.items_loading_flag=false; alltrades_shop.items_os=parseInt(os); alltrades_shop.items_on_page=parseInt(on_page); alltrades_shop.category_id=category_id; $(window).on('scroll resize', function(){ var max_height=parseInt($(window).scrollTop() + $(window).height()); if($('#items_loader').offset().top < max_height && !alltrades_shop.items_loading_flag){ if(alltrades_shop.items_pages_loading_counter<2){ alltrades_shop.items_loading_flag=true; $('#items_loader').html(''); $('#pages').hide(); var timer=setTimeout(function(){ alltrades_shop.items_os+=alltrades_shop.items_on_page; if(alltrades_shop.items_on_page>12){ alltrades_shop.items_on_page=12; } var reg = /[?&]([^=&]+)(=?)([^&]*)/g; var query = alltrades_shop.lang_prefix + '/?show=shop&mode=atc&category_id='+alltrades_shop.category_id+'&os='+alltrades_shop.items_os+'&total='+alltrades_shop.items_on_page+'&type='+type+'&order='+order; while (m = reg.exec(location.search)) { if(m[1] == 'vendor_id' || m[1] == 'keywords' || m[1].substr(0, 2) == 's_') { query += '&' + m[1] + '=' + m[3]; } } $.get(query, function(html){ if(html!=''){ alltrades_shop.items_pages_loading_counter++; $('.twr-grid').append(html); if(typeof items_d_mode !='undefined' && items_d_mode=='blocks'){ $('#tabler').click(); }else{ $('#twr-linear').click(); } alltrades_shop.items_loading_flag=false; } $('#items_loader').html(''); }); }, 600); }else if(alltrades_shop.items_pages_loading_counter<1000){ $('#items_load_more').remove(); alltrades_shop.items_pages_loading_counter=1000; $('.twr-grid').append('
Показать еще...
'); } } }); }, wishlist_send: function(id){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=wishlist&id='+id; $.post(url, {'email': $('#wishlist input[name=email]').val(), 'phone': $('#wishlist input[name=phone]').val()}, function (html){ if(html=='ok'){ $('#wishlist').html('

Заявка на уведомление о поступлении отправлена.

'); } else { alert(html); } } ); }, add_to_favorites: function(id){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=favorites&id='+id; $.get(url, function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } } ); }, remove_from_favorites: function(id){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=remove_from_favorites&id='+id; $.get(url, function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } } ); }, update_favorites_html: function(){ var el; for(k in alltrades_shop.favorites){ el=$('#'+k).get(0); if(el!=undefined){ if(el.tagName=='INPUT'){ el.value=alltrades_shop.favorites[k]; }else if($('#'+k+' span').length>0){ el=$('#'+k+' span').html(alltrades_shop.favorites[k]); }else{ el=$('#'+k+'').html(alltrades_shop.favorites[k]); } } } }, add_to_compare: function(id){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=compare&id='+id; $.get(url, function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } } ); }, remove_from_compare: function(id){ var url=alltrades_shop.lang_prefix + '/?show=basket&mode=ajax&act=remove_from_compare&id='+id; $.get(url, function (html){ var arr = html.split('|||'); eval(arr[1]); html=arr[0]; if(alltrades_shop.show_prev){ alltrades_shop.show_dialog(html); } } ); }, update_compare_html: function(){ var el; for(k in alltrades_shop.compare){ el=$('#'+k).get(0); if(el!=undefined){ if(el.tagName=='INPUT'){ el.value=alltrades_shop.compare[k]; }else if($('#'+k+' span').length>0){ el=$('#'+k+' span').html(alltrades_shop.compare[k]); }else{ el=$('#'+k+'').html(alltrades_shop.compare[k]); } } } } } var alltrades_delivery = { field_id: 0, address_field: null, method: '', status: 0, current_key: '', counting_key: '', timer: false, keyupEvent: null, init: function(delivery_method, field_id) { this.field_id = field_id; this.method = delivery_method; $('#' + this.method + '_results').html('').hide(); this.delivery_block = $('#' + this.method + '_block.delivery_' + field_id); this.addresses_list = this.delivery_block.find('.delivery_addresses_list'); this.address_field = this.delivery_block.find('[name=address]'); this.address_field.val('').unbind('keyup'); this.address_field.on('keyup', (e) => { this.onEditAddressKeyUp(e); } ); this.delivery_block.show(); }, onEditAddressKeyUp: function(e) { alltrades_delivery.keyupEvent = e; switch(e.keyCode) { case 13: var selected = alltrades_delivery.addresses_list.find('p.selected a'); alltrades_delivery.set_address(selected.attr('address'), selected.attr('coords')); e.preventDefault(); e.stopPropagation(); return false; case 38: var prev = alltrades_delivery.addresses_list.find('p.selected').prev(); if( prev.length > 0) { alltrades_delivery.addresses_list.find('p.selected').removeClass('selected'); prev.addClass('selected'); } else { alltrades_delivery.addresses_list.find('p.selected').removeClass('selected'); alltrades_delivery.addresses_list.find('p:eq(-1)').addClass('selected'); } return false; case 40: var next = alltrades_delivery.addresses_list.find('p.selected').next(); if(next.length > 0) { alltrades_delivery.addresses_list.find('p.selected').removeClass('selected'); next.addClass('selected'); } else { alltrades_delivery.addresses_list.find('p.selected').removeClass('selected'); alltrades_delivery.addresses_list.find('p:eq(0)').addClass('selected'); } return false; } var key = alltrades_delivery.address_field.val(); if(key == alltrades_delivery.current_key) { return false; } alltrades_delivery.current_key = key; if(key.length > 1 && alltrades_delivery.status == 0) { alltrades_delivery.status = 1; alltrades_delivery.counting_key = alltrades_delivery.current_key; alltrades_delivery.timer = setTimeout( function() { $.post(alltrades_shop.lang_prefix + '/?show=delivery_module&act=get_addresses&mode=ajax&field_id=' + alltrades_delivery.field_id + '&type=' + alltrades_delivery.method, {'key': key}, (html) => { alltrades_delivery.status = 0; if(alltrades_delivery.counting_key == alltrades_delivery.current_key) { if(html.length > 5) { alltrades_delivery.addresses_list.show().html(html); } else { alltrades_delivery.addresses_list.html('').hide(); } } else { alltrades_delivery.current_key = alltrades_delivery.counting_key; alltrades_delivery.onEditAddressKeyUp(alltrades_delivery.keyupEvent); } } ); }, 200 ); } }, set_address: function(link) { $('#' + this.method + '_address [name=address]').val($(link).attr('address')); $('#' + this.method + '_address_coords').val($(link).attr('coords')); this.address = { address : $(link).attr('address'), city : $(link).attr('city'), coords : $(link).attr('coords'), zip : $(link).attr('zip'), kladr : $(link).attr('kladr'), }; this.addresses_list.hide(); this.calc(this.address); }, calc: function(address) { eval(this.method + '_calc(\'' + this.field_id + '\', address);'); }, }; alltrades_shop.init_basket(); function search_update_form(fields) { if(fields==''){ $('div[id^="search-field"]').show(); }else{ $('div[id^="search-field"]').each(function(){ if(fields.indexOf(','+this.id.substr(13)+',')==-1){ $(this).hide(); }else{ $(this).show(); } }); } } //================================= var alltrades_comments = { obj_id: '', key: 0, mark: 0, type: 0, parent_id: 0, parent_comment_id: 0, load_form: function (el_id, type, parent_id) { if(typeof el_id != 'undefined'){ this.obj_id='#'+el_id; } if(typeof type != 'undefined'){ this.type=type; } if(typeof parent_id != 'undefined'){ this.parent_id=parent_id; } this.key=Math.random(); $(this.obj_id).load('/?show=comments&mode=ajax&act=get_form&type='+this.type+'&parent_id='+this.parent_id+'&parent_comment_id='+this.parent_comment_id+'&rand='+this.key, function(){ $('.star-mark').bind('click', function(){ $('input[name=mark]').val($(this).attr('mark')); alltrades_comments.show_stars($(this).attr('mark')); }); }); $('#comments_add_main_comment_link').hide(); }, show_stars: function(mark){ $(this.obj_id+' input[name=mark]').val(mark); for(var i=1; i<=5; i++){ if(mark>=i){ $(this.obj_id).find('.mark'+i).removeClass('rank-star-empty').addClass('rank-star'); }else{ $(this.obj_id).find('.mark'+i).removeClass('rank-star').addClass('rank-star-empty'); } } }, send: function(){ var ret=''; $(this.obj_id+' [num]').each(function(){ ret+=$(this).attr('num')+':'; }); ret+=this.key; $.post('/?show=comments&mode=ajax&act=send&key='+hex_md5(ret)+'&rand='+this.key, $(this.obj_id+' form').serialize(), function(html){ $(alltrades_comments.obj_id).html(html); $(alltrades_comments.obj_id+' .star-mark').bind('click', function(){ $(alltrades_comments.obj_id+' input[name=mark]').val($(this).attr('mark')); alltrades_comments.show_stars($(this).attr('mark')); }); }); }, add_answer: function(id){ this.parent_comment_id=id; $('#comment_'+id+' > .comment-answers').show().prepend($(this.obj_id)); this.load_form(); $('#comments_add_main_comment_link').show(); }, add_comment: function(){ this.parent_comment_id=0; $(this.obj_id).appendTo('#comments_form_wr').show(); this.load_form(); }, tree: function(){ $('[data_parent_id]').each(function(){ $(this).appendTo('#comment_'+$(this).attr('data_parent_id')+' > .comment-answers'); $('#comment_'+$(this).attr('data_parent_id')+' > .comment-answers').show(); }); $('.comment-mark').each(function(){ var mark=$(this).attr('data_mark'); for(var i=1;i<=mark;i++){ $(this).append(''); } for(var i=mark;i<5;i++){ $(this).append(''); } }); } }