var FlashDetect=new function(){var self=this;self.installed=false;self.raw="";self.major=-1;self.minor=-1;self.revision=-1;self.revisionStr="";var activeXDetectRules=[{"name":"ShockwaveFlash.ShockwaveFlash.7","version":function(obj){return getActiveXVersion(obj);}},{"name":"ShockwaveFlash.ShockwaveFlash.6","version":function(obj){var version="6,0,21";try{obj.AllowScriptAccess="always";version=getActiveXVersion(obj);}catch(err){}
return version;}},{"name":"ShockwaveFlash.ShockwaveFlash","version":function(obj){return getActiveXVersion(obj);}}];var getActiveXVersion=function(activeXObj){var version=-1;try{version=activeXObj.GetVariable("$version");}catch(err){}
return version;};var getActiveXObject=function(name){var obj=-1;try{obj=new ActiveXObject(name);}catch(err){obj={activeXError:true};}
return obj;};var parseActiveXVersion=function(str){var versionArray=str.split(",");return{"raw":str,"major":parseInt(versionArray[0].split(" ")[1],10),"minor":parseInt(versionArray[1],10),"revision":parseInt(versionArray[2],10),"revisionStr":versionArray[2]};};var parseStandardVersion=function(str){var descParts=str.split(/ +/);var majorMinor=descParts[2].split(/\./);var revisionStr=descParts[3];return{"raw":str,"major":parseInt(majorMinor[0],10),"minor":parseInt(majorMinor[1],10),"revisionStr":revisionStr,"revision":parseRevisionStrToInt(revisionStr)};};var parseRevisionStrToInt=function(str){return parseInt(str.replace(/[a-zA-Z]/g,""),10)||self.revision;};self.majorAtLeast=function(version){return self.major>=version;};self.minorAtLeast=function(version){return self.minor>=version;};self.revisionAtLeast=function(version){return self.revision>=version;};self.versionAtLeast=function(major){var properties=[self.major,self.minor,self.revision];var len=Math.min(properties.length,arguments.length);for(i=0;i<len;i++){if(properties[i]>=arguments[i]){if(i+1<len&&properties[i]==arguments[i]){continue;}else{return true;}}else{return false;}}};self.FlashDetect=function(){if(navigator.plugins&&navigator.plugins.length>0){var type='application/x-shockwave-flash';var mimeTypes=navigator.mimeTypes;if(mimeTypes&&mimeTypes[type]&&mimeTypes[type].enabledPlugin&&mimeTypes[type].enabledPlugin.description){var version=mimeTypes[type].enabledPlugin.description;var versionObj=parseStandardVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revisionStr=versionObj.revisionStr;self.revision=versionObj.revision;self.installed=true;}}else if(navigator.appVersion.indexOf("Mac")==-1&&window.execScript){var version=-1;for(var i=0;i<activeXDetectRules.length&&version==-1;i++){var obj=getActiveXObject(activeXDetectRules[i].name);if(!obj.activeXError){self.installed=true;version=activeXDetectRules[i].version(obj);if(version!=-1){var versionObj=parseActiveXVersion(version);self.raw=versionObj.raw;self.major=versionObj.major;self.minor=versionObj.minor;self.revision=versionObj.revision;self.revisionStr=versionObj.revisionStr;}}}}}();};FlashDetect.JS_RELEASE="1.0.4";

function modalOpen (dialog) {
	dialog.overlay.fadeIn('fast', function () {
		dialog.container.fadeIn('fast', function () {
			dialog.data.hide().slideDown('fast');	 
		});
	});
	
	$('#simplemodal-overlay').click(function(){
		$.modal.close();
	});
	$('#lng_modal_back').click(function(){
		$.modal.close();
	});
											 
}

function pasteWarning(input) {
	//$(input).siblings('label').find('.rf-error').remove();
	$(input).siblings('.error').remove();
	var err = $('<div/>').addClass('error').text('Paste disallowed');
	//$(input).siblings('label').append(err);
	$(input).parent().append(err);
}
function raffleClose()	{
	$('#rf-cont').hide();
	$('#lb-overlay').hide();
	
}
function raffle() {
	var ft = 1;
	var fn = location.href.substring(location.href.lastIndexOf('/')+1) ;
	fn = fn.substring(0, fn.length-4);
	if (Math.floor(Math.random()*101)>=50) {
		$('#rf-cont').attr('class', 'rf-awk');
		ft = 2;
	}
	$('#rf-cont').show();
	$('#lb-overlay').show();
	$('#rf-name').focus();
	$('.rff-item input').keyup(function(e){
		if (e.keyCode == '13' ||e.keyCode == '10' ) {
		     e.preventDefault();
		     $('#rf-first-button').addClass('rf-keyup').trigger('click');
		}
	});
	$('#rf-cont, #rf-close, #rf-back').click(function(z){
		z.preventDefault();
		raffleClose();
	})
	$('#rf-actual').click(function(z){
		z.stopPropagation();
	});
	pageTracker._trackPageview('raffle-view/'+fn+'/form:'+ft);
	
}
function bookmarksite(){
		var title = document.title;
		var url = location.href.replace(/\.htm#?$/i, '');
		if (window.sidebar) // firefox
			window.sidebar.addPanel(title, url, "");
		else if(window.opera && window.print){ // opera
			var elem = document.createElement('a');
			elem.setAttribute('href',url);
			elem.setAttribute('title',title);
			elem.setAttribute('rel','sidebar');
			elem.click();
		} 
		else if(document.all)// ie
			window.external.AddFavorite(url, title);
	};

function numberFromName(val){
	var sum = 0;
	for(var i=0; i<val.length; i++){
		sum += val.charCodeAt(i);
	}
	return (sum % 36 + 1);
}

var str1 = '<object\
		classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"\
		codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"\
		width="494" height="526"\
		id="lng" align="middle"\
	>\
		<param name="allowScriptAccess" value="always" />\
		<param name="allowFullScreen" value="false" />\
		<param name="movie" value="flash/lng.swf" />\
		<param name="quality" value="high" />\
		<param name="wmode" value="transparent" />\
		<param name="bgcolor" value="#000000" />\
		<param name="FlashVars" value="nums=';
		
var str2 = '" />\
		<embed\
			src="flash/lng.swf"\
			quality="high"\
			wmode="transparent"\
			bgcolor="#000000"\
			width="494"\
			height="526"\
			name="lng"\
			align="middle"\
			allowScriptAccess="always"\
			allowFullScreen="false"\
			type="application/x-shockwave-flash"\
			pluginspage="http://www.adobe.com/go/getflashplayer"\
			FlashVars="nums=';
			
var str3 = '"\
		/>\
	</object>';

function formValidate($thisForm){
		var $fields = $thisForm.find('input[type=text], input[type=password], textarea').not('.ffv-opt');
		
		var validate = true;
		$fields.each(function(){
			var email_filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
			var v = 1;
			if ($(this).attr('name') == 'email' || $(this).attr('name') == 'e-mail') {
				if (!email_filter.test($(this).val())) {
					validate = false;
					v = -1;
				}
			}
			if (!$(this).val() || $(this).val() == '' || $(this).val() == $(this).get(0).defaultValue) {
				validate = false;
				v = -1;
			}
			if (v == -1) {
				$(this)
					.addClass('ff-notvalid')
					.bind("focus", function(){
						$(this).removeClass('ff-notvalid');
					});
			}
		})
		
		if (validate) {return true;}
		return false;
}

$(document).ready(function(){
	/* JS - NOJS */
	
	$('.container').attr("id", 'js');
	
	/* cunning image links */
	$('.pic-lnk').click(function(){
		//location.href = $(this).attr('rel');
		window.open($(this).attr('rel'),'_blank');
	})
	
	$('.ff-validate').submit(function(){
		return formValidate($(this));
	});
	/* modal */
	$('.modal_pic_div').each(function(){
		$('.modal_pic', $(this)).after('<span class="scope_span"></span>');
			$('.scope_span', $(this)).click(function(es) {
				es.preventDefault();
				$(this).siblings('.modal_pic_big').modal({onOpen: modalOpen});
			})
				//.width($('.modal_pic', $(this)).width()+4)
				//.height($('.modal_pic', $(this)).height()+4);
				
			$('.scope_span', $(this)).hover(function(){
				$(this).css('background-position','50% 50%')
				
			}, function(){
				$(this).css('background-position','-1000px -1000px')
					
		});
		
	});
		/* lng */
	if ($('.box_lng_row').length>0) {
		
		var $fields = {
			name1:$('#lng_name1'),
			name2:$('#lng_name2'),
			sex:$('#lng_sex'),
			bd_date:$('#lng_bd_date'),
			bd_month:$('#lng_bd_month'),
			bd_year:$('#lng_bd_year'),
			gd_date:$('#lng_gd_date'),
			gd_month:$('#lng_gd_month'),
			gd_year:$('#lng_gd_year')
		}
		
		var now = new Date();
		var currYear = now.getFullYear();
		var monthes = ['January','February','March','April','May','June','July','August','September','October','November','December'];
		$fields.gd_date.val(now.getDate());
		$fields.gd_month.val(monthes[now.getMonth()]);
		$fields.gd_month.attr('num',now.getMonth());
		$fields.gd_year.val(currYear);
		
		var days = [];
		var monthes_ = [];
		var byears = [];
		var gyears = [];
		
		for (var i=1;i<=31;i++){
			days.push('<div>'+i+'</div>');
		}
		
		for (var i=0;i<monthes.length;i++){
			monthes_.push('<div num="'+i+'">'+monthes[i]+'</div>');
		}
		
		for (var i=0; i>-121; i--){
			byears.push('<div>'+(currYear+i)+'</div>');
		}
		for (var i=0; i<=20; i++){
			gyears.push('<div>'+(currYear+i)+'</div>');
		}
		
		var $fake_options = {};
		
		var offset;
		offset = $fields.sex.offset();
		$fake_options.sex = $('<div class="lng_options" id="lng_sex_opts"></div>')
			.html('<div>male</div><div>female</div>')
			.css({top:offset.top+17, left:offset.left, width:$fields.sex.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.sex.val(e.target.innerHTML)
				}
			})
			.appendTo('body');
			
		offset = $fields.bd_date.offset();
		$fake_options.bd_date = $('<div class="lng_options" id="lng_bd_date_opts"></div>')
			.html(days.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.bd_date.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.bd_date.val(e.target.innerHTML)
				}
			})
			.appendTo('body');
			
		offset = $fields.bd_month.offset();
		$fake_options.bd_month = $('<div class="lng_options" id="lng_bd_month_opts"></div>')
			.html(monthes_.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.bd_month.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.bd_month.val(e.target.innerHTML);
					$fields.bd_month.attr('num',$(e.target).attr('num'));
				}
			})
			.appendTo('body');
			
		offset = $fields.bd_year.offset();
		$fake_options.bd_year = $('<div class="lng_options" id="lng_bd_year_opts"></div>')
			.html(byears.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.bd_year.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.bd_year.val(e.target.innerHTML)
				}
			})
			.appendTo('body');
			
		offset = $fields.gd_date.offset();
		$fake_options.gd_date = $('<div class="lng_options" id="lng_gd_date_opts"></div>')
			.html(days.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.gd_date.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.gd_date.val(e.target.innerHTML)
				}
			})
			.appendTo('body');
			
		offset = $fields.gd_month.offset();
		$fake_options.gd_month = $('<div class="lng_options" id="lng_gd_month_opts"></div>')
			.html(monthes_.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.gd_month.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.gd_month.val(e.target.innerHTML);
					$fields.gd_month.attr('num',$(e.target).attr('num'));
				}
			})
			.appendTo('body');
			
		offset = $fields.gd_year.offset();
		$fake_options.gd_year = $('<div class="lng_options" id="lng_gd_year_opts"></div>')
			.html(gyears.join('\n'))
			.css({top:offset.top+17, left:offset.left, width:$fields.gd_year.width()+16})
			.click(function(e){
				$(this).css('display','none')
				if ($(e.target).is(".lng_options div")) {
					$fields.gd_year.val(e.target.innerHTML)
				}
			})
			.appendTo('body');
		
		
		
		
		
		$('.box_lng_fake_select')
		.click(function(e){
			
			var currElArr = e.target.id.split('_');
			var currEl = currElArr.splice(1,currElArr.length-2)
			$fake_options[currEl.join('_')].css('display','block');
			var inp = $(this).prev("input");
			if(inp.val() == 'Enter value'){inp.val('')}
			inp.css('color','#555555')
		})
		
		$('.box_lng_btn')
	
		.click(function(e){
			var noErrors = true;
			for (var i in $fields){
				
				var val = $fields[i].val();
				if((val.length == 0) || (val == 'Enter value')){
					noErrors = false;
					$fields[i].val('Enter value').css('color','#ff3333');
				}
			}
			if(noErrors){
				var numsArr = [];
				var vals = {
					name1:$fields.name1.val(),
					name2:$fields.name2.val(),
					sex:$fields.sex.val(),
					bd_year:parseInt($fields.bd_year.val(),10),
					bd_month:parseInt($fields.bd_month.attr('num'),10)+1,
					bd_date:parseInt($fields.bd_date.val(),10),
					gd_year:parseInt($fields.gd_year.val(),10),
					gd_month:parseInt($fields.gd_month.attr('num'),10)+1,
					gd_date:parseInt($fields.gd_date.val(),10)
				};
				var born = new Date(
					vals.bd_year,
					vals.bd_month,
					vals.bd_date
				);
				var age = Math.floor((now.getTime() - born.getTime()) / (365.25 * 24 * 60 * 60 * 1000)); 
				var ageStr = ''+age;
				var ageProd = 1;
				for (var i=0;i<ageStr.length;i++){
					
					ageProd *= parseInt(ageStr.charAt(i),10)
				}
				var yrStr = ''+vals.bd_year;
				var mnStr;
				if(vals.bd_month<10){
					mnStr = '0'+vals.bd_month;
				} else {
					mnStr = ''+vals.bd_month;
				}
				var dtStr;
				if(vals.bd_date<10){
					dtStr = '0'+vals.bd_date;
				} else {
					dtStr = ''+vals.bd_date;
				}
				
				var yrLastSum = parseInt(yrStr.charAt(2),10) + parseInt(yrStr.charAt(3),10);
				var yrFirstSum = parseInt(yrStr.charAt(0),10) + parseInt(yrStr.charAt(1),10);
				var mnSum = parseInt(mnStr.charAt(0),10) + parseInt(mnStr.charAt(1),10);
				var dtSum = parseInt(dtStr.charAt(0),10) + parseInt(dtStr.charAt(1),10);
				
				var altBase1 = yrLastSum + yrFirstSum + mnSum + dtSum;
				var altBase2 = dtSum;
				while(altBase2>9){
					var altBase2Str = ''+altBase2;
					altBase2 = parseInt(altBase2Str.charAt(0),10) + parseInt(altBase2Str.charAt(1),10);
				}
				altBase2 *= altBase2;
				var altNum = (altBase1 - altBase2) % 36;
				if(altNum<0){altNum *= -1}
				 altNum += 1;
				
				var guaBase = yrLastSum;
				while(guaBase>9){
					var guaBaseStr = ''+guaBase;
					guaBase = parseInt(guaBaseStr.charAt(0),10) + parseInt(guaBaseStr.charAt(1),10);
				}
				
				var guaNum;
				if(vals.bd_year == 2000){
					if(vals.sex == 'female'){
						guaNum = 6;
					} else {
						guaNum = 9;
					}
				} else if(vals.bd_year == 1999){
					if(vals.sex == 'female'){
						guaNum = 5;
					} else {
						guaNum = 1;
					}
				} else if(vals.bd_year > 2000){
					if(vals.sex == 'female'){
						guaNum = 9-guaBase;
					} else {
						guaNum = 4+guaBase;
					}
				} else {
					if(vals.sex == 'female'){
						guaNum = 10-guaBase;
					} else {
						guaNum = 5+guaBase;
					}
				}
				
				if (guaNum==0){guaNum=9}
				while(guaNum>9){
					var guaNumBaseStr = ''+guaNum;
					guaNum = parseInt(guaNumBaseStr.charAt(0),10) + parseInt(guaNumBaseStr.charAt(1),10);
				}
				
				numsArr.push(numberFromName(vals.name1)); //1 - name number
				numsArr.push( //2 – Birthday Number
					(vals.bd_month +
					vals.bd_date +
					vals.bd_year) % 36 + 1
				);
				numsArr.push( //3 – Life cycle Number
					(ageProd + age) % 36 + 1
				);
				numsArr.push( //4 – Game day Number
					(vals.gd_month +
					vals.gd_date +
					vals.gd_year) % 36 + 1
				);
				numsArr.push( //5 – Gua Number
					guaNum
				);
				numsArr.push(numberFromName(vals.name2)); //6 - other name number
				numsArr.push( //7 – Alternate Number
					altNum
				);
				//var nums = '13,22,32,9,6,35,1';
				var nums = numsArr.join(',');
				
				$('#lng_modal_flash').html(str1 + nums + str2 + nums + str3)
				$('#lng_modal').modal({onOpen: modalOpen});
				
			} else {return false;}
			
			
			
		})
		
		$('.box_lng_row input').focus(function(){
			var inp = $(this);
			if(inp.val() == 'Enter value'){inp.val('')}
			inp.css('color','#555555')
			
		});
		
		
		$('.lng_help_trigger')
		.hover(function(e){
			$('.lng_help_pad').css({display:'block', left:248})
		},function(e){
			$('.lng_help_pad').css('display','none')
		})
	}
	/* picker */
	$('#page_index').each(function(){
		
		var gamesBase={
			games:[
				
				{uid:'european-roulette-online-vegas-casino', 
				name:'European Roulette', 
				soft:'Vegas Tech', 
				score:'9.8', 
				casino:'online-vegas',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$14,800</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},	
			
				{uid:'american-roulette-online-vegas-casino', 
				name:'American Roulette', 
				soft:'Vegas Tech', 
				score:'9.8', 
				casino:'online-vegas',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$14,655</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'american-roulette-win-palace-casino', 
				name:'American Roulette', 
				soft:'RTG', 
				score:'9.6', 
				casino:'win-palace',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'european-roulette-win-palace-casino', 
				name:'European Roulette', 
				soft:'RTG', 
				score:'9.7', 
				casino:'win-palace',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'american-roulette-go-casino', 
				name:'American Roulette', 
				soft:'Vegas Tech', 
				score:'10', 
				casino:'go-casino',
				us:1, 
				ec:1, 
				dlist:'<li>Max bet - <strong>$15,200</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'european-roulette-go-casino', 
				name:'European Roulette', 
				soft:'Vegas Tech', 
				score:'9.9', 
				casino:'go-casino',
				us:1, 
				ec:1, 
				dlist:'<li>Max bet - <strong>$14,655</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'american-roulette-club-usa', 
				name:'American Roulette', 
				soft:'RTG', 
				score:'8.9', 
				casino:'club-usa',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$200</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'european-roulette-club-usa', 
				name:'European Roulette', 
				soft:'RTG', 
				score:'9.3', 
				casino:'club-usa',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$200</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'american-roulette-slotocash', 
				name:'American Roulette', 
				soft:'Rival', 
				score:'8.7', 
				casino:'sloto-cash',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'european-roulette-slotocash', 
				name:'European Roulette', 
				soft:'Rival', 
				score:'8.8', 
				casino:'sloto-cash',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'electronic-roulette-european-rome', 
				name:'Electronic Roulette', 
				soft:'TopGame', 
				score:'9.6', 
				casino:'rome',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'},
				
				{uid:'roulette-crystal-european-rome', 
				name:'Roulette Crystal', 
				soft:'TopGame', 
				score:'9.5', 
				casino:'rome',
				us:1, 
				ec:0, 
				dlist:'<li>Max bet - <strong>$100</strong></li><li>Flash version - <strong>yes</strong></li><li>Fun version - <strong>yes</strong></li>'}
				
			]
		};
		
		var partnersNames = {
				'sloto-cash':'Slotocash~160~577',
				'rushmore':'Rushmore~128~888',
				'go-casino':'Go~64~1000',
				'online-vegas':'Online&nbsp;Vegas~32~500',
				'rome':'Rome~192~1000',
				'club-usa':'Club&nbsp;USA~96~150',
				'harbour':'English Harbour~0~800',
				'win-palace':'Win&nbsp;Palace~0~3000'
		};
		
		var moverTemplate =	''+
			'<div class="ixp-name">$name by&nbsp;$partner</div>'+
			'<div class="ixp-l"> <a href="$review"><img src="$pic" width="161" height="120" alt="$name" /></a></div>'+
			'<div class="ixp-r">'+
	        '<ul class="ixp-desc"><li class="ixp-score">Game score - <strong>$score</strong></li>$dlist<li class="ixp-review"><a href="$review">Read Review</a></li></ul>'+
			'</div>'+
			'<div class="ixp-c">'+
			'<a target="_blank" href="casino/picker/$casino" class="ixp-c-logo" style="background-position:0 -$pospx;"></a>'+
			'<div class="ixp-c-info"><span>$$bonus bonus</span><span class="ixp-c-us">welcome</span></div>'+
			'<div class="ixp-c-r"><a target="_blank" href="casino/picker/$casino"">Visit Casino</a></div>'+
			'</div>';
	      	
			
		var currType;
		
		var counters = {
			games:0
		};
		
		var images = {};
		
		if($.cookie('GamesPickerPosition')){
			var savedArr = $.cookie('GamesPickerPosition');
				for(var i = 0, l = gamesBase.games.length; i<l; i++){
					if(gamesBase.games[i].uid == savedArr){
						counters.games = i;
						break;
					}
				}
		} else if (Math.floor(Math.random()*101)>=60) {
			var savedArr = 'european-roulette-win-palace-casino';
			for(var i = 0, l = gamesBase.games.length; i<l; i++){
					if(gamesBase.games[i].uid == savedArr){
						counters.games = i;
						break;
					}
				}
		}
		
		cacheImg('games');
		
		function cacheImg(type){
			var indexes = [
				counters[type],
				((counters[type] + 1) > gamesBase[type].length-1)?0:counters[type] + 1,
				((counters[type] - 1) < 0)?gamesBase[type].length-1:counters[type] - 1
			];
			
			for (var i = 0; i < 2; i++){
				var uid = gamesBase[type][indexes[i]].uid
				if(typeof images[uid] == 'undefined'){
					images[uid] = new Image();
					images[uid].src = 'img/game-reviews/161x120/'+uid+'.jpg';
				}
			}
			
		}
		
		initMover('games');
		
		function applyTemplate(type){
			var currArr = gamesBase[type];
			var partner = partnersNames[currArr[counters[type]].casino].split('~');
			var partnerName = (currArr[counters[type]].casino=='go-casino')?'Go&nbsp;Casino':partner[0];
			var logoPos = partner[1];
			var bonus = partner[2];
			var currUs = (currArr[counters[type]].us)?'<span class="ixp-us">us welcome</span>':'';
			var currEc = (currArr[counters[type]].ec)?' ixp-ec':'';
			var currCont = moverTemplate
				.replace(/\$uid/g, currArr[counters[type]].uid)
				.replace(/\$name/g, currArr[counters[type]].name)
				.replace(/\$casino/g, currArr[counters[type]].casino)
				.replace(/\$score/g, currArr[counters[type]].score)
				.replace(/\$partner/g, partnerName)
				.replace(/\$ec/g, currEc)
				.replace(/\$review/g, currArr[counters[type]].uid+'.htm')
				.replace(/\$pic/g, images[currArr[counters[type]].uid].src)
				.replace(/\$dlist/g, currArr[counters[type]].dlist)
				.replace(/\$bonus/g, bonus)
				.replace(/\$pos/g, logoPos)
				.replace(/\$us/g, currUs)
			return currCont;
		}
		
		function addTooltip($this){
			$this.mouseenter(function(e){
				var this_casino = $this.attr('href').split('/');
				var tpos = e.pageX+3;
				if (tpos+210>=$(window).width()) {
					tpos = $(window).width()-210;
				}
				this_casino = this_casino[2];
				$('body').append('<div class="picker-tooltip" style="left:'+tpos+'px; top:'+(e.pageY+3)+'px">“Play” forwards you to '+partnersNames[this_casino]+' casino where you can <span>play this game for fun or real money</span>.</div>');
			});
			$this.mouseleave(function(){
				$('.picker-tooltip').remove();
			})
		};
		
		function initMover(type){
			currType = type;
			var currCont = applyTemplate(type);
			$('.ixp-curr').html(currCont);
			
			addTooltip($('.ixp-curr').find('.button_golden17'));
		}
		function updateMover(type,increment){
			
			if((counters[type] + increment) < 0){
				counters[type] = gamesBase[type].length-1;
			} else if((counters[type] + increment) > gamesBase[type].length-1)
			{
				counters[type] = 0;
			} else {
				counters[type] += increment;
			}
			
			images[gamesBase[type][counters[type]].uid] = new Image();
			images[gamesBase[type][counters[type]].uid].src = 'img/game-reviews/161x120/'+gamesBase[type][counters[type]].uid+'.jpg';
			var currCont = applyTemplate(type);
			$('.ixp-next').html(currCont);
			addTooltip($('.ixp-next').find('.button_golden17'));
		}
		
		function savePosition(){
			var str = '' + gamesBase['games'][counters['games']].uid;
			//console.log(str)
			$.cookie('GamesPickerPosition', str, { expires: 30 });
		}
		
		var $arrLeft = $('.ixp-larr');
		var $arrRight = $('.ixp-rarr');
		var $moverCont = $('.ixp-mover-cont');
		
		$arrRight.click(function(){
			var $currFrame = $('.ixp-curr');
			var $nextFrame = $('.ixp-next');
			
			$arrLeft.hide();
			$arrRight.hide();
			
			updateMover(currType,1);
			$nextFrame.css({'left':592, opacity:0.2});
			
			$currFrame.animate({opacity:0.2},500)
			$nextFrame.animate({opacity:1},500, function(){
				if(jQuery.browser.msie) $(this).get(0).style.removeAttribute('filter');
			})
			
			$moverCont.animate(
				{left:-592},
				1000,
				function(){
					$moverCont.css('left',-296);
					$nextFrame.css('left',296);
					$currFrame.css('left',0);
					$arrLeft.show();
					$arrRight.show();
					$currFrame.removeClass('ixp-curr').addClass('ixp-next');
					$nextFrame.removeClass('ixp-next').addClass('ixp-curr');
					savePosition();
				}
			);
			
		});
		$arrLeft.click(function(){
			var $currFrame = $('.ixp-curr');
			var $nextFrame = $('.ixp-next');
			
			$arrLeft.hide();
			$arrRight.hide();
	
			
			updateMover(currType,-1);
			$nextFrame.css({'left':0, opacity:0.2});
			
			$currFrame.animate({opacity:0.2},500)
			$nextFrame.animate({opacity:1},500, function(){
				if(jQuery.browser.msie) $(this).get(0).style.removeAttribute('filter');
			})
			
			$moverCont.animate(
				{left:0},
				1000,
				function(){
					$moverCont.css('left',-296);
					$nextFrame.css('left',296);
					$currFrame.css('left',0);
					$arrLeft.show();
					$arrRight.show();
					$currFrame.removeClass('ixp-curr').addClass('ixp-next');
					$nextFrame.removeClass('ixp-next').addClass('ixp-curr');
					savePosition();
				}
			);
		});
	})
	/* GREY ODDITY IN TABLES */
	$('.grey_block_table').not('.vertical').find('tr:odd').addClass('grey_table_odd');
	$('.vertical tr').each(function(){
		$(this).find('td:odd').addClass('grey_table_odd_v');
	});
	
	$('.colorbox-screenshot').each(function(){
		$(this).colorbox({transition:"elastic", opacity:"0.8"}, function(){
			if ($('.gr-score').length>0) {
				var append_h1 = $('.center h1').text();
				var append_partner = $('.gr-score').find('.button_golden17').attr('href');
				/*
				$('.center').append('<div class="screen_appendix"><a target="_blank" href="'+append_partner+'"><span><span>Play '+append_h1+'</span></span></a></div>');
				var append_width = $('#cboxWrapper').width();
				$('.screen_appendix')
					.clone()
					.appendTo('#cboxBottomCenter')
					.addClass('shown')
					.css({'width':''+append_width+'px', 'top':'0', 'left':'0'})
					.show();
				$().bind("cbox_closed",function() { 
					$('.screen_appendix').remove();
				}); 
				*/
			}
		});
	});
	
	$('.grey_block_table').each(function(){
		$(this).find('tr:last').addClass('trlast');
	});
	
	/* GREY TABLE MANIPULATION */
	$('.grey_block').each(function() {
		var tableW = $(this).find('.grey_block_table').outerWidth(true);
		$(this).find('.grey_header').width(tableW-6);
	});
	/* CHARTS MANIPULATIONS */
	$('.chart_floated_l, .chart_floated_r').each(function(){
		var tableH = $(this).find('.chart').outerHeight(true);
		var tableW = $(this).find('.chart').outerWidth(true)
		$(this).find('.chart_header_v > div').height(tableH-22);
		$(this).width(tableW+19);
	})
	
	/* FAQ slidedown */
	$('.faq dd').hide();
	$('.faq dt a').click(function(ev){
		ev.preventDefault();
		$(this).parent('dt').next('dd').slideToggle('fast');
	});
	
	var marks = {
		tool:['lucky-number-generator'],
		hot:['roulette-cheatsheet'],
		upd:[],
		newp:['roulette-videos']
	}
	$('.main_menu li a').each(function(){
		var href = $(this).attr('href').substring(0, $(this).attr('href').length-4);
		for (var key in marks) {
			for (i = 0; i <= marks[key].length; i++) {
				if (marks[key][i] == href) {
					$(this).addClass('mm-icon').addClass(key+'page');
				}
			}
		}
	});
	/* Google Analytics goals */
	$('a[href^=casino/]').attr('target', '_blank').click(function(){
		var href = $(this).attr('href');
		if (typeof(pageTracker)!='undefined' && href.indexOf('//casino/')==-1) {
			pageTracker._trackPageview('click/'+href.replace(/http:\/\/[^\/]+\/[^\/]+/i, ''));
		}
		return true;
	})
	$('a[href^=http]:not(a[href^=http://output]):not(a[href^=http://onlineroulettedoc]):not(a[href^=http://www.onlineroulettedoc])').attr('target', '_blank');
	
	/* press tabs */
	$('.press_tab').click(function(){
		if ($(this).hasClass('active') == true)
		{}
		else
		{$('.press_tab, .press_head .seeall_link, .press_wrap').toggleClass('active');}
	});
	
	
	
	var lwH = $('.leftwrapper').height();
	var rwH = $('.right').height();
	if (lwH < rwH) $('.leftwrapper').height(rwH);
	
	$('.gmbts-form form').submit(function(e){
		e.preventDefault();
		
		var email_filter = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
		var formIsValid = true;
		
		$(this).find('.gmbtsf-input input').each(function(){
			$(this).parents('.gmbtsf-input').find('.error').remove();
			
			if($(this).parents('.gmbtsf-input').hasClass('required') && ($(this).val() == '')){
				$(this).parents('.gmbtsf-input').append('<div class="error">This field is required</div>')
				formIsValid = false;
			}
			if($(this).parents('.gmbtsf-input').hasClass('email') && (!email_filter.test($(this).val()))){
				$(this).parents('.gmbtsf-input').append('<div class="error">You should type a valid email</div>')
				formIsValid = false;
			}
		})
		
		if(!formIsValid){
			return false;
		}
		
		$.post ('thanks-subscription.htm', $(this).serialize(), function(data,status){
			if(status=='success'){
				//data = eval(data.substring(1));
				var txt;
				if(data.result !='success'){
					txt = data.msg;
				} else {
					txt = '<h2>Thank you for subscription!</h2><p><strong>We need to confirm your email address.</strong><br>To complete the subscription process, please click the link in the email we just sent you.</p><p>Enjoy playing roulette and keep in touch!</p>';
				}
				$('.gmbts-form').html(txt);
			}
		}, 'json');
		
		return false;
	});
	$('#tn-close').click(function(){
		$(this).parents('#index_topnotch').slideUp('slow');
	})
	$('.ixpt-us').mouseenter(function(e){
		var usPos = $(this).position();
		$('#us-ttip').css({'left':usPos.left+6+'px', 'top':usPos.top-30+'px', 'display':'block'});
	});
	$('.ixpt-us').mouseleave(function(e){
		$('#us-ttip').hide();
	});
	
	$('#index_topnotch').each(function(){
		var $this = $(this);
		if (!FlashDetect.installed) {
			makeBonusImage();
		} 
		function makeBonusImage() {
			$this.html('');
			var bonus_img = $this.attr('rel').split(',');
			$this
				.append($('<a/>').attr('href', bonus_img[1]).attr('rel', '_nofollow').attr('target', '_blank')
					.append($('<img/>').attr('src', bonus_img[0]).attr('width', $this.width()).attr('height', $this.height()))
				)
				.append($('<span/>').attr('id', 'tn-close'));
			$this.find('#tn-close').click(function(){
				$this.slideUp('slow');
			});
		}
		
	})
	/* proctological menu fix */
	$('.main_menu').find('a[href*=roulette-videos.htm]').each(function(){
		if($(this).parents('li').is('.selected')){
			$(this).css({'font-weight':'bold', 'color':'#E02020'});
		}
	})
	if ($('body').is('#free-roulette') || $('body').is('#game_tpl')) {
		if (!$.cookie('raffle') && !$.cookie('raffle_permanent')) {
			raffle();
			$.cookie('raffle', 'onload', { expires: 30 });
		}
	};
	var raffle_entered = false;
	/*if ($('#rf-cont').length>0 && $('body').is('#game_tpl') || $('body').is('.flash_game')) {
		
		if ($.cookie('raffle_permanent')!='permanent') {
			window.onbeforeunload = function (e) {
				if (raffle_entered != false) {
					
				} else {
					raffle();
					var e = e || window.event;
					if (e) {
					e.returnValue = '*************************************************************\n\n\n                      PRESS "CANCEL" TO WIN $5000\n\n\n*************************************************************';
					}
					return '*************************************************************\n\n\n                      PRESS "CANCEL" TO WIN $5000\n\n\n*************************************************************';
				}
			};
		}
		
	};*/
	
	
	function sendRaffle(e){
		var form_location = 'default';
		if ($(this).parents('#rf-cont').length>0) {
			var $form = $('#rf-form');
		} else if ($(this).parents('#ix-raffle').length>0) {
			var $form = $('#rfm-form');
			form_location = 'main';
		} else if ($(this).parents('#side-raffle').length>0) {
			var $form = $('#rfs-form');
			form_location = 'sidebar';
		}
		if ($(this).is('.rf-wait-state')) {
			return false;
		}
		e.preventDefault();
		$('.rf-error').remove();
		var button_type = '1';
		var form_type = '1';
		$('.rf-button').addClass('rf-wait-state');
		if ($(this).is('#rf-first-button')) {
			$form.find('input[name="button"]').val('1');
		}
		if ($(this).is('#rf-second-button')) {
			$form.find('input[name="button"]').val('2');
			button_type = '2';
		}
		if ($(this).is('.rf-keyup')) {
			$form.find('input[name="button"]').val('3');
			button_type = '3';
		}
		if ($(this).parents('#rf-cont').is('.rf-awk')) {
			$form.find('input[name="form"]').val('2');
			form_type = '2';
		}
		var email_filter = /^([a-zA-Z0-9_\.\-\+\$\!\#])+@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		var name_filter = /^[a-zA-Z0-9_\. ]+$/;
		var isValid = true;
		var action = $form.attr('action');
		var $result = $form.serializeArray();
		for (var i=$result.length-1; i>=0; i--) {
			var isError = false;
			var errMsg = '';
			if ($result[i].value.length==0) {
				isError = true;
				if (form_location=='default') {
					errMsg = 'Required field';
				} else {
					errMsg = 'Required';
				}
			}
			if (!isError) {
				if ($result[i].name=='name') {
					if (!name_filter.test($result[i].value)) {
						isError = true;
						errMsg = 'Wrong name';
					}
				}
			}
			if (!isError) {
				if ($result[i].name=='email') {
					if (!email_filter.test($result[i].value)) {
						isError = true;
						errMsg = 'Wrong email';
					}
				}
			}
			if (!isError) {
				if ($result[i].name=='rf-email-c' || $result[i].name=='email-c') {
					var email_c = $result[i].value;
				}
				if ($result[i].name=='email') {
					if (email_c != $result[i].value) {
						isError = true;
						errMsg = 'E-mails do not match';
					}
				}
			}
			if (isError) {
				var err = $('<div/>').addClass('rf-error').text(errMsg);
				$form.find('label[for="'+$result[i].name+'"]').append(err);
				isValid = false;
				$('.rf-button').removeClass('rf-wait-state');
			}
		}
		if (isValid) {
			$form = $form.serialize();
			$.post (action, $form, function(data,status){
				if(data==='ok'){
					$('.rf-button').removeClass('rf-wait-state');
					raffle_entered = true;
					if (form_location=='default') {
						$.cookie('raffle_permanent', 'permanent', { expires: 365 });
						pageTracker._trackPageview('raffle-submit/form:'+form_type+'/button:'+button_type);
						$('#rf-cont').attr('class', 'rf-normal').addClass('rf-thank-state');
					} else {
						pageTracker._trackPageview('raffle-submit/'+form_location);
						$('#rfg-actual').hide();
						$('#rfg-thanks').show();
					}
				} else {
					$('.rf-button').removeClass('rf-wait-state');
					alert(data);
				}
			}, 'text');
		}
		
	}
	
	$('.rf-button').click(sendRaffle);

	$('input[type="text"]','#rfs-form').keyup(function(e){
		if(e.keyCode == 13 || e.keyCode == 10) sendRaffle.call($('.rf-button'),e);
	});
	

});



window.fbAsyncInit = function() {
	function applyHeight() {
		$('.sc_cont').height($('.sc_fblike').height());
	}
	FB.init({appId: 'your app id', status: true, cookie: true, xfbml: true});
	FB.Event.subscribe('xfbml.render', function(response) {
		var t = setTimeout(function(){
		 	applyHeight();
		 	//$('.social_common').clone().insertAfter('h1');
		}, 1500);
		
	});
	FB.Event.subscribe('edge.create', function(response) {
		applyHeight();
	});
	FB.Event.subscribe('edge.remove', function(response) {
		applyHeight();
	});
};
