﻿var KRZR = {
	util:{}
};

KRZR.util.FormFun = {
	getSelectedRadio: function(buttonGroup){// returns the array number of the selected radio button or -1 if no button is selected
		if (buttonGroup[0]) { // if the button group is an array (one button is not an array)
		  for (var i=0; i<buttonGroup.length; i++) {
			 if (buttonGroup[i].checked) {
				return i
			 }
		  }
	   } else {
		  if (buttonGroup.checked) { return 0; } // if the one button is checked, return zero
	   }
	   // if we get to this point, no radio button is selected
	   return -1;
	},
	getSelectedRadioValue: function(buttonGroup){// returns the value of the selected radio button or "" if no button is selected
		var i = KRZR.util.FormFun.getSelectedRadio(buttonGroup);
	   if (i == -1) {
		  return "";
	   } else {
		  if (buttonGroup[i]) { // Make sure the button group is an array (not just one button)
			 return buttonGroup[i].value;
		  } else { // The button group is just the one button, and it is checked
			 return buttonGroup.value;
		  }
	   }
	},
	getSelectedCheckbox: function(buttonGroup) {
	   // Go through all the check boxes. return an array of all the ones
	   // that are selected (their position numbers). if no boxes were checked,
	   // returned array will be empty (length will be zero)
	   var retArr = new Array();
	   var lastElement = 0;
	   if (buttonGroup[0]) { // if the button group is an array (one check box is not an array)
		  for (var i=0; i<buttonGroup.length; i++) {
			 if (buttonGroup[i].checked) {
				retArr.length = lastElement;
				retArr[lastElement] = i;
				lastElement++;
			 }
		  }
	   } else { // There is only one check box (it's not an array)
		  if (buttonGroup.checked) { // if the one check box is checked
			 retArr.length = lastElement;
			 retArr[lastElement] = 0; // return zero as the only array value
		  }
	   }
	   return retArr;
	},
	getSelectedCheckboxValue: function(buttonGroup) {
	   // return an array of values selected in the check box group. if no boxes
	   // were checked, returned array will be empty (length will be zero)
	   var retArr = new Array(); // set up empty array for the return values
	   var selectedItems = KRZR.util.FormFungetSelectedCheckbox(buttonGroup);
	   if (selectedItems.length != 0) { // if there was something selected
		  retArr.length = selectedItems.length;
		  for (var i=0; i<selectedItems.length; i++) {
			 if (buttonGroup[selectedItems[i]]) { // Make sure it's an array
				retArr[i] = buttonGroup[selectedItems[i]].value;
			 } else { // It's not an array (there's just one check box and it's selected)
				retArr[i] = buttonGroup.value;// return that value
			 }
		  }
	   }
	   return retArr;
	}
};

(function() {
    var Dom = YAHOO.util.Dom,
        Event = YAHOO.util.Event;
	
    Event.onDOMReady(function() {

		KRZR.util.Menu = {}
		KRZR.util.Menu.SubMenu = {};
		
		var subMenu = Dom.getElementsByClassName('sub-menu','ul','site-navigation');
		//alert(subMenu.length);
		if(subMenu.length>0){
			for(var i=0;subMenu[i];i++){
			
				if(subMenu[i].parentNode.tagName.toLowerCase() == 'li'){
					var div = document.createElement('div');
					var parent = subMenu[i].parentNode;
					subMenu[i].style.display = 'block';

					(function(){
						var bd = document.createElement('div');
						bd.className = 'bd';
						bd.appendChild(subMenu[i]);
						div.appendChild(bd);
						var li = div.getElementsByTagName('li');
						var a = div.getElementsByTagName('a');
						for(var ii=0;li[ii];ii++){
							
							li[ii].className = 'yuimenuitem';
							try{
								a[ii].className = 'yuimenuitemlabel';
							}catch(Error){}
						}
					})();
					
					var config = {
						position: 'dynamic',
						context: [parent.getElementsByTagName('a')[0],'tl','bl'],
						hidedelay: 750,
						zIndex: 1000,
						
						lazyLoad: false
					};
					var IE6 = false /*@cc_on || @_jscript_version <= 5.7 @*/;
					if(IE6){
						config.width = 225;
					}
					
					KRZR.util.Menu.SubMenu[i] = new YAHOO.widget.Menu(div,config);
					KRZR.util.Menu.SubMenu[i].subscribe('beforeShow',function(){
						//alert('this');
						this.cfg.context = [this.parentNode.getElementsByTagName('a')[0],'tl','bl'];
						this.render(this.parentNode);
					});
					KRZR.util.Menu.SubMenu[i].render(parent);
					parent.getElementsByTagName('a')[0].setAttribute('sub',i);
					Event.on(parent.getElementsByTagName('a')[0],'mouseover',function(){
						YAHOO.widget.MenuManager.hideVisible();
						KRZR.util.Menu.SubMenuCur = this.getAttribute('sub');
						
						
						KRZR.util.Menu.SubMenu[this.getAttribute('sub')].show();
						
					});
					
				}
			}
			
			var links = Dom.get('site-navigation').getElementsByTagName('a');
			for(var ii=0;links[ii];ii++){
				if(!links[ii].getAttribute('sub') && links[ii].className != 'yuimenuitemlabel'){
					Event.on(links[ii],'mouseover',function(){
						YAHOO.widget.MenuManager.hideVisible();
					});
				}
			}
		}
		
		Event.on('search-box-submit','click',function(){
			window.location.href = '/list.aspx?proptype='+KRZR.util.FormFun.getSelectedRadioValue(document.forms[0].proptype)+
			'&srent='+document.forms[0]['min-rent'].value+'&erent='+document.forms[0]['max-rent'].value+
			'&beds='+document.forms[0].beds.value+
			'&baths='+document.forms[0].baths.value;
			//alert('/list.aspx?proptype='+KRZR.util.FormFun.getSelectedRadioValue(document.forms[0].proptype));
			return false;
		});
		
		
		/*// Layout Manager
        var layout = new YAHOO.widget.Layout('custom-doc', {
            //height: Dom.getClientHeight(), //Height of the viewport
            width: Dom.get('custom-doc').offsetWidth, //Width of the outer element
            minHeight: Dom.getClientHeight(), //So it doesn't get too small
            units: [
                { position: 'top', height: 45, body: 'hd' },
                { position: 'bottom', height: 25, body: 'ft' },
                { position: 'center', body: 'bd', grids: true }
            ]
        });
        layout.on('beforeResize', function() {
            Dom.setStyle('custom-doc', 'min-height', Dom.getClientHeight() + 'px');
        });

        layout.render();

        //Handle the resizing of the window
        Event.on(window, 'resize', layout.resize, layout, true);
        */
    });
})();
