var url = '';
var path_id='0;';
var path_arr=new Array();

//var path_str='';
//var path = '';
var Categs = new Array();

//declare class
req = new JSHttpRequest('req');
//disable xmlhttprequest object
//req.disableXMLHttp();
//init handler
req.setHandler(loadCompleted);

function loadData(params)
{
	var new_url = url;
	if(params)
		new_url += '?'+params;
	req.open(new_url);
}

function loadCompleted()
{
	var data = req.getText();
	eval(data);	
	showBreadcrumb();
	showCategs(path_id);
	window.status = 'data loaded';
}

function loadSubDirs(dir_id)
{
	var cat_field = document.getElementById('category_field');
	cat_field.value = dir_id;
	var params = 'categ_id='+dir_id;
	loadData(params);
}

function showBreadcrumb()
{
	var breadcrumb = document.getElementById("dyn_bc");
	var bc_txt;

	if(path_arr[0][1] != '')
		bc_txt = '<a href="javascript:void(0)" onClick="reduce('+path_arr.length+');loadSubDirs(0)">Root Categories</a>';
	else
		bc_txt = 'Root Categories';
	var i=0;
	for (i; i<path_arr.length-1; i++)
	{
		bc_txt += ' &gt;&gt; <a href="javascript:void(0)" onClick="reduce('+(i+1)+');loadSubDirs('+path_arr[i][0]+')">'+path_arr[i][2].toString().replace(/\\/g, '')+'</a>';
	}
	if(path_arr[i][1]!='')
		bc_txt += ' &gt;&gt; '+path_arr[i][2];
	breadcrumb.innerHTML = bc_txt;
}

function showCategs(path_id)
{
	var categs_box = document.getElementById("dyn_categs");	
	categs_box.innerHTML = '';

	for (var i=0; i<Categs.length; i++)
	{
		categs_box.innerHTML += '<div class="dynamic_categ"><a href="javascript:void(0)" onClick="add(\''+(Categs[i].toString()).replace(/\'/g, '\\\'')+'\');loadSubDirs('+Categs[i][0]+');">'+Categs[i][2]+'</a></div>';//.toString().replace(/\\/g, '')
	}
	categs_box.innerHTML += '<div style="clear:both"></div>';
}

function add(element)
{
	var tmp = element.split(',');
	tmp[2] = categ_url(tmp[2]);
	if(path_arr[0][1]=='')
	{	
		path_arr[0] = tmp;
	}
	else
	{
		path_arr.push(tmp);
	}
}

function reduce(num)
{
	var lgt = path_arr.length - num;
	if (lgt>0)
	{
		for(var i=0;i<lgt;i++)
			path_arr.pop();
	}
	else
	{
		path_arr= new Array();
		path_arr[0] = Array('0', '', '0');
	}
}

function categ_url(url)
{
	url = url.replace(/_/, ' ');
	url = url.replace(/ and /, ' & ');
	url = url.replace(/\\/, '');
	return url;
}
