/* 
    WorldCasinoDirectory common UI class
    UI.js
    All rights reserved.
    
    contains
	    WCD.UI.miniTabs
	    WCD.UI.contTabs
	    WCD.UI.halfMoonTabs
*/

/*extern WCD, Ext */

// first, declare the namespace if it does not exist
if (WCD == null || typeof(WCD) != "object") { var WCD = {}; }

WCD.UI = {};

WCD.UI.miniTabs = {};

//WCD.UI.miniTabs.getObject
WCD.UI.miniTabs.getObject = function(objName){
	if(document.getElementById){
		return eval('document.getElementById("' + objName + '")');
	}else if(document.layers){
		return eval("document.layers['" + objName +"']");
	}else{
		return eval('document.all.' + objName);
	}
};

//miniTabs
WCD.UI.miniTabs.miniTabs = function(index,f){
	for(var i=0;i<4;i++){ 
		if(WCD.UI.miniTabs.getObject("miniTabsBlock"+i)&&WCD.UI.miniTabs.getObject("miniTabs"+i)){
			WCD.UI.miniTabs.getObject("miniTabsBlock"+i).style.display = 'none';
			WCD.UI.miniTabs.getObject("miniTabs"+i).className = "miniTabOff";
		}
	}
	if(WCD.UI.miniTabs.getObject("miniTabsBlock"+index)&&WCD.UI.miniTabs.getObject("miniTabs"+index)){
		WCD.UI.miniTabs.getObject("miniTabsBlock"+index).style.display = 'block';
		WCD.UI.miniTabs.getObject("miniTabs"+index).className = "miniTabOn";
	}
};

//contTabs
WCD.UI.miniTabs.contTabs = function(index,f){
	for(var i=0;i<14;i++){ 
		if(WCD.UI.miniTabs.getObject("contTabsBlock"+i)&&WCD.UI.miniTabs.getObject("contTabs"+i)){
			WCD.UI.miniTabs.getObject("contTabsBlock"+i).style.display = 'none';
			WCD.UI.miniTabs.getObject("contTabs"+i).className = "contTabOff";
		}
	}
	if(WCD.UI.miniTabs.getObject("contTabsBlock"+index)&&WCD.UI.miniTabs.getObject("contTabs"+index)){
		WCD.UI.miniTabs.getObject("contTabsBlock"+index).style.display = 'block';
		WCD.UI.miniTabs.getObject("contTabs"+index).className = "contTabOn";
	}
};


/*
WCD.UI.halfMoonTabs = {};

// these functions take care of the tabs for casino/hotel profiles
WCD.UI.halfMoonTabs.hideTabbedContent = function () {
	var tabNames = [
		'propertyOverview',
		'propertyPhotos',
		'propertyMapsAndDirections',
		'propertyBook',
		'propertyReviews'		
	];

	for ( tabName in tabNames ) {
		if(typeof(tabNames[tabName]) !== 'function') {
			var el = Ext.get(tabNames[tabName]);
			if(el) {
				el.dom.style.display = 'none';
			}
		}
	}
};

WCD.UI.halfMoonTabs.showTab = function (tabid) {
	WCD.UI.halfMoonTabs.hideTabbedContent();
	var el = Ext.get(tabid);
	if(el) {
		el.dom.style.display = 'block';
	}
};*/


/*
var WCD.UI.halfMoonTabs = function () {
	return {
		
		// these functions take care of the tabs for casino/hotel profiles
		WCD.UI.halfMoonTabs.hideTabbedContent = function () {
			var tabNames = [
				'propertyOverview',
				'propertyPhotos',
				'propertyMapsAndDirections',
				'propertyBook',
				'propertyReviews'
			];
		
			for ( tabName in tabNames ) {
				var el = Ext.get(tabName);
				if(el) {
					el.dom.style.display = 'none';
				}
			}
		};
		
		WCD.UI.halfMoonTabs.showTab = function (tabid) {
			WCD.UI.halfMoonTabs.hideTabbedContent();
			var el = Ext.get(tabid);
			if(el) {
				el.dom.style.display = 'block';
			}
		};
	}();
};
*/





//WCD.UI.halfMoonTabsNew = {};

// these functions take care of the tabs for casino/hotel profiles
WCD.UI.halfMoonTabs = function(tabNames) {

	function hideTabbedContent () {

		for ( tabName in tabNames ) {
			if(typeof(tabNames[tabName]) !== 'function') {
				var el = Ext.get(tabNames[tabName]);
				if(el) {
					el.dom.style.display = 'none';
				}
			}
		}

	}
	
	var showTab = function (tabid) {
		hideTabbedContent();
		var el = Ext.get(tabid);
		if(el) {
			el.dom.style.display = 'block';
		}
	};
	
	return showTab;
	
};






WCD.UI.popup = function(){
    // define some private variables
    var dialog, showBtn;
    
    // return a public interface
    return {
        init : function(){
	    var pictureAnchors = Ext.query('a[rel=wcdPopup]');
             for(a in pictureAnchors) {
		     if(typeof(a) !== 'function') {
			     showBtn = Ext.get();
			     
			     // attach to click event
			     showBtn.on('click', this.showDialog, this);
			     alert(a);
			}
		}
        },
       
        showDialog : function(){
            if(!dialog){ // lazy initialize the dialog and only create it once
                dialog = new Ext.BasicDialog("hello-dlg", { 
                        autoTabs:true,
                        width:500,
                        height:300,
                        shadow:true,
                        minWidth:300,
                        minHeight:250,
                        proxyDrag: true
                });
                dialog.addKeyListener(27, dialog.hide, dialog);
                dialog.addButton('Submit', dialog.hide, dialog).disable();
                dialog.addButton('Close', dialog.hide, dialog);
            }
            dialog.show(showBtn.dom);
        }
    };
}();



WCD.UI.installSearchEngine = function() {
	createCookie('wcd_searchInstall','hide','365');
	if (window.external && ("AddSearchProvider" in window.external)) {
	// Firefox 2 and IE 7, OpenSearch
	window.external.AddSearchProvider("http://www.worldcasinodirectory.com/xml/opensearch.xml");
	}
	Ext.fly('opensearch_pointer').dom.style.display = 'none'; //hide();
}


WCD.UI.popPicture = function (N, h, w){
	window.open(N,'popD', 'toolbar=no,menubar=no,resizable=yes,scrollbars=no,status=no,location=no, width='+w+', height='+h);
}

