var prdBaseId=1;var businessBaseId=2;var smkeywordBaseId=5;var ProductCategories=new Object();var BusinessCategories=new Object();var ShowroomCategories=new Object();var CategoriesHash=new Hash();CategoriesHash.set(prdBaseId,ProductCategories);CategoriesHash.set(businessBaseId,BusinessCategories);CategoriesHash.set(smkeywordBaseId,ShowroomCategories);var TreeSelectedElement=new Array();var TreeSelectedQueue=new Hash();var FetchType=0;var TreeNodeSaveAsBox=null;var TreeNodeDisplayAsTree=null;function OpenProductCategoryTree(g,h){FetchType=0;TreeSelectedElement=new Array();TreeSelectedQueue=new Hash();if(g.value!=""){var e=g.value.split(",");for(var f=0;f<e.length;f++){if(!isNaN(parseInt(e[f]))){TreeSelectedQueue.set(parseInt(e[f]),"true")}}TreeNodeCacheTree(g.value.split(","),function(){TreeNodeRemoveHasChildNode();TreeNodeExpandSelectedTree();GenerateBasicStructure(JsLabel["js.SelectTree.ProductCategories.Title.Text"],JsLabel["js.SelectTree.ProductCategories.Select.Text"]);TreefetchMainCat();TreeNodeGenerateSelectedNodes()})}else{GenerateBasicStructure(JsLabel["js.SelectTree.ProductCategories.Title.Text"],JsLabel["js.SelectTree.ProductCategories.Select.Text"]);TreefetchMainCat()}TreeNodeSaveAsBox=g;TreeNodeDisplayAsTree=h}function OpenKeywordTree(g,h){FetchType=1;TreeSelectedElement=new Array();TreeSelectedQueue=new Hash();if(g.value!=""){var e=g.value.split(",");for(var f=0;f<e.length;f++){if(!isNaN(parseInt(e[f]))){TreeSelectedQueue.set(parseInt(e[f]),"true")}}TreeNodeCacheTree(g.value.split(","),function(){TreeNodeRemoveHasChildNode();TreeNodeExpandSelectedTree();GenerateBasicStructure(JsLabel["js.SelectTree.KeywordTags.Title.Text"],JsLabel["js.SelectTree.KeywordTags.Select.Text"]);TreefetchMainCat(smkeywordBaseId);TreeNodeGenerateSelectedNodes()})}else{GenerateBasicStructure(JsLabel["js.SelectTree.KeywordTags.Title.Text"],JsLabel["js.SelectTree.KeywordTags.Select.Text"]);TreefetchMainCat(smkeywordBaseId)}TreeNodeSaveAsBox=g;TreeNodeDisplayAsTree=h}function OpenBusinessAndProdctTree(g,h){FetchType=2;TreeSelectedElement=new Array();TreeSelectedQueue=new Hash();if(g.value!=""){var e=g.value.split(",");for(var f=0;f<e.length;f++){if(e[f].indexOf("_")==-1){if(!isNaN(parseInt(e[f]))){TreeSelectedQueue.set(e[f],"true")}}else{TreeSelectedQueue.set(e[f],"true")}}TreeNodeCacheTree(g.value.split(","),function(){TreeNodeRemoveHasChildNode();TreeNodeExpandSelectedTree();GenerateBasicStructure(JsLabel["js.SelectTree.BusinessNaturePrdCat.Title.Text"],JsLabel["js.SelectTree.BusinessNaturePrdCat.Select.Text"]);TreefetchMainCat(businessBaseId);TreeNodeGenerateSelectedNodes()})}else{GenerateBasicStructure(JsLabel["js.SelectTree.BusinessNaturePrdCat.Title.Text"],JsLabel["js.SelectTree.BusinessNaturePrdCat.Select.Text"]);TreefetchMainCat(businessBaseId)}TreeNodeSaveAsBox=g;TreeNodeDisplayAsTree=h}var TreeNodeCBChangeStatus=false;function TreeNodeCheckAll(i,j){var k="";if(j!=null&&i!=j){k=j+"_"}TreeNodeCBChangeStatus=!$("SubTreeNode_CB_"+k+i).hasClassName("checked");if(TreeNodeCBChangeStatus){TreeNodeUpdateStatus(k+i,0)}else{TreeNodeUpdateStatus(k+i,1)}FetchChild(i,function(b,a){TreeNodeCheckAllCB(b,a,j)});var l=CategoriesHash.get(i).parent;while(l!=null&&$("SubTreeNode_CB_"+k+l.id)!=null){var g=true;var h=true;$("SubTreeNode_"+k+l.id).select("ul .checkbox").each(function(b){var a=TreeSelectedElement[parseInt(b.readAttribute("fid"))]=="True";if(a&&h){h=false}else{if(!a&&g){g=false}}});if(g){TreeNodeUpdateStatus(k+l.id,0)}else{if(!g&&!h){TreeNodeUpdateStatus(k+l.id,2)}else{TreeNodeUpdateStatus(k+l.id,1)}}l=l.parent}}function TreeNodeCheckAll_Recur(f,d){var e="";if(d!=null&&f!=d){e=d+"_"}TreeNodeUpdateStatus(e+f,TreeNodeCBChangeStatus?0:1);FetchChild(f,function(b,a){TreeNodeCheckAllCB(b,a,d)})}function TreeNodeCheckAllCB(h,j,i){if(j.length>0){ExpandTree(h,i);TreeBuildSubCat(h,j,i);for(var g=0;g<j.length;g++){TreeNodeCheckAll_Recur(j[g].id,i)}}else{var f="";if(i!=null&&h!=i){f=i+"_"}if(TreeNodeCBChangeStatus){TreeSelectedQueue.set(f+h,"true")}else{TreeSelectedQueue.unset(f+h)}TreeNodeGenerateSelectedNodes()}}function TreeNodeDeselectSelected(){$("SelectedCat").select("input").each(function(b){if(b.checked){if(b.value.indexOf("_")==-1){TreeSelectedQueue.unset(parseInt(b.value))}else{TreeSelectedQueue.unset(b.value)}}});TreeNodeExpandSelectedTree();FetchChild(parseInt($("TreeMainCat").select(".selected")[0].readAttribute("fid")),TreeBuildSubCat);TreeNodeGenerateSelectedNodes()}function TreeNodeExpandSelectedTree(){var p=TreeSelectedQueue.keys();TreeSelectedElement=new Array();for(var n=0;n<p.length;n++){var l=p[n].indexOf("_");if(l>-1){var m=p[n].substring(0,l);var i=p[n].substring(l+1);var k=CategoriesHash.get(parseInt(m));var j=CategoriesHash.get(parseInt(i));while(j!=null&&j!=k.prdCatBase){TreeSelectedElement[m+"_"+j.id]="True";j=j.parent}TreeSelectedElement[m]="True"}else{var o=CategoriesHash.get(p[n]);TreeSelectedElement[o.id]="True";node=o.parent;while(node!=null&&node.id!=null){TreeSelectedElement[node.id]="True";node=node.parent}}}}function TreeNodeGenerateSelectedNodes(){var p=TreeSelectedQueue.keys();$("SelectedCat").innerHTML="";for(var n=0;n<p.length;n++){var l=p[n].indexOf("_");if(l>-1){var m=p[n].substring(0,l);var i=p[n].substring(l+1);var k=CategoriesHash.get(parseInt(m));var j=CategoriesHash.get(parseInt(i));TreeNodeGetSelectedParentElement(j,m,k.prdCatBase)}else{var o=CategoriesHash.get(p[n]);TreeNodeGetSelectedParentElement(o)}}}function TreeNodeGetSelectedParentElement(l,i,j){var k="";if(i!=null&&j!=null){k=i+"_"}if($("SelectedTreeNode_"+k+l.id)!=null){return $("SelectedTreeNode_"+k+l.id)}else{var n='<li id="SelectedTreeNode_'+k+l.id+'">';if(i==l.id||l.child>0){n+='<div class="text">'+l.code+"</div>";n+="<ul></ul>"}else{n+='<div class="text"><input type="checkbox" id="SelectedTreeNode_CB_'+k+l.id+'" value="'+k+l.id+'" />';n+=l.code+"</div>"}n+="</li>";var m=l.parent;if(j!=null&&l.parent==j){m=CategoriesHash.get(i);j=null}if(m==null||m.id==null){$("SelectedCat").insert({bottom:n});return $("SelectedTreeNode_"+k+l.id)}else{var h=TreeNodeGetSelectedParentElement(m,i,j);h.select("ul")[0].insert({bottom:n});return $("SelectedTreeNode_"+k+l.id)}}}var TreeNodeBuildTreeTaskList=new Array();var CurRunning=false;function TreeNodeBuildTree(l,g,h,i){if(CurRunning){TreeNodeBuildTreeTaskList[TreeNodeBuildTreeTaskList.length]=[l,g,h,i]}else{CurRunning=true;var j=h.split(",");$(l).innerHTML="";TreeSelectedQueue=new Hash();for(var k=0;k<j.length;k++){if(j[k].indexOf("_")==-1){if(!isNaN(parseInt(j[k]))){TreeSelectedQueue.set(parseInt(j[k]),"true")}}else{TreeSelectedQueue.set(j[k],"true")}}TreeNodeCacheTree(j,function(){TreeNodeExpandSelectedTree();TreeNodeRemoveHasChildNode();var r=TreeSelectedQueue.keys();for(var q=0;q<r.length;q++){var e=r[q].indexOf("_");if(e>-1){var s=r[q].substring(0,e);var f=r[q].substring(e+1);var c=CategoriesHash.get(parseInt(s));var b=CategoriesHash.get(parseInt(f));TreeNodeBuildTreeText(l,g,b,s,c.prdCatBase)}else{var d=CategoriesHash.get(r[q]);TreeNodeBuildTreeText(l,g,d)}}if(i!=null){i()}CurRunning=false;if(TreeNodeBuildTreeTaskList.length>0){var a=TreeNodeBuildTreeTaskList[0];TreeNodeBuildTreeTaskList.splice(0,1);TreeNodeBuildTree(a[0],a[1],a[2],a[3])}})}}function TreeNodeRemoveHasChildNode(){var p=TreeSelectedQueue.keys();for(var n=0;n<p.length;n++){var l=p[n].indexOf("_");if(l>-1){var m=p[n].substring(0,l);var i=p[n].substring(l+1);var k=CategoriesHash.get(parseInt(m));var j=CategoriesHash.get(parseInt(i));if(j.child!=0){TreeSelectedQueue.unset(p[n])}}else{var o=CategoriesHash.get(p[n]);if(o.child!=0){TreeSelectedQueue.unset(p[n])}}}}function TreeNodeBuildTreeText(m,k,q,r,l){var n="";if(r!=null&&l!=null){n=r+"_"}if($(k+n+q.id)!=null){return $(k+n+q.id)}else{var o='<li id="'+k+n+q.id+'">';if(r==q.id||q.child>0){o+='<div class="text">'+q.code+"</div>";o+="<ul></ul>"}else{o+='<div class="text">'+q.code+"</div>"}o+="</li>";var j=q.parent;if(l!=null&&q.parent==l){j=CategoriesHash.get(r);l=null}if(j==null||j.id==null){$(m).insert({bottom:o});return $(k+n+q.id)}else{var p=TreeNodeBuildTreeText(m,k,j,r,l);p.select("ul")[0].insert({bottom:o});return $(k+n+q.id)}}}function FetchFullPaths(d,c){new Ajax.Request("/TagTreeService.aspx",{method:"get",parameters:{action:"fetchfullpath",id:d,lang:info.lang},onSuccess:function(e){try{var a=e.responseText;c(d,a.evalJSON(true))}catch(b){}}})}function FetchChild(f,d){var e=CategoriesHash.get(f);if(e!=null&&e.Childs!=null&&e.child==e.Childs.length){d(f,e.Childs)}else{new Ajax.Request("/TagTreeService.aspx",{method:"get",parameters:{action:"fetchchild",id:f,lang:info.lang},onSuccess:function(c){try{var a=c.responseText;d(f,a.evalJSON(true))}catch(b){}}})}}function TreeNodeUpdateStatus(d,b){if($("SubTreeNode_CB_"+d)!=null){if(b==0){TreeSelectedElement[d]="True";$("SubTreeNode_CB_"+d).addClassName("checked");$("SubTreeNode_CB_"+d).removeClassName("partial")}else{if(b==1){TreeSelectedElement[d]="False";$("SubTreeNode_CB_"+d).removeClassName("checked");$("SubTreeNode_CB_"+d).removeClassName("partial")}else{TreeSelectedElement[d]="True";$("SubTreeNode_CB_"+d).addClassName("partial");$("SubTreeNode_CB_"+d).removeClassName("checked")}}}}function HideExpandTree(j,l){var m="";if(l!=null&&j!=l){m=l+"_"}var k=$("SubTreeNode_"+m+j).select(".plus.node_"+m+j);var i=$("SubTreeNode_"+m+j).select(".minus.node_"+m+j);if(k.length>0){k.invoke("removeClassName","plus");k.invoke("addClassName","minus");if(l==null){FetchChild(j,TreeBuildSubCat)}else{var n=j;if(j==l){var h=CategoriesHash.get(j);n=h.prdCatBase.id}FetchChild(n,function(b,a){TreeBuildSubCat(b,a,l)})}}if(i.length>0){i.invoke("removeClassName","minus");i.invoke("addClassName","plus");$("SubTreeNode_"+m+j).select("ul")[0].remove()}}function ExpandTree(g,e){var f="";if(e!=null&&g!=e){f=e+"_"}var h=$("SubTreeNode_"+f+g).select(".plus.node_"+f+g);if(h.length>0){h.invoke("removeClassName","plus");h.invoke("addClassName","minus")}}function TreeSave(){$(TreeNodeSaveAsBox).value=TreeSelectedQueue.keys().join(",");TreeNodeBuildTree(TreeNodeDisplayAsTree,$(TreeNodeDisplayAsTree).id+"_",$(TreeNodeSaveAsBox).value);hiddenLightBox()}function TreefetchMainCat(b){if(b==null){b=prdBaseId}FetchChild(b,TreebuildMainCat)}function TreebuildMainCat(h,i){var j=CategoriesHash.get(h);j.Childs=i;var f="<ul>";for(var g=0;g<i.length;g++){i[g].parent=j;CategoriesHash.set(i[g].id,i[g]);f+='<li><a id="MainTreeNode_'+i[g].id+'" href="javascript:TreefetchSubCat('+i[g].id+')" fid="'+i[g].id+'">'+i[g].code+"</a></li>"}f+="</ul>";$("TreeMainCat").innerHTML=f;if(i.length>0){TreefetchSubCat(i[0].id)}}function GenerateBasicStructure(e,f){var d='<table width="900" border="0" class="TagTree"><tr>';d+='<td style="height: 414px; width: 695px;" class="PickPanel"><table width="100%" cellpadding="0" cellspacing="0"><tr><td class="subHeader" colspan="2">'+e+'</td></tr><tr><td class="lpanel"><div id="TreeMainCat"></div></td><td class="rpanel"><div id="TreeSubCat" class="availableTree"></div></td></tr></table></td>';d+='<td style="width: 205px" class="SelectedPanel"><table width="100%" cellpadding="0" cellspacing="0"><tr><td class="subHeader">'+f+'</td></tr><tr><td class="selectedPanel1"><div class="selectedPanel2" id="SelectedCatPlaceHolder"><ul id="SelectedCat" class="PrdTree"></ul></div></td></tr><tr><td class="deselectPanel"><div class="btn" onclick="TreeNodeDeselectSelected()">'+JsLabel["js.SelectTree.Button.Deselect.Text"]+"</div></td></tr></table></td></tr>";d+='<tr><td style="height: 33px" colspan="2" class="pfoot"><div class="btn blue-button" id="tagTreeSubmit" onclick="TreeSave()">'+JsLabel["js.SelectTree.Button.Submit.Text"]+'</div><div class="btn blue-button" onclick="hiddenLightBox()">'+JsLabel["js.SelectTree.Button.Close.Text"]+"</div></td></tr></table>";displayLightBox(e,d,931)}function TreefetchSubCat(b){$("TreeMainCat").select("a").invoke("removeClassName","selected");$("MainTreeNode_"+b).addClassName("selected");FetchChild(b,TreefetchSubCat_Pos)}function TreefetchSubCat_Pos(f,d){var e=CategoriesHash.get(f);e.Childs=d;if(FetchType==2&&e.parent==BusinessCategories){FetchChild(prdBaseId,function(j,b){var i=CategoriesHash.get(j);i.Childs=b;for(var c=0;c<b.length;c++){b[c].parent=i;CategoriesHash.set(b[c].id,b[c])}var a=TreeNodeBFSLocateNodeId(ProductCategories.Childs,e.nodeid);for(var c=0;c<d.length;c++){d[c].prdCatBase=a}TreeBuildSubCat(f,d)})}else{TreeBuildSubCat(f,d)}}function TreeBuildSubCat(t,p,o){var r=CategoriesHash.get(t);r.Childs=p;var n="<ul>";var i=new Array();var m="";var l="";if(o!=null){m=o+"_";l=", "+o}for(var q=0;q<p.length;q++){p[q].parent=r;CategoriesHash.set(p[q].id,p[q]);n+='<li id="SubTreeNode_'+m+p[q].id+'">';if(o!=null&&p[q].child>0){n+='<a onclick="HideExpandTree('+p[q].id+", "+o+')" href="javascript: void(0)" class="plus node_'+m+p[q].id+'">&nbsp;</a>'}else{if((p[q].prdCatBase!=null&&p[q].prdCatBase.child>0)){n+='<a onclick="HideExpandTree('+p[q].id+", "+p[q].id+')" href="javascript: void(0)" class="plus node_'+p[q].id+'">&nbsp;</a>'}else{if(p[q].child>0){n+='<a onclick="HideExpandTree('+p[q].id+')" href="javascript: void(0)" class="plus node_'+m+p[q].id+'">&nbsp;</a>'}}}var s="";if(TreeSelectedElement[m+p[q].id]=="True"){s='checked"'}if(p[q].prdCatBase==null){n+='<div class="checkbox node_'+m+p[q].id+" "+s+'" id="SubTreeNode_CB_'+m+p[q].id+'" onclick="TreeNodeCheckAll('+p[q].id+l+')" fid="'+m+p[q].id+'">&nbsp;</div>'}if((p[q].prdCatBase!=null&&p[q].prdCatBase.child>0)){n+='<a href="javascript:HideExpandTree('+p[q].id+", "+p[q].id+')" class="node_'+m+p[q].id+'">'+p[q].code+"</a>";if(s!=""){i[i.length]=[p[q].id,p[q].id]}}else{if(p[q].child>0){n+='<a href="javascript:HideExpandTree('+p[q].id+l+')" class="node_'+m+p[q].id+'">'+p[q].code+"</a>";if(s!=""){i[i.length]=[p[q].id,o]}}else{n+=p[q].code}}n+="</li>"}n+="</ul>";if($("SubTreeNode_"+m+t)!=null){if($("SubTreeNode_"+m+t).select("ul").length>0){$("SubTreeNode_"+m+t).select("ul")[0].remove()}$("SubTreeNode_"+m+t).insert({bottom:n})}else{if(o!=null&&$("SubTreeNode_"+o)!=null){if($("SubTreeNode_"+o).select("ul").length>0){$("SubTreeNode_"+o).select("ul")[0].remove()}$("SubTreeNode_"+o).insert({bottom:n})}else{$("TreeSubCat").innerHTML=n}}for(var q=0;q<i.length;q++){HideExpandTree(i[q][0],i[q][1])}}function TreeNodeCacheTree(m,i){var o=new Hash();var q=new Hash();for(var t=0;t<m.length;t++){var r=m[t].indexOf("_");if(r>-1){var v=m[t].substring(0,r);var s=m[t].substring(r+1);var p=CategoriesHash.get(parseInt(v));var n=CategoriesHash.get(parseInt(s));if(p==null){q.set(v,"1")}if(n==null){o.set(s,"1")}}else{if(!isNaN(parseInt(m[t]))&&CategoriesHash.get(parseInt(m[t]))==null){o.set(m[t],"1")}}}if(o.keys().length>0||q.keys().length>0){if(o.keys().length>0){FetchFullPaths(o.keys().join(","),function(a,c){TreeNodecacheObject(c);var b=q.keys();if(b.length>0){FetchFullPaths(b.join(","),function(j,e){TreeNodecacheObject(e);for(var g=0;g<b.length;g++){var h=CategoriesHash.get(b[g]);var f=h.parent;var d=TreeNodeBFSLocateNodeId(ProductCategories.Childs,f.nodeid);h.prdCatBase=d}i()})}else{i()}})}else{var u=q.keys();FetchFullPaths(u.join(","),function(a,c){TreeNodecacheObject(c);for(var e=0;e<u.length;e++){var f=CategoriesHash.get(u[e]);var d=f.parent;var b=TreeNodeBFSLocateNodeId(ProductCategories.Childs,d.nodeid);f.prdCatBase=b}i()})}}else{i()}}function TreeNodecacheObject(j){for(var m=0;m<j.length;m++){var k=CategoriesHash.get(j[m].id);if(k==null){var l=CategoriesHash.get(j[m].parentId);if(l.Childs==null){l.Childs=new Array()}l.Childs[l.Childs.length]=j[m];j[m].parent=l;CategoriesHash.set(j[m].id,j[m])}else{for(var h=0;h<j[m].Childs.length;h++){var i=false;for(var n=0;n<k.Childs.length;n++){if(k.Childs[n].id==j[m].Childs[h].id){i=true}}if(!i){k.Childs[k.Childs.length]=j[m].Childs[h];j[m].Childs[h].parent=k}}}TreeNodecacheObject(j[m].Childs)}}function TreeNodeBFSLocateNodeId(h,i){var j=new Array();for(var l=0;l<h.length;l++){var k=h[l];if(k.nodeid!=null&&k.nodeid==i){return k}else{for(var g=0;g<k.Childs.length;g++){j[j.length]=k.Childs[g]}}}return TreeNodeBFSLocateNodeId(j,i)};
