init=function(){

			var sorts		= dojo.query('select.sort');
			var compare 	= dojo.query('a.button-silver');
			var covers		= dojo.query('div.coverImg');
			var viewMores	= dojo.query('a.buttoni-blue');
			var language 	= "";
			//document.currencycodeSelect.language.value;
			if(dojo.byId('currentLanguage')) language = dojo.byId('currentLanguage').innerHTML;
			
			//set the default value on the lists, if a new sort option was selected (WORKING)
			if(window.location.href.indexOf("&sortoption=lowestRate") != -1){
				//try{console.log(window.location.href.indexOf("&sortoption=lowestRate"));}catch(err){}
				sorts[0].selectedIndex = 1;
				sorts[1].selectedIndex = 1;
			}
			if(window.location.href.indexOf("&sortoption=distance") != -1){
				//try{console.log(window.location.href.indexOf("&sortoption=distance"));}catch(err){}
				sorts[0].selectedIndex = 2;
				sorts[1].selectedIndex = 2;
			}
			
			//make connections to the silver buttons and sort lists (WORKING)
			for(i=0; i<compare.length; i++){
				dojo.connect(compare[i], 'onclick', function(){
					var inputs = dojo.query('input.compare');
					var string = "?";
					var amount = 0;
					var key = '';
					for(j=0; j<inputs.length; j++){
						if(inputs[j].checked == true){
							//try{console.log(inputs[j]);}catch(err){}
							amount++;
							string+="hotel"+amount+"="+inputs[j].className.substring(8)+"&";
							key+=inputs[j].className.substring(8);
							//try{console.log(string);}catch(err){}
						}
					}
					string += "hotelAmount="+amount;
					var height = 500;
					var width = 465;
					if(amount == 3) width = 685;
					if(amount == 4) width = 900;
					if(amount >=2 && amount <5){
						//window.location.href = "/radisson/radisson-booking/compareHotels.jsp"+string;
						//overlay.display("{id:'"+key+"',url:'"+"/radisson/radisson-booking/compareHotels.jsp"+string+"',width:560,height:"+height+"}");
						overlay.display("{id:'"+key+"',url:'/cs/radisson-booking/compareHotels.jsp"+string+"&language="+language+"',width:"+width+",height:"+height+"}");
					}else{
						alert(dojo.byId('compareError').innerHTML);
						window.scrollTo(0,0);
					}
					
				});
				dojo.connect(sorts[i], 'onchange', function(){
					var sort = this.options[this.selectedIndex].value;
					var s = window.location.href;
					if(s.indexOf("&sortoption=") != -1){
						s = s.replace(/&sortoption=/gi, "");
						if(s.indexOf("lowestRate") != -1){
						   s = s.replace(/lowestRate/gi, "");
						}
						if(s.indexOf("distance") != -1){
							s = s.replace(/distance/gi, "");
						}
					}
					window.location.href = s+"&sortoption="+sort;
				});
			}
			for(i=0; i<viewMores.length; i++){
				dojo.connect(viewMores[i], 'onclick', function(){
					var hotelNr 	= parseInt(this.id.replace(/viewMore/, ""));
					var tableName	= "table"+hotelNr;
					//get the two rate tables for this hotel
					var tables 		= dojo.query('table.'+tableName);
					//try{console.log(tables);}catch(err){}
					if(tables != null && tables.length > 0){
						if(dojo.hasClass(this, 'show')){
							dojo.removeClass(this, 'show');
							dojo.addClass(this, 'hide');
							this.firstChild.innerHTML = dojo.byId('hideTxt').innerHTML;
							for(j=0; j<tables.length; j++){
								var trs = dojo.query('table#'+tables[j].id+' tr.rateRow');
								for(k=0; k<trs.length; k++){
									//try{console.log(trs[k]);}catch(err){}
									if(trs[k].style.display == "none")trs[k].style.display = "";
								}
							}
						}else{
							dojo.removeClass(this, 'hide');
							dojo.addClass(this, 'show');
							this.firstChild.innerHTML = dojo.byId('showTxt').innerHTML;
							for(j=0; j<tables.length; j++){
								var trs = dojo.query('table#'+tables[j].id+' tr.rateRow');
								for(k=trs.length; k > 4; k--){
									//try{console.log(trs[k]);}catch(err){}
									if(trs[k-1].style.display == "")trs[k-1].style.display = "none";
								}
							}
						}
					}
				});
			}
			//make connections to the hotels
			//we use this loop to address all connections to all hotels one hotel at a time, since each hotel has only 1 compare link, allowing us to practically loop hotels through this
			for(hotelIndex=0; hotelIndex<covers.length; hotelIndex++){
				//connect all the roomDescription links (WORKING)
				dojo.query('td.hotel'+hotelIndex+' a').forEach(function(n){
					//console.log(n);
					dojo.connect(n, 'onclick', function(){
						var className	= n.className;
						//console.log('className: '+className);
						var hotelNr 	= parseInt(n.className.replace(/button-blue-arrow roomDesc hotel/, ""));
						//console.log('hotelNr: '+hotelNr);
						var s			= "";
						var rateType	= "";
						if(n.id.indexOf('Primary') > -1){
							rateType	= "Primary";
							s			= "descriptionToggle"+rateType+hotelNr+"-";
							//s			= "descriptionToggle"+hotelNr+"-";
						}else{
							rateType	= "Secondary";
							s			= "descriptionToggle"+rateType+hotelNr+"-";
							//s			= "descriptionToggle"+hotelNr+"-";
						}
						//console.log('rateType: '+rateType);
						//console.log('s: '+s);
						var rateNr  	= parseInt(n.id.replace(s, ""));
						//console.log('rateNr: '+rateNr);
						var description = dojo.query('div.rd'+rateType+hotelNr+'-'+rateNr);
						//var description = dojo.query('div.rd'+hotelNr+'-'+rateNr);
						//console.log(description);
						var a			= dojo.query('td.hotel'+hotelNr+' a');
						//console.log(a);
						var offsetY		= 10;			
						for(i=a.length; i>(a.length-rateNr-1); i--){//For some reason, this list is constructed in reverse order, so iterate backwards
							//console.log(a[i-1].parentNode.clientHeight);
							offsetY += a[i-1].parentNode.clientHeight;
						}
						//console.log(description);
						//console.log(offsetY);
						description[0].style.display = "block";
						description[0].style.top	 = ""+offsetY+"px";
					});
				});
				//connect all the close links in the roomDescription popups (WORKING)
				dojo.query('p.c'+hotelIndex).forEach(function(n){
						dojo.connect(n, 'onclick', function(){
							n.parentNode.parentNode.parentNode.style.display = "none";
						});
					});
				//Toggles
				//onclick handler for the cover images that replace the compare checkboxes (WORKING)
				dojo.connect(covers[hotelIndex], 'onclick', function(){
					var index = parseInt(this.id.replace(/compareCover/, ""));
					//try{console.log(index);}catch(err){}
					if(dojo.byId('compareCover'+index).className=="coverImg"){
						dojo.byId('compareCover'+index).className="coverImg selected";
						dojo.byId('compare'+index).click();
					}else{
						dojo.byId('compareCover'+index).className="coverImg";
						dojo.byId('compare'+index).click();
					}
				});
			}		
		}
		addtoFavs=function(hotel){
			dojo.xhrGet({
				url: "/cs/radisson-booking/favorite_hotels/addHotelToFavorite.jsp?favhotelcode="+hotel,
				sync:false,
				handleAs: "json",
		    	load: function(response, ioArgs){
					if(response.outcome == "success"){
						alert('hotel added successfully');
					}
					var tag = new common.Tag(pTag.options, pTag.scope);
					tag.setPagename(pTag.pageName+'>favs>add');
					tag.tag();
				}

			});
		}
