jQuery( function($) { var program = $('#program'); $(window).load(function(){ if(program.length > 0) change_program_info(); }); program.on('change', function(){ change_program_info(); }); function change_program_info(){ var type = program.val(); $('.info-programm').hide(); $('.description-info').hide(); $('.description-'+type).show(); $('#program-'+type).show(); var tID = $('#trackingId'), app = $('#AppKey'); } $('#categories').change(function(){ $('#dropcat').css('border', '1px solid #ddd'); $('#keywords').css('border', '1px solid #ddd'); var category_value = $(this).val(); //Function for changing options in "select#subcategories" aliprice_update_subcategories(category_value); }); $('#keywords').focus(function(){ $('#dropcat').css('border', '1px solid #ddd'); $('#keywords').css('border', '1px solid #ddd'); }); $(document).on('change', '#dropcat', function(){ $('#dropcat').css('border-color', '#ddd'); }); var t = { bulk : $('form.bulk'), sheduled : $('form.sheduled'), advanced : $('form.advanced'), byproducts : $('form.byproducts'), formremmove : $('#remove'), formupdate : $('#update'), btnremmove : $('[name="remove"]'), update : $('[name="update_products"]'), categoryId : '[name="categories"]', subcategoryId : '[name="subcategories"]', keywords : '[name="keywords"]', priceFrom : '[name="pricefrom"]', priceTo : '[name="priceto"]', promotionFrom : '[name="promotionfrom"]', promotionTo : '[name="promotionto"]', creditScoreFrom : '[name="creditScoreFrom"]', creditScoreTo : '[name="creditScoreTo"]', sort : '[name="sort"]', send : '[name="search-submit"]', productId : '[name="productId"]', sendIds : '[name="search-id-submit"]' }, r = { output : $('#request-data'), outputIds : $('#request-data-by-id'), loadIds : $('#request-data-by-id .load'), load : $('#request-data .load'), content : $('#request-content'), contentIds : $('#request-content-id'), apply : $('#result-apply'), formtranslate : $('#setting-translate'), translateaction : $('a.ae-action'), edittranslate : $('td.can_edited'), savetranslate : 'button[name="save-title"]', filters : '#filters', success : '#total-success', fail : '#total-fail', spinner : 'fa-spinner fa-spin', importAdv : 'button[name="import-now"]', translateAdv : 'button[name="do-translate"]', importID : 'button[name="import-now-ids"]', dropcat : 'select[name="dropcat"]', pstatus : 'select[name="publishstatus"]', importBulk : 'button[name="bulk-import"]', searchAgain : 'button[name="btn-close"]', stop : 'button[name="btn-stop"]', status : '[name="status"]', totalShed : $('#sheduled-filter'), filterRes : $('#filter-result'), selectCat : '#select-cat', progressInner : '.progress-inner' }, s = { btn : $('[name="test_connection"]'), app : $('[name="AppKey"]'), track : $('[name="trackingId"]'), method : $('[name="method"]'), username : $('[name="Partner_username"]'), password : $('[name="Partner_password"]'), content : $('#testConnection'), spinner : $('#spinner-load'), modalcontent : $('#Modal .tab-content') }, tr = { bulk_count : "You did not indicate how many imported products", bulk_size : "You specified a value greater than can be import", pId : "Product ID", imNow : "Import Now", sAgain : "Search Again", progress : "Overall Progress", link : "Get link", preview : "Preview", prev : "Prev", next : "Next", notfound : "This product does not participate in the Program", del : "Are you sure you want to delete all products?" }; var tt = get_translate(); if( tt != null ) tr = tt; function get_translate(){ var tr = null; $.ajax({ url: ajaxurl, async: false, data: {'action': 'aliprice_get_translate'}, type: "POST", success: function (response) { tr = aetoJSON(response); } }); return tr; } r.totalShed.on( 'click', function(e) { if ($("#categories").val()=='' && $('#dropcat').val()=='0'){ $('#dropcat').css('border', '1px solid red') return false; }{ $('#dropcat').css('border', '1px solid #ddd') } e.preventDefault(); var fs = 0, th = $(this), thform = th.parents('form'), ourcat = $('#dropcat').val(), status = thform.find(r.pstatus).val(), unitType = $('#unitType').val(); if( $('#fs').is(':checked') ) fs = 1; $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_total_sheduled', categoryId: t.sheduled.find( t.categoryId ).val(), subcategoryId: t.sheduled.find( t.subcategoryId ).val(), keywords: t.sheduled.find( t.keywords ).val(), priceFrom: t.sheduled.find( t.priceFrom ).val(), priceTo: t.sheduled.find( t.priceTo ).val(), promotionFrom: t.sheduled.find( t.promotionFrom ).val(), promotionTo: t.sheduled.find( t.promotionTo ).val(), creditScoreFrom:t.sheduled.find( t.creditScoreFrom ).val(), creditScoreTo: t.sheduled.find( t.creditScoreTo ).val(), fs: fs, ourcat: ourcat, status: status, unitType: unitType }, type: "POST", success: function(data){ r.filterRes.html(data); r.apply.show(); } }); }); /* bulk */ t.bulk.on( 'click', t.send, function(e) { e.preventDefault(); if ($("#categories").val()=='' && $('#keywords').val()==''){ $('#keywords').css('border', '1px solid red') return false; }{ $('#keywords').css('border', '1px solid #ddd') } $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_total_goods_in_cat', categoryId: t.bulk.find( t.categoryId ).val(), subcategoryId: t.bulk.find( t.subcategoryId ).val(), keywords: t.bulk.find( t.keywords ).val(), priceFrom: t.bulk.find( t.priceFrom ).val(), priceTo: t.bulk.find( t.priceTo ).val(), promotionFrom: t.bulk.find( t.promotionFrom ).val(), promotionTo: t.bulk.find( t.promotionTo ).val(), creditScoreFrom:t.bulk.find( t.creditScoreFrom ).val(), creditScoreTo: t.bulk.find( t.creditScoreTo ).val() }, type: "POST", beforeSend: function(){ t.bulk.find('.load').show(); aeLoading(); }, success: function(data){ r.load.hide(); r.content.html(data).show(); }, complete: aeScrollDown }); }); $(document).on('click', r.importBulk, function(e){ if ($("#categories").val()=='' && $('#dropcat').val()=='0'){ $('#dropcat').css('border', '1px solid red') return false; }{ $('#dropcat').css('border', '1px solid #ddd') } e.preventDefault(); var th = $(this), gage = parseInt( th.data('gage') ), thform = th.parents('form'), quantity = thform.find('[name="quantity"]'), size = quantity.val(), cc = 2, fs = 0, ourcat = $('#dropcat').val(), status = thform.find(r.pstatus).val(), unitType = $('#unitType').val(); if( $('#fs').is(':checked') ) fs = 1; if( size == 0 || size == "" ) { th.parents('.bulk-settings').find('.count-total').append('
'+tr.bulk_count+'
'); return false; } if( size > gage || size > 10000) { th.parents('.bulk-settings').find('.count-total').append('
'+tr.bulk_size+'
'); return false; } th.parents('.bulk-settings').find('.count-total .alert').remove(); thform.find( r.stop ).show(); thform.find( r.importBulk ).hide(); r.content.find(r.success).text(0); r.content.find(r.fail).text(0); var pos = Math.ceil(size/cc), step = 1, st = 1, len = 100/pos; thform.find( r.status ).val(0); ajax_loader( thform.find('.loader'), true ); for( var p = 1; p <= pos; p++){ $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_bulk_import_step1', categoryId: t.bulk.find( t.categoryId ).val(), subcategoryId: t.bulk.find( t.subcategoryId ).val(), keywords: t.bulk.find( t.keywords ).val(), priceFrom: t.bulk.find( t.priceFrom ).val(), priceTo: t.bulk.find( t.priceTo ).val(), promotionFrom: t.bulk.find( t.promotionFrom ).val(), promotionTo: t.bulk.find( t.promotionTo ).val(), creditScoreFrom:t.bulk.find( t.creditScoreFrom ).val(), creditScoreTo: t.bulk.find( t.creditScoreTo ).val(), page_no: p, size: size, cc: cc, fs: fs, ourcat: ourcat, status: status, unitType: unitType }, type: "POST", beforeSend: function(e){ var status = thform.find( r.status ).val(); if( status === '1' ) { quantity.val(''); $('#total-progress .progress-bar').css({'width': '100%'}).attr('aria-valuenow', 100).text( "100%" ); thform.find( r.stop ).hide(); thform.find( r.importBulk ).show(); thform.find( r.searchAgain ).show(); aliprice_set_max_price(); ajax_loader( thform.find('.loader'), false ); e.abort(); return false; } else{ thform.find( r.searchAgain ).hide(); var per = Math.floor(len*step); $('#total-progress .progress-bar').css({'width': per+'%'}).attr('aria-valuenow', per).text( per+"%" ); } }, success: function(data) { var obj = aetoJSON(data), s = parseInt(r.content.find(r.success).text()), f = parseInt(r.content.find(r.fail).text()), vs = 0, vf = 0; if( typeof obj.success != 'undefined' ) vs = parseInt(obj.success); if( typeof obj.fail != 'undefined' ) vf = parseInt(obj.fail); r.content.find(r.success).text(s+vs); r.content.find(r.fail).text(f+vf); step = step + 1; if(step <= pos){ console.log("Position: "+step+' of '+pos); } }, complete: function(){ st = st + 1; if( st > pos ){ console.log("end"); thform.find( r.stop ).hide(); thform.find( r.searchAgain ).show(); thform.find( r.importBulk ).show(); aliprice_set_max_price(); ajax_loader( thform.find('.loader'), false ); } } }); } }); /** * Import products by ID * @todo запилить импорт со статусом */ $(document).on('click', r.importID, function(){ if ( $('#dropcat').val() == '0' ){ $('#dropcat').css('border', '1px solid red'); return false; }{ $('#dropcat').css('border', '1px solid #ddd'); } var box = $(this).parents('.import-settings'), th = box.find('table.advanced-result tbody'), foo = th.find('[type="checkbox"]:checked'); var size = foo.length, cat = box.find(r.dropcat).val(), status = box.find(r.pstatus).val(); if( size == 0 ) return false; var len = 100/size, t = 0, cs = 0; r.contentIds.find(r.success).text(0); r.contentIds.find(r.fail).text(0); r.contentIds.find(r.progressInner).show(); $(r.importID).find('span.fa').addClass(r.spinner); ajax_loader( box.find('.loader'), true ); loadProgress(); $.each( foo, function(){ var ch = $(this).parents('tr'), productId = $(this).val(), packageType = $(this).data('package'), price = $(this).data('price'), lot = $(this).data('lot'), productUrl = $(this).data('url'), salePrice = $(this).data('sale'), actualTime = $(this).data('date'), imageUrl = ch.find('td.thumb img').attr('src'), subject = ch.find('td.title .this_title').text(), volume = ch.find('td.volume').text(), score = ch.find('td.score').text(), current = $(this).parents('.import-settings'); $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_publish_product_id', actualTime: actualTime, evaluateScore: score, lotNum: lot, productUrl: productUrl, promotionVolume: volume, packageType: packageType, price: price, imageUrl: imageUrl, subject: subject, salePrice: salePrice, productId: productId, owncat: cat, status: status }, type: "POST", beforeSend: function(){ t = t + 1; var per = Math.floor(len*t); current.find('.progress-bar').css({'width': per+'%'}).attr('aria-valuenow', per).text( per+"%" ); //console.log( "Load position: "+t ); }, success: function(data){ cs = cs + 1; var obj = aetoJSON(data), s = parseInt(r.contentIds.find(r.success).text()), f = parseInt(r.contentIds.find(r.fail).text()); if( typeof obj.success != 'undefined' ) { r.contentIds.find(r.success).text(s+1); var th = ch.find('td.title'), title = ''+subject+'
'+tr.pId+': '+productId+'
', code = promotedBtn(productUrl); th.parents('tr').find('td').addClass('exists'); th.html(title+' '+code); } if( typeof obj.error != 'undefined' ) r.contentIds.find(r.fail).text(f+1); }, complete: function() { if(cs == size){ //console.log( "Load is complete" ); $(r.importID).find('span.fa').removeClass(r.spinner); aliprice_set_max_price(); ajax_loader( box.find('.loader'), false ); } } }); }); }); /** * Selective import products */ $(document).on('click', r.importAdv, function(){ if ($("#categories").val()=='' && $('#dropcat').val()=='0'){ $('#dropcat').css('border', '1px solid red'); return false; }{ $('#dropcat').css('border', '1px solid #ddd'); } var box = $(this).parents('.import-settings'), th = box.find('table.advanced-result tbody'), foo = th.find('[type="checkbox"]:checked'); var size = foo.length, cat = $('#dropcat').val(), status = box.find(r.pstatus).val(); if( size == 0 ) return false; var len = 100/size, t = 0, cs = 0; r.content.find(r.success).text(0); r.content.find(r.fail).text(0); r.content.find(r.progressInner).show(); $(r.importAdv).find('span.fa').addClass(r.spinner); ajax_loader( box.find('.loader'), true ); loadProgress(); $.each( foo, function(){ var ch = $(this).parents('tr'), productId = $(this).val(), packageType = $(this).data('package'), price = $(this).data('price'), lot = $(this).data('lot'), productUrl = $(this).data('url'), salePrice = $(this).data('sale'), category = $(this).data('category'), freeShippingCountry = $(this).data('freeShippingCountry'), actualTime = $(this).data('date'), imageUrl = ch.find('td.thumb img').attr('src'), subject = ch.find('td.title .this_title').text(), volume = ch.find('td.volume').text(), score = ch.find('td.score').text(), current = $(this).parents('.import-settings'); $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_publish_product', categoryAE: category, freeShippingCountry: freeShippingCountry, actualTime: actualTime, evaluateScore: score, lotNum: lot, productUrl: productUrl, promotionVolume: volume, packageType: packageType, price: price, imageUrl: imageUrl, subject: subject, salePrice: salePrice, productId: productId, owncat: cat, status: status }, type: "POST", beforeSend: function(){ t = t + 1; var per = Math.floor(len*t); current.find('.progress-bar').css({'width': per+'%'}).attr('aria-valuenow', per).text( per+"%" ); //console.log( "Load position: "+t ); }, success: function(data){ cs = cs + 1; var obj = aetoJSON(data), s = parseInt(r.content.find(r.success).text()), f = parseInt(r.content.find(r.fail).text()); if( typeof obj.success != 'undefined' ) { r.content.find(r.success).text(s+1); var th = ch.find('td.title'), title = ''+subject+'
'+tr.pId+': '+productId+'
', code = promotedBtn(productUrl); th.parents('tr').find('td').addClass('exists'); th.html(title+' '+code); } if( typeof obj.error != 'undefined' ) r.content.find(r.fail).text(f+1); }, complete: function() { if(cs == size){ $(r.importAdv).find('span.fa').removeClass(r.spinner); aliprice_set_max_price(); ajax_loader( box.find('.loader'), false ); } } }); }); }); /** * translate */ $(document).on('click', r.translateAdv, function(e){ var btn = $(this), box = btn.parents('.import-settings'), th = box.find('table.advanced-result tbody'), foo = th.find('[type="checkbox"]:checked'), lang = r.formtranslate.find('select[name="translate_to"]').val(); var size = foo.length; if( size == 0 ) return false; var len = 100/size, t = 0, cs = 0; btn.find('span.fa').addClass(r.spinner); ajax_loader( box.find('.loader'), true ); loadProgress(); $.each( foo, function(){ var th = $(this), type = th.data('type'), line = th.parents('tr'), item_id = th.val(); $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_translate_item', type: type, item_id: item_id, lang: lang }, type: "POST", beforeSend: function(){ t = t + 1; var per = Math.floor(len*t); box.find('.progress-bar').css({'width': per+'%'}).attr('aria-valuenow', per).text( per+"%" ); }, success: function(data){ cs = cs + 1; var obj = aetoJSON(data); if( typeof obj.message != 'undefined' ) { } else { line.find('td.original span').text(obj.o_title); line.find('td.title span').text(obj.title); } th.click(); }, complete: function() { if(cs == size){ btn.find('span.fa').removeClass(r.spinner); ajax_loader( box.find('.loader'), false ); setTimeout(function(){ box.find('.progress-bar').css({'width':'0%'}).attr('aria-valuenow', 0).text( "0%" ); }, 500); } } }); }); e.preventDefault(); }); r.translateaction.on('click', function(){ var th = $(this), type = th.data('type'), doing = th.data('do'), line = th.parents('tr'); if( doing == 'translate' ) { th.parents('tr').find('input[type="checkbox"]').click(); th.parents('.import-settings').find('button[name="do-translate"]').click(); } else if( doing == 'repair' ) { var id = th.parents('tr').find('input[type="checkbox"]').val(); $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_repair_translate_item', type: type, item_id: id }, type: "POST", beforeSend: function(){ th.find('span.fa').addClass(r.spinner); }, success: function(data){ var obj = aetoJSON(data); if( typeof obj.message != 'undefined' ) { } else { line.find('td.original span').text(obj.o_title); line.find('td.title span').text(obj.title); } }, complete: function() { th.find('span.fa').removeClass(r.spinner); } }); } return false; }); $(document).click(function() { if( r.edittranslate.find('form').length > 0 ){ var form = r.edittranslate.find('form'), text = form.find('input[name="tr-title"]').val(); form.parents('tr').find('td.can_edited span.item-inner-info'). html(text+' '); } }); r.edittranslate.click(function(event) {event.stopPropagation();}); r.edittranslate.on('click', 'span.this-edit', function() { if( $(this).parents('form').find('input').length > 0 ) return false; var th = $(this).parents('td').find('span.item-inner-info'), str = th.text(), type = th.parents('tr').find('input[type="checkbox"]').data('type'); var form = '
' + '
'; th.html(form); $(this).remove(); }); r.edittranslate.on('click', r.savetranslate, function(e) { e.preventDefault(); var th = $(this).parents('form'), text = th.find('input[name="tr-title"]'), str = $.trim(text.val()), type = text.data('type'), line = th.parents('tr'), id = line.find('input[type="checkbox"]').val(); if( str.length == 0 ){ text.css({'border':'1px solid #ff0000'}); return false; } $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_save_new_title_item', type: type, item_id: id, title: str }, type: "POST", beforeSend: function(){ th.find('span.item-inner-info span.fa').addClass(r.spinner); }, success: function(data){ var obj = aetoJSON(data); if( typeof obj.message != 'undefined' ) { //console.log(obj.message); th.find('span.item-inner-info span.fa').removeClass(r.spinner); } else { line.find('td.can_edited span.item-inner-info').html(str); line.find('td.can_edited').append(''); } }, complete: function() { //console.log( "New title saved" ); } }); }); /* search by products ID */ t.byproducts.on( 'click', t.sendIds, function(e) { e.preventDefault(); ajaxProducts(); }); /* advanced */ t.advanced.on( 'click', t.send, function(e) { if ($("#categories").val()=='' && $('#keywords').val()==''){ $('#keywords').css('border', '1px solid red') return false; }{ $('#keywords').css('border', '1px solid #ddd') } e.preventDefault(); ajaxAdvansed( 1 ); }); /* click to sort btn */ $(document).on('click', r.filters+' a' , function(e) { e.preventDefault(); t.advanced.find(t.sort).val( $(this).data('order') ); ajaxAdvansed( 1, false ); }); /* mass checked */ $(document).on('click', '.import-settings .mass-checked', function(){ var th = $(this).parents('table').find('tbody'), current = $(this).parents('.import-settings'); if( $(this).hasClass('that-true') ){ th.find('[type="checkbox"]').attr('checked', false); $(this).removeClass('that-true fa-check-square-o').addClass('fa-square-o'); current.find('span.count-import').text('(0)'); } else{ th.find('[type="checkbox"]').attr('checked', true); var count = th.find('[type="checkbox"]:checked').length; $(this).addClass('that-true fa-check-square-o').removeClass('fa-square-o'); current.find('span.count-import').text('('+count+')'); } }); $(document).on('click', '.import-settings table tbody [type="checkbox"]', function(){ var th = $(this).parents('tbody'), count = th.find('[type="checkbox"]:checked').length, countall = th.find('[type="checkbox"]').length, current = $(this).parents('.import-settings'); if( count == countall ) current.find('.mass-checked').addClass('that-true fa-check-square-o').removeClass('fa-square-o'); else current.find('.mass-checked').removeClass('that-true fa-check-square-o').addClass('fa-square-o'); count = th.find('[type="checkbox"]:checked').length; current.find('span.count-import').text('('+count+')'); }); /* options */ $(document).on('click', r.stop, function(e){ e.preventDefault(); var th = $(this).parents('form'); th.find( r.status ).val(1); }); $(document).on('click', r.searchAgain, function(e){ e.preventDefault(); var current = $(this).parents('.import-settings'); current.find('button.close').click(); }); $(document).on('click', '.content-inner button.close', function(){ t.bulk.find('.load').hide(); t.advanced.find('.load').hide(); t.byproducts.find('.load').hide(); r.output.hide(); r.outputIds.hide(); r.load.hide(); r.loadIds.hide(); r.content.find('.'+$(this).data('dismiss')).remove(); r.contentIds.find('.'+$(this).data('dismiss')).remove(); }); function ajax_loader( th, action ) { if( action === true ) th.show(); else th.hide(); } function aeLoading() { r.output.show(); r.load.show(); r.content.hide(); } function aeLoadingIds() { r.outputIds.show(); r.loadIds.show(); r.contentIds.hide(); } function aeScrollDown(){ $('html, body').animate({scrollTop: r.output.offset().top}, 1500); } function aeModalLoading() { s.spinner.show(); s.modalcontent.hide(); } function aeModalDone() { s.spinner.hide(); s.modalcontent.show(); } function loadProgress(){ $(r.importAdv).parent().find('.loading .progress').show(); } /* * advanced search **/ function ajaxAdvansed(page, scroll, beforeTable){ var total = 0, categoryId = t.advanced.find( t.categoryId ).val(); subcategoryId = t.advanced.find( t.subcategoryId ).val(); categoryIdForRequest = categoryId; //bigsale = t.advanced.find(t.bigsale); if(subcategoryId !== undefined && subcategoryId > 0) { categoryIdForRequest = subcategoryId; } //bigsale = ( bigsale[0].checked ) ? 'y' : ''; //If $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_advanced_show', categoryId: categoryIdForRequest, keywords: t.advanced.find( t.keywords ).val(), priceFrom: t.advanced.find( t.priceFrom ).val(), priceTo: t.advanced.find( t.priceTo ).val(), promotionFrom: t.advanced.find( t.promotionFrom ).val(), promotionTo: t.advanced.find( t.promotionTo ).val(), creditScoreFrom:t.advanced.find( t.creditScoreFrom ).val(), creditScoreTo: t.advanced.find( t.creditScoreTo ).val(), sort: t.advanced.find( t.sort ).val(), page_no: page }, type: "POST", beforeSend: function(){ aeLoading(); t.advanced.find('.load').show(); }, success: function(data){ var response = aetoJSON(data); if( typeof response.error != 'undefined' ) { r.load.hide(); var before = (typeof response.before != 'undefined') ? response.before : ''; r.content.html(before+''+response.error).show(); return false; } total = response.result.totalResults; var filters_menu = ae_get_filters_menu(response.sort); r.load.hide(); var output = '
'; output += response.before; output += '

'+response.title+'

\
\
\
\
\ \ \
\
\
'+response.total+' '+response.info+' \ \
\
0%
\
\
\
'; if( typeof beforeTable == 'undefined' || beforeTable === false) output += '
'+filters_menu+'
'; output += ''; output += ''; $.each(response.header, function(i,str){ output += ''; }); output += ''; output += ''; $.each(response.result.products, function(i,str){ var rate = 8, commission = parseFloat( (str.salePrice).replace('US $', '') )*( rate/100 ); commission = commission.toFixed(2); output += ' \ \ \ \ \ \ \ \ \ '; }); output += ''; output += "
'+str+'
\ '+str.productTitle+' \
'+tr.pId+': '+str.productId+'
\ '+promotedBtn(str.productUrl)+'\
'+str.salePrice+'/'+str.packageType+''+rate+'%US $'+commission+''+str.volume+''+str.evaluateScore+'
"; if( typeof beforeTable == 'undefined' || beforeTable === false) output += '
'; output += "
"; r.content.html(output).show(); } }).done(function(){ if( typeof scroll == 'undefined' || scroll === true ) aeScrollDown(); createPagination( '.pagination-inner', total, page ); getDropdownCat(); getPermalink( r.content ); }); } /* * search by product id **/ function ajaxProducts(){ var total = 0, ids = t.byproducts.find(t.productId).val(); $.ajaxQueue({ url: ajaxurl, data: { action: 'aliprice_search_by_id_show', ids: ids }, type: "POST", beforeSend: function(){ aeLoadingIds(); t.byproducts.find('.load').show(); }, success: function(data){ var response = aetoJSON(data); if( typeof response.error != 'undefined' ) { r.loadIds.hide(); var before = (typeof response.before != 'undefined') ? response.before : ''; r.contentIds.html(before+''+response.error).show(); return false; } total = response.totalResults; r.loadIds.hide(); var output = '
'; output += response.before; output += '

'+response.title+'

\
\
\
\
\ \ \
\
\
'+response.total+' '+response.info+' \ \
\
0%
\
\
\
'; output += ''; output += ''; $.each(response.header, function(i,str){ output += ''; }); output += ''; output += ''; var list_id = ids.split(','); $.each(response.result, function(i,str){ if( typeof (str.notfound) != 'undefined' ) { output += '\ \ '; } else { var rate = 8, commission = parseFloat((str.salePrice).replace('US $', '')) * ( rate / 100 ); commission = commission.toFixed(2); output += ' \ \ \ \ \ \ \ \ \ '; } }); output += ''; output += "
'+str+'
'+tr.pId+' '+ list_id[i] +' '+tr.notfound+'
\ ' + str.productTitle + ' \
' + tr.pId + ': ' + str.productId + '
\ ' + promotedBtn(str.productUrl) + '\
' + str.salePrice + '/' + str.packageType + '' + rate + '%US $' + commission + '' + str.volume + '' + str.evaluateScore + '
"; output += "
"; r.contentIds.html(output).show(); } }).done(function(){ getDropdownCat(true); getPermalink( $(r.contentIds) ); }); } function ae_get_filters_menu( data ){ var out = '', current = t.advanced.find( t.sort ).val(); $.each(data, function(key, val){ if( key == 'title'){ out += ''+val+''; } else { var value = val.value.split(','), order = "", sorted = "", active = ""; if (in_array(current, value) && value.length > 1) { var p = 0; $.each(value, function (i, index) { p = p + 1; if (index != current) { order = index; if(p == 1) sorted = ''; else sorted = ''; } else active = 'active'; }); } else { sorted = ''; order = value[0]; if (order == current) active = 'active'; } out += '' + val.title + ' '+sorted+' '; } }); return out; } function getPermalink( content ){ var tu = content.find('#items-list-result tr.each'), too = []; if( typeof tu == 'undefined') return; tu.each(function(){ var id = $(this).data('item'); if( typeof id != 'undefined') too.push(id); }); if(too.length == 0) return; $.ajaxQueue({ url:ajaxurl, data:{ 'action': 'aliprice_permalink_import', 'products': too }, type:"POST", success: function(data){ var response = aetoJSON(data); if( typeof response.not == 'undefined' ) { $.each(response, function(i, v){ var th = $('#product-'+v.id+' td.title'), title = ''+th.find('.this_title').text()+'
'+tr.pId+': '+v.id+'
', //code = '[ali_product id="'+v.post_id+'"]'; code = promotedBtn(v.productUrl); th.html(title+' '+code); th.parents('tr').find('td').addClass('exists'); }); } } }); } function getDropdownCat( ids ) { $.ajaxQueue({ url:ajaxurl, data:{'action':'aliprice_get_dropdowncat'}, type:"POST", success: function(data){ if( typeof ids == 'undefined' || ids === false ) r.content.find(r.selectCat).html(data); else r.contentIds.find(r.selectCat).html(data); } }); } $(document).on('click', 'button.getmodal', function(e){ var th = $(this).parents('tr'), type = $(this).data('type'); showPromoted(th, type); e.preventDefault(); }); function showPromoted(th, type) { var modal = $('#Modal'), img = th.find('.thumb img').attr('src'), link = th.find('.cb [name="cb"]').data('url'), title = th.find('.this_title').text(); $.ajaxQueue({ url:ajaxurl, data:{'action':'aliprice_get_promotion', 'link':link}, type:"POST", beforeSend: aeModalLoading, success: function(data){ var obj = aetoJSON(data); if( typeof obj.success != 'undefined' ) { modal.find('.nav li').removeClass('active'); modal.find('.tab-pane').removeClass('active'); var t = modal.find('#banner'), x = ''+title+''; t.find('.thumb span').html(''); t.find('.title span').text(title); t.find('.code textarea').text(x); var l = modal.find('#link'), c = ''+title+''; l.find('.title span').text(title); l.find('.code textarea').text(c); modal.find('.nav li.'+type).addClass('active'); modal.find('.tab-content #'+type).addClass('active'); } if( typeof obj.error != 'undefined' ) alert(obj.error); }, complete: aeModalDone }); } function createPagination( id, numItems, current ){ var perPage = 20; if( numItems > 10000 ) numItems = 10000; $(id).pagination({ items: numItems, itemsOnPage: perPage, currentPage: current, cssStyle: "light-theme", prevText: tr.prev, nextText: tr.next, onPageClick: function(pageNumber) { r.content.html(''); ajaxAdvansed( pageNumber ); } }); } function promotedBtn(url){ return '

\   \ '+tr.preview+'

'; } /** * test connetction */ s.btn.on('click', function(e){ e.preventDefault(); var app = s.app.val(), track = s.track.val(), method = s.method.val(); username= s.username.val(); password= s.password.val(); s.content.show(); t.formupdate.hide(); $.ajaxQueue({ url:ajaxurl, data:{'action':'aliprice_test_connection', 'app': app, 'track': track, 'method': method, 'username': username, 'password': password }, type:"POST", beforeSend: function(){ var spinner = '
'; s.content.html(spinner); }, success: function(data){ s.content.html(data); } }); }); /** * Set max price */ function aliprice_set_max_price( ) { $.ajaxQueue({ url:ajaxurl, data:{'action':'aliprice_set_max_price'}, type:"POST", success: function(data){} }); } /** * Remove All Products */ t.btnremmove.on('click', function(e){ e.preventDefault(); var isDelete = confirm(tr.del); if(isDelete) ae_remove_all(); }); function ae_remove_all( ){ var progress = t.formremmove.find('#total-progress .progress-bar'), step = 0; $.ajaxQueue({ url: ajaxurl, data: {'action':'aliprice_get_terms_id'}, type: "POST", beforeSend: function(){ t.btnremmove.find('span').addClass(r.spinner); progress.css({'width': '0%'}).attr('aria-valuenow', 0).text( "0%" ); }, success: function(data) { if( data != "" ) { data = aetoJSON(data); var con = data.length, len = 100 / con; if (con > 0) { $.each(data, function (i, index) { $.ajaxQueue({ url: ajaxurl, data: {'action': 'aliprice_delete_products_from_terms', 'term_id': index}, type: "POST", beforeSend: function () { step = i + 1; var per = Math.floor(len * step); progress.css({'width': per + '%'}).attr('aria-valuenow', per).text(per + "%"); //console.log("Step: " + step); }, success: function (data) { //console.log("Status: " + data); }, complete: function () { if (step == con) { remove_prodcts(); } } }); }); } else { t.btnremmove.find('span').removeClass(r.spinner); progress.css({'width': '100%'}).attr('aria-valuenow', 100).text("100%"); } } else{ t.btnremmove.find('span').removeClass(r.spinner); progress.css({'width': '100%'}).attr('aria-valuenow', 0).text("100%"); } } }); } function remove_prodcts() { $.ajaxQueue({ url: ajaxurl, data: {'action': 'aliprice_delete_products_remaining'}, type: "POST", success: function (data) { //console.log("end"); }, complete: function () { t.btnremmove.find('span').removeClass(r.spinner); } }); } function in_array(needle, haystack, strict) { // Checks if a value exists in an array var found = false, key, strict = !!strict; for (key in haystack) { if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) { found = true; break; } } return found; } /** * Update ALL Products */ t.update.on('click', function(e){e.preventDefault(); ae_update_all() }); function ae_update_all( ){ var progress = t.formupdate.find('#total-progress .progress-bar'); s.content.hide(); t.formupdate.show(); ajax_loader( t.formupdate.find('.loader'), true ); $.ajaxQueue({ url: ajaxurl, data: {'action':'aliprice_count_products'}, type: "POST", beforeSend: function(){ t.update.find('span').addClass(r.spinner); progress.css({'width': '0%'}).attr('aria-valuenow', 0).text( "0%" ); }, success: function(data) { if( data != '0' ) { var delta = Math.floor(data/20), len = 100 / delta, step = 0; for( var p = 1; p <= delta; p++ ) { $.ajaxQueue({ url: ajaxurl, data: {'action': 'aliprice_update_products', 'position': p}, type: "POST", beforeSend: function () { step = step + 1; var per = Math.floor(len * step); progress.css({'width': per + '%'}).attr('aria-valuenow', per).text(per + "%"); //console.log("position : " + step); }, success: function (response) { //console.log("status: " + response); }, complete: function () { if (step == delta) { t.update.find('span').removeClass(r.spinner); aliprice_set_max_price(); progress.css({'width': '100%'}).attr('aria-valuenow', 100).text("100%"); ajax_loader( t.formupdate.find('.loader'), false ); } } }); } } else { t.update.find('span').removeClass(r.spinner); progress.css({'width': '100%'}).attr('aria-valuenow', 100).text("100%"); ajax_loader( t.formupdate.find('.loader'), false ); } } }); } function aetoJSON(data){ try { var response = $.parseJSON(data); } catch(e) { console.log(data); console.log(e); return false; } return response; } //Function for changing options in "select#subcategories" function aliprice_update_subcategories(category_value) { var categoriesSelect = $("select#categories"), //нужен parent .item-group subcategoriesSelect = $("select#subcategories"), subcategoriesSelectFormItemWrap = $("#subcategory-form-item-wrap"), subcategoriesSelectName = subcategoriesSelect.attr("name"), subcategoriesSelectClass = subcategoriesSelect.attr("class"), subcategoriesSelectParent = subcategoriesSelect.parent(), options = '', emptySelect = ''; $.ajaxQueue({ url: ajaxurl, data: { 'action': 'aliprice_update_subcategories', 'category_ali_id': category_value }, type: "POST", success: function (data) { data = JSON.parse(data); if(data[0].error) { subcategoriesSelectParent.html("").html(emptySelect); subcategoriesSelectFormItemWrap.css({"display" : "none"}); } else { jQuery.each(data, function (index, value) { options += ''; }); var notEmptySelect = ''; subcategoriesSelectParent.html("").html(notEmptySelect); subcategoriesSelectFormItemWrap.css({"display" : "block"}); } }, error: function () { subcategoriesSelectParent.html("").html(emptySelect); } }); } //END ae_update_subcategories() });