%PDF- %PDF-
Direktori : /home/bitrix/www/bitrix/components/bitrix/sale.ebay.categories/templates/.default/ |
Current File : //home/bitrix/www/bitrix/components/bitrix/sale.ebay.categories/templates/.default/script.min.js |
(function(e){if(BX.Sale&&BX.Sale.EbayCategories)return;if(!BX.Sale)BX.Sale={};BX.Sale.EbayCategories={isKeyCtrlShiftDown:false,ajaxUrl:"",categoriesSelectId:"",variationsBlockId:"",ebayVarSelectName:"",bitrixPropsSelectName:"",bitrixCategoryId:0,iBlockId:0,siteId:"",init:function(e){BX.Sale.EbayCategories.ajaxUrl=e.ajaxUrl;BX.Sale.EbayCategories.categoriesSelectId=e.categoriesSelectId;BX.Sale.EbayCategories.variationsBlockId=e.variationsBlockId;BX.Sale.EbayCategories.ebayVarSelectName=e.ebayVarSelectName;BX.Sale.EbayCategories.bitrixPropsSelectName=e.bitrixPropsSelectName;BX.Sale.EbayCategories.siteId=e.siteId;BX.Sale.EbayCategories.bitrixCategoryId=e.bitrixCategoryId;BX.Sale.EbayCategories.iBlockId=e.iBlockId},addEvent:function(e,a,t){if(e.addEventListener)e.addEventListener(a,t,false);else e.attachEvent("on"+a,t);return arguments.callee},hideVariations:function(){var e=BX(BX.Sale.EbayCategories.variationsBlockId);e.style.display="none"},showVariations:function(){var e=BX(BX.Sale.EbayCategories.variationsBlockId);e.style.display=""},getVariations:function(e){var a={category:e.value,siteId:BX.Sale.EbayCategories.siteId,action:"get_variations_list",sessid:BX.bitrix_sessid()};BX.showWait();BX.ajax({data:a,method:"POST",dataType:"json",url:BX.Sale.EbayCategories.ajaxUrl,onsuccess:function(a){BX.closeWait();if(a){if(!a.ERROR){if(a.VARIATIONS_LIST)BX.Sale.EbayCategories.setVariations(e.value,a.VARIATIONS_LIST)}else{BX.debug(a.ERROR)}}else{BX.debug("Error: getVariations")}},onfailure:function(){BX.debug("onfailure: getCategoriesList")}})},setVariations:function(e,a){var t=BX(BX.Sale.EbayCategories.variationsBlockId);for(var i=0,r=t.children.length-2;i<r;i++)t.removeChild(t.children[0]);for(i=t.firstElementChild.firstElementChild.options.length-1;i>0;i--)t.firstElementChild.firstElementChild.remove(i);for(i in a){var o=document.createElement("option");o.value=i;o.text=a[i].NAME;t.firstElementChild.firstElementChild.add(o)}t.firstElementChild.firstElementChild.name=BX.Sale.EbayCategories.ebayVarSelectName+"[]";t.firstElementChild.lastElementChild.name=BX.Sale.EbayCategories.bitrixPropsSelectName+"[]";if(t.firstElementChild.firstElementChild.options.length>1){BX.Sale.EbayCategories.setRequiredVariations(a);BX.Sale.EbayCategories.showVariations()}else{BX.Sale.EbayCategories.hideVariations()}},setRequiredVariations:function(e){var a=BX(BX.Sale.EbayCategories.variationsBlockId);for(var t in e){if(e[t].REQUIRED=="Y"){var i=a.lastElementChild.previousElementSibling.cloneNode(true);i.firstElementChild.value=t;i.appendChild(BX.create("span",{html:BX.message("SALE_EBAY_SEC_REQUIRED"),style:{color:"red"}}));a.insertBefore(i,a.lastElementChild.previousElementSibling)}}},addEmptyVariation:function(){var e=BX(BX.Sale.EbayCategories.variationsBlockId);var a=e.lastElementChild.previousElementSibling.cloneNode(true);e.insertBefore(a,e.lastElementChild.previousElementSibling)},createCategoryProperty:function(e,a){var t=a.previousElementSibling.previousElementSibling.value,i=a.previousElementSibling.previousElementSibling.selectedOptions[0].text;var r={variationId:t,action:"get_variation_values",sessid:BX.bitrix_sessid()};BX.showWait();BX.ajax({data:r,method:"POST",dataType:"json",url:BX.Sale.EbayCategories.ajaxUrl,onsuccess:function(a){BX.closeWait();if(a){if(!a.ERROR){var t=0,r=0;for(r in e)t++;if(typeof a.VARIATION_VALUES!="undefined"){if(t>1){BX.Sale.EbayCategories.showIblockChooseDialog({iblockIds:e,variationName:i,values:a.VARIATION_VALUES})}else{if(!a.VARIATION_VALUES)a.VARIATION_VALUES={};BX.Sale.EbayCategories.showCreatePropertyDialog({iblockId:r,variationName:i,values:a.VARIATION_VALUES})}}else{BX.debug("Error: createCategoryProperty VARIATION_VALUES doesn't exist")}}else{BX.debug(a.ERROR)}}else{BX.debug("Error: createCategoryProperty")}},onfailure:function(){BX.debug("onfailure: createCategoryProperty")}})},showCreatePropertyDialog:function(e){var a="n0",t={},i=e.values;for(var r=0,o=i.length;r<o-1;r++){t[r*-1]={VALUE:i[r],XML_ID:BX.translit(i[r],{change_case:"U",replace_space:"_",max_len:20})}}var l={sessid:BX.bitrix_sessid(),PARAMS:{PREFIX:"PREFIX_",ID:a,IBLOCK_ID:e.iblockId,TITLE:BX.message("SALE_EBAY_SEC_JS_CREATE_NEW_CATEGORY_PROP"),RECEIVER:"obIBProps"},PROP:{NAME:e.variationName,PROPERTY_TYPE:"L",ACTIVE:"Y",MULTIPLE:"N",SORT:"500",IS_REQUIRED:"N",CODE:BX.translit(e.variationName,{change_case:"U",replace_space:"_",max_len:20})},PROPERTY_VALUES:t};new BX.CDialog({title:BX.message("SALE_EBAY_SEC_JS_CREATE_NEW_CATEGORY_PROP"),content_url:"/bitrix/admin/iblock_edit_property.php?lang="+BX.message("LANGUAGE_ID")+"&propedit="+a+"&bxpublic=Y&receiver=obIBProps&return_url=section_edit",content_post:l,draggable:true,resizable:true,buttons:[BX.CDialog.btnSave,BX.CDialog.btnCancel]}).Show()},showIblockChooseDialog:function(e){var a="category_prop_iblock_choose";var t={title:BX.message("SALE_EBAY_SEC_JS_CONTINUE"),id:"btnOk",name:"btnOk",className:"adm-btn-save",action:function(){this.parentWindow.Close();var t=BX(a);BX.Sale.EbayCategories.showCreatePropertyDialog({iblockId:t.value,variationName:e.variationName,values:e.values})}};var i={title:BX.message("SALE_EBAY_SEC_JS_CANCEL"),id:"btnCancel",name:"btnCancel",action:function(){this.parentWindow.Close()}};var r='<select name="category_prop_iblock_choose" id="category_prop_iblock_choose">';for(var o in e.iblockIds)r+='<option value="'+o+'">'+e.iblockIds[o]+"</option>";r+="</select>";this.dialogWindow=new BX.CDialog({title:BX.message("SALE_EBAY_SEC_JS_PROP_KIND"),content:r,resizable:false,height:200,width:400,buttons:[t,i]});this.dialogWindow.adjustSizeEx();this.dialogWindow.Show()},linkPropertyToCategory:function(e,a){var t={bitrixCategoryId:e,properyId:a,action:"set_category_property_link",sessid:BX.bitrix_sessid()};BX.showWait();BX.ajax({data:t,method:"POST",dataType:"json",url:BX.Sale.EbayCategories.ajaxUrl,onsuccess:function(e){if(e){if(!e.ERROR){var a=BX.findChild(document,{attribute:{name:"apply"}},true);if(a)a.click()}else BX.debug(e.ERROR)}else{BX.debug("Error: linkPropertyToCategory")}},onfailure:function(){BX.debug("onfailure: linkPropertyToCategory")}})},deleteChildrenCategoriesSelects:function(e){var a;while(a=e.parentNode.nextElementSibling)a.parentNode.removeChild(a)},createChildCategorySelect:function(e,a){var t="sale_ebay_category_"+a;var i=BX.create("SELECT",{props:{id:t,name:t},attrs:{onchange:"BX.Sale.EbayCategories.onCategoryChange(this, "+a+");"}}),r=BX.create("OPTION");i.appendChild(r);for(var o in e){r=BX.create("OPTION");r.appendChild(document.createTextNode(e[o].NAME));r.setAttribute("value",o);i.appendChild(r)}return i},onCategoryChange:function(e,a){var t=e.value,i=BX("SALE_EBAY_CATEGORY_ID");i.value=t;if(!t&&a==1){BX.Sale.EbayCategories.hideVariations();BX.Sale.EbayCategories.deleteCategoryMap()}else{BX.Sale.EbayCategories.getCategoryChildren(e,a)}},deleteCategoryMap:function(){if(!BX.Sale.EbayCategories.bitrixCategoryId)return;var a={bitrixCategoryId:BX.Sale.EbayCategories.bitrixCategoryId,iBlockId:BX.Sale.EbayCategories.iBlockId,action:"delete_category_map",sessid:BX.bitrix_sessid()};BX.showWait();BX.ajax({data:a,method:"POST",dataType:"json",url:BX.Sale.EbayCategories.ajaxUrl,onsuccess:function(a){if(a){if(!a.ERROR){e.location.reload(true)}else{BX.debug(a.ERROR)}}else{BX.debug("Error: deleteCategoryMap")}},onfailure:function(){BX.debug("onfailure: deleteCategoryMap")}})},getCategoryChildren:function(e,a){var t=e.value,i=BX("SALE_EBAY_CATEGORY_ID");i.value=t;if(!t){BX.Sale.EbayCategories.hideVariations();return}BX.Sale.EbayCategories.deleteChildrenCategoriesSelects(e);var r={ebayCategoryId:t,action:"get_category_children",sessid:BX.bitrix_sessid()};BX.showWait();BX.ajax({data:r,method:"POST",dataType:"json",url:BX.Sale.EbayCategories.ajaxUrl,onsuccess:function(t){BX.closeWait();if(t){if(!t.ERROR){if(t.CATEGORY_CHILDREN){var i=BX.Sale.EbayCategories.createChildCategorySelect(t.CATEGORY_CHILDREN,a+1);var r=BX.create("DIV",{style:{"padding-top":"10px"}});r.appendChild(i);e.parentElement.parentElement.appendChild(r)}BX.Sale.EbayCategories.getVariations(e)}else{BX.debug(t.ERROR)}}else{BX.debug("Error: getCategoryChildren")}},onfailure:function(){BX.debug("onfailure: getCategoryChildren")}})}}})(window);