if(typeof(is_ie)!='function'){
	function is_ie() {
		ret = false;
		if ( navigator.appName.toLowerCase() == 'microsoft internet explorer' )
			ret = true;
		return ret;
	}
}

if(typeof(text2xml)!='function'){
	function text2xml(data) {
		if ( is_ie() == 1 ) {
	        var xmldoc=new ActiveXObject("Microsoft.XMLDOM");
	        xmldoc.async="false";
	        xmldoc.loadXML(data);
		} else {
	        var parser=new DOMParser();
	        var xmldoc = parser.parseFromString(data,"text/xml");
		}
		return xmldoc;
	}
}

if(typeof(ajaxRequest)!='function'){
	function ajaxRequest(url) {
		var ret = false;
		if ( is_ie() ) {
			var xmlreq = new ActiveXObject("Msxml2.XMLHTTP");
		} else {
			var xmlreq = new XMLHttpRequest();
		}
			
		xmlreq.open('GET',url, false);
		xmlreq.send('');
		
		if ( xmlreq.status == 200 ) {
			ret = xmlreq.responseText;
		}
		return ret;
	}
}

function createsubmenu(data,item,callbck){
	var childs = data.getElementsByTagName("child");
	var _name;
	var _pk;
	var _havesubcateg;
	var _slug;
	parentItem = item.parentItem;
	
	if(childs.length>0){
        ul_item = document.createElement('ul');
        if(item.pk=='1')
	        ul_item.className='main';
		else
	        ul_item.className='main_thinmargin';
        ul_item.id = 'ul_'+item.pk;
	
        parentItem.appendChild(ul_item);
        
		for(var i=0;i<childs.length;i++){
			_name = childs[i].getElementsByTagName("name")[0].childNodes[0].nodeValue;
			_pk = childs[i].getElementsByTagName("pk")[0].childNodes[0].nodeValue;
			_havesubcateg = childs[i].getElementsByTagName("havesubcateg")[0].childNodes[0].nodeValue;
			_slug = childs[i].getElementsByTagName("slug")[0].childNodes[0].nodeValue;
			
            li_item = document.createElement('li');
            li_item.id = 'li_'+_pk;
	           
	        a_item = document.createElement('a');
	        a_item.pk = _pk;
	        a_item.parentPk = item.pk;
	        a_item.havesubcateg = _havesubcateg;
	        a_item.slug = _slug;
	        a_item.opened = false;
	        a_item.id='a_'+_pk;
	        a_item.onclick=function(){
	        	if(this.opened==true){
	        		if(item.treeview==true){
						var imgitem = document.getElementById('img_'+this.pk);
						imgitem.src = '/media/images/tree_plus.gif';
		        		this.parentNode.removeChild(this.parentNode.childNodes[1]);
	        		}else{
		        		this.parentNode.removeChild(this.parentNode.childNodes[2]);
		        	}
		        	this.opened = false;
	        	}else{
		            if(this.havesubcateg=='True'){
						menuclick({
							'pk':this.pk,
							'parentItem': this.parentNode,
							'havesubmenu':true,
							'slug':this.slug,
							'treeview': item.treeview
						});
					}else{
						menuclick({
							'pk':this.pk,
							'parentItem': this.parentNode,
							'havesubmenu':false,
							'slug':this.slug,
							'treeview': item.treeview
						});
					}
		        	this.opened = true;
		        }
	        }
	        if(item.treeview==true){
	        	imgitem = document.createElement('img');
	        	imgitem.src = '/media/images/tree_plus.gif';
	        	imgitem.style.border = '0px';
	        	imgitem.id = 'img_'+_pk;
		        a_item.appendChild(imgitem);
	        }else{
		        a_item.appendChild(document.createTextNode('» '));
		    }
		
			a2_item = document.createElement('a');
			a2_item.href = '/webshop/browse/'+_slug
			a2_item.appendChild(document.createTextNode(_name));
	        
			li_item.appendChild(a_item);
			li_item.appendChild(a2_item);
            
            ul_item.appendChild(li_item);
		}
	}
	if(typeof(callbck)=='function')
		callbck();
}

function menuclick(item,callbck){
	if(item.havesubmenu==true){
		if(item.treeview==true){
			var imgitem = document.getElementById('img_'+item.pk);
			if(imgitem!=null){
				imgitem.src = '/media/images/tree_minus.gif';
			}
		}
		createsubmenu(text2xml(ajaxRequest('/webshop/treeview/get_children/?parent='+item.pk)),item,callbck);
	}else{
		location.href='/webshop/browse/'+item.slug;
	}
}

function adm_createsubmenu(data,item,callbck){
	var childs = data.getElementsByTagName("child");
	var _name;
	var _pk;
	var _havesubcateg;
	var _slug;
	parentItem = item.parentItem;
	
	if(childs.length>0){
        ul_item = document.createElement('ul');
        if(item.pk=='1')
	        ul_item.className='main';
		else
	        ul_item.className='main_thinmargin';
        ul_item.id = 'ul_'+item.pk;
	
        parentItem.appendChild(ul_item);
        
		for(var i=0;i<childs.length;i++){
			_name = childs[i].getElementsByTagName("name")[0].childNodes[0].nodeValue;
			if(_name=='root')_name='Kategóriák'
			_pk = childs[i].getElementsByTagName("pk")[0].childNodes[0].nodeValue;
			_havesubcateg = childs[i].getElementsByTagName("havesubcateg")[0].childNodes[0].nodeValue;
			_slug = childs[i].getElementsByTagName("slug")[0].childNodes[0].nodeValue;
			
            li_item = document.createElement('li');
            li_item.id = 'li_'+_pk;
	           
	        a_item = document.createElement('a');
	        a_item.pk = _pk;
	        a_item.parentPk = item.pk;
	        a_item.havesubcateg = _havesubcateg;
	        a_item.slug = _slug;
	        a_item.opened = false;
	        a_item.id='a_'+_pk;
	        a_item.onclick=function(){
	        	if(this.opened==true){
	        		if(item.treeview==true){
						var imgitem = document.getElementById('img_'+this.pk);
						imgitem.src = '/media/images/tree_plus.gif';
		        		this.parentNode.removeChild(this.parentNode.childNodes[3]);
	        		}else{
		        		this.parentNode.removeChild(this.parentNode.childNodes[2]);
		        	}
		        	this.opened = false;
	        	}else{
		            if(this.havesubcateg=='True'){
						adm_menuclick({
							'pk':this.pk,
							'parentItem': this.parentNode,
							'havesubmenu':true,
							'slug':this.slug,
							'treeview': item.treeview
						});
			        	this.opened = true;
					}else{
						adm_menuclick({
							'pk':this.pk,
							'parentItem': this.parentNode,
							'havesubmenu':false,
							'slug':this.slug,
							'treeview': item.treeview
						});
					}
		        }
	        }
	        if(item.treeview==true){
	        	imgitem = document.createElement('img');
	        	if(_havesubcateg=='True'){
		        	imgitem.src = '/media/images/tree_plus.gif';
			    }else{
		        	imgitem.src = '/media/images/tree_leaf.gif';
			    }
	        	imgitem.style.marginRight = '5px';
	        	imgitem.style.border = '0px';
	        	imgitem.id = 'img_'+_pk;
		        a_item.appendChild(imgitem);
				
	        }else{
		        a_item.appendChild(document.createTextNode('» '));
		    }

	        a_item.appendChild(document.createTextNode(_name));

	        a_mod_item = document.createElement('a');
	        a_mod_item.href=_pk
			
	        a_mod_img_item = document.createElement('img');
	        a_mod_img_item.src = '/media/images/icon_mod.gif';
	        a_mod_img_item.style.marginLeft = '5px';
	        a_mod_item.appendChild(a_mod_img_item);

	        a_item_item = document.createElement('a');
	        a_item_item.href='/admin/webshop/item/?parent__id__exact='+_pk
			
			if(_name!='Kategóriák' && _name!='Gyártók'){
		        a_item_img_item = document.createElement('img');
		        a_item_img_item.src = '/media/images/icon_search.gif';
		        a_item_img_item.style.marginLeft = '5px';
		        a_item_item.appendChild(a_item_img_item);
		    }

        
			li_item.appendChild(a_item);
			li_item.appendChild(a_mod_item);
			li_item.appendChild(a_item_item);
            
            ul_item.appendChild(li_item);
		}
	}
	if(typeof(callbck)=='function')
		callbck();
}

function adm_menuclick(item,callbck){
	if(item.havesubmenu==true){
		if(item.treeview==true){
			var imgitem = document.getElementById('img_'+item.pk);
			if(imgitem!=null){
				imgitem.src = '/media/images/tree_minus.gif';
			}
		}
		adm_createsubmenu(text2xml(ajaxRequest('/webshop/treeview/get_children/?parent='+item.pk)),item,callbck);
	}else{
		// nincs mit csinalni jajj!
	}
}
