/**
 * @author Sammani,<sammani@proporta.com>
 *
 * This code is handle the fornt end menu.Categories are taken from db and used mencache.
 *
 * more class for device 	= device_menu_item_more
 * more class for model		= model_menu_item_more
 * 
 * 
 */
$	= jQuery.noConflict();

_exceptionalLineArray	= new Array();
_loadingImageId		= "loadingImage";

_moreDeviceClass	= "device_menu_item_more";

_menuID			= "menu";
_headerClass		= "root-category";

_imgPath		= _baseURL + "/images/loading.gif";

_previousClickedId	= 0;
_previousClickedCatId	= 0;

jQuery(document).ready(function(){

        loadMenu();	

 });

 function loadMenu()
 {
     jQuery("#" + _menuID + " ." + _headerClass).click(function() {
		clickElem	= jQuery(this);

		jQuery("#" + _menuID + " ." + _headerClass).next().each(function(id){
			if (jQuery(clickElem).html() != jQuery(this).prev().html()) {
				jQuery(this).hide('slow');
			}
		})
		jQuery(this).next().toggle("slide");
		if (clickElem.attr("href") == "")
			return false;

	}).next().hide();

        jQuery(".root-category").each(function(){
		idArr		= jQuery(this).attr("id").split("-");

	});


	jQuery(".device_menu_item").each(function(){
		if (jQuery(this).attr("href") == "") {
			jQuery(this).click(getDeviceList);
		}
	})


 }

function getDeviceList() {
	 
	idArr		= jQuery(this).attr("id").split("-");
	deviceId	= idArr[1];
	catId		= idArr[2];
 
	jQuery("#" + _loadingImageId).remove();
	jQuery(this).prepend("<img id='" + _loadingImageId + "' src='" + _imgPath + "' />");
	getModels(deviceId, catId);	
	return false;
}

function registerMoreDeviceClick(){
	idArr		= jQuery(this).attr("id").split("-");
	id		= idArr[1];
	jQuery("#" + _loadingImageId).remove();
	jQuery(this).prepend("<img id='" + _loadingImageId + "' src='" + _imgPath + "' />");
	getDevices(id);
	return false;
}


function getDevices(catId) {
	
	aNum	= jQuery("#menu_lev2").children().length
	jQuery("#menu_lev2").children().eq(aNum - 1).addClass("ie6-menuFix-lvl2");
	jQuery("#" + _loadingImageId).remove();

	jQuery("." + _moreDeviceClass).click(registerMoreDeviceClick);

 	jQuery(".device_menu_item").each(function(){
		if (jQuery(this).attr("href") == "") {
			jQuery(this).click(getDeviceList);
		}
	})
}

function getModels(deviceId, catId) {

        if (_previousClickedCatId != catId) {
               jQuery("#submenu-"+ _previousClickedId + "-" + _previousClickedCatId).hide();
        }
	if (_previousClickedId == deviceId) {
                
		jQuery("#" + _loadingImageId).remove();
                jQuery(".submenu").slideUp("slow");
		_previousClickedId	= 0;
		return ;
	}
        jQuery("#submenu-"+ _previousClickedId + "-" + catId).slideUp("slow");
        _previousClickedId	= deviceId;
        _previousClickedCatId	= catId;
	jQuery("#" + _loadingImageId).remove();
        jQuery("#submenu-"+ deviceId + "-" + catId).slideDown("slow");

}

function triggerCategoryClick(catId) {
	jQuery("#cat-" + catId).trigger("click");
}

function triggerDeviceClick(deviceId, catId) {
	jQuery("#dev-" + deviceId + "-" + catId).trigger("click");
}

 function setHighlightedCategory(catId) {
	_exceptionalLineArray[catId]	= catId;
}


