﻿//improved resize handling for sneloverlay

$(function () {
  SetupPayOverlay(".pay");
  SetupSpecialOverlay(".special");
  SetupCategoryOverlay(".catbutton");
  SetupSnelOverlay("#snelkiezer_button");
  fillform("#sexform");
  /*
  if(readCookie("campopup")==null)
		SetupCamPop();*/
	//SetupFLVPlay(".flv_play");
	SetupFLVOverlay(".flv_play");
	
	$(window).resize(function(){
		if(checkCloseCamPopup == 0)
			Resize("#campopup");
    
		var offset = $("#snelkiezer").offset();
		$("#snelkiezer_content").css("left",offset.left+"px");
		$("#snelkiezer_content").css("top",offset.top+"px");
		var height = $(window).height();
		var offset2 = (10+offset.top)-$(window).scrollTop();
		if(offset2<10)
			offset2 = 10;
		$("#snelkiezer_content").css("height",(height-offset2)+"px");
	});
});

function SetupSnelOverlay(selector) {
  $(selector).overlay({
		expose: {
			color: '#000',
			loadSpeed: "slow",
			closeSpeed: 800,
			opacity: 0.5
		},
    onBeforeLoad: function () {
			var offset = $("#snelkiezer").offset();
			var height = $(window).height();
			offset = (10+offset.top)-$(window).scrollTop();
			if(offset<10)
				offset = 10;
			$("#snelkiezer_content").css("height",(height-offset)+"px");
			$(this).blur();
		},
		onLoad: function () {
			var offset = $("#snelkiezer").offset();
			$("#snelkiezer_content").css("left",offset.left+"px");
			$("#snelkiezer_content").css("top",offset.top+"px");
		},
    closeOnClick: true,
    close: "li",
    top: $("#snelkiezer").offset().top, 
		left: $("#snelkiezer").offset().left, 
		absolute: true
  });
}

function close_overlay(){
  $("#overlay .close").click();
}

function SetupPayOverlay(selector) {
  $(selector).overlay({
		expose: {
			color: '#000',
			loadSpeed: "slow",
			closeSpeed: 800,
			opacity: 0.5
		},
    onBeforeLoad: function () {
			$(".overlay").css("width",412);
      var wrap = this.getContent().find(".contentWrap");
      thehref = this.getTrigger().attr("href");
      var infohtml = "<iframe id='payframe' scrolling='no' frameborder='0' style='border: none; width:412px; height: 350px;' src='"+thehref+"' />";
      wrap.html(infohtml);
    },
    closeOnClick: true,
    top: 'center', 
		left: 'center', 
		absolute: false
  });
}

function SetupSpecialOverlay(selector) {
  $(selector).overlay({
		expose: {
			color: '#000',
			loadSpeed: "slow",
			closeSpeed: 800,
			opacity: 0.5
		},
    onBeforeLoad: function () {
			$(".overlay").css("width",510);
      var wrap = this.getContent().find(".contentWrap");
      thehref = this.getTrigger().attr("href");
      var infohtml = "<iframe id='infoframe' scrolling='no' frameborder='0' style='border: solid 1px #000; width:510px; height: 400px;' src='"+thehref+"' />";
      wrap.html(infohtml);
    },
    closeOnClick: true,
    top: 'center', 
		left: 'center', 
		absolute: false
  });
}

function SetupCategoryOverlay(selector) {
  $(selector).click(function(e){
		$(this).toggleClass("close");
		$(this).blur();
		var catblock = $(this).attr('rel');
		if(catblock){
			if($(catblock).is(":visible"))
				$(catblock).hide("slow");
			else
				$(catblock).show("slow");
		}
		return false;
  });
}

/*FLVs*/

function SetupFLVOverlay(selector) {
	$(selector).overlay({
		expose: {
			color: '#000',
			loadSpeed: "slow",
			closeSpeed: 800,
			opacity: 0.5
		},
    onBeforeLoad: function () {
			var overlay = $(".overlay")
			overlay.css("width",600);
			overlay.css("height",451);
      var vidcont = this.getTrigger().parents(".flv_container");
			var flv = "http://diensten.midhold.nl/portal/cms/movies/"+vidcont.attr("flv");
			var swf = vidcont.attr("swf");
			if(!swf)
				swf = "swf/player.swf";
			var btn = vidcont.find(".flv_btn");
			var w = 650;//player.width()+13;
			var h = 450;//player.height()+16;
			btn.html('stop');
			btn.attr('title','Stop preview');
      this.getContent().find(".contentWrap").html('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" class="flv" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="'+w+'" height="'+h+'"><param name="movie" value="'+swf+'" /><param name="flashVars" value="vid='+flv+'&skincolor=0x000000" /><param name="quality" value="high" /><param name="wmode" value="transparent" /><embed class="flv" src="'+swf+'" flashVars="vid='+flv+'&skincolor=0x000000" quality="high" wmode="transparent" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="'+w+'" height="'+h+'"></embed></object>');
    },
    onClose: function () {
      var wrap = this.getContent().find(".contentWrap");
      wrap.html("");
      var btn = $(".flv_btn");
      btn.html('play');
			btn.attr('title','Start preview');
			//$(".overlay").css("height",510);
			$(".overlay").css("height","auto");
    },
    closeOnClick: true,
    top: 'center', 
		left: 'center', 
		absolute: false
  });
}

/*Dating*/
function fillDropDown(){
  var forms = document.getElementsByTagName("form");
  try{
    for(i = 0; i < forms.length; i++){
      if(forms[i].name=="sexform")
        fillform(forms[i]);
    }
  }catch(e){ }
}

function fillform(selector){
  $(selector).each(function(e){
		for(i = 0; i < 82; i++){
			var theOption = new Option();
			theOption.text = i+18;
			theOption.value = i+18;
			this.lvan.options[i] = theOption;

			theOption = new Option();
			theOption.text = i+18;
			theOption.value = i+18;
			if(i==12)
				theOption.selected = true;
			this.ltot.options[i] = theOption;
		}
  });
}

function validate_sexdate(form){
  if(!form)
    return false;
  else{
    if(form.lvan.options[form.lvan.selectedIndex].value>form.ltot.options[form.ltot.selectedIndex].value){
      var van = form.lvan.selectedIndex;
      var tot = form.ltot.selectedIndex;
      
      form.lvan.selectedIndex = tot;
      form.ltot.selectedIndex = van;
    }
  }
  return true;
}

/*campop

function SetupCamPop(){
	if(cammers!=null&&cammers.length>0){
		//.close -> onclick="CloseCamPopup();"

		$("#campopup").mouseover(function() {
			stopInterval();
			return false;
		});
		$("#campopup").mouseout(function() {
			if(checkCloseCamPopup == 0)
				redoInterval();
		});
		$("#campopup .close").click(function() {
			CloseCamPopup();
		});
		doInterval();
		// call it onload
		Place("#campopup");
		// assure that it gets called when the page resizes
		$(window).resize(function(){
			if(checkCloseCamPopup == 0)
				Resize("#campopup");
		});
  }
}

var repeatTimeout = null;
var theTimeout = null;
var checkCloseCamPopup = 0;

var upTime = 6000; //tijd dat de popup verschijnt
var downTime = 12000; //tijd dat de popup verdwijnt

var counter = 0;

doInterval = function(){
  if(counter>=cammers.length)
    counter = 0;
  $("#campopup a").each(function(e){
		$(this).attr("href",cammers[counter].link);
  });
  $("#campopup a.img").each(function(e){
		$(this).attr("title",cammers[counter].nick);
  });
	$("#campopup a.img img").each(function(e){
		$(this).attr("src",cammers[counter].img);
		$(this).attr("alt",cammers[counter].nick);
  });
	$("#campopup a.text").each(function(e){
		$(this).html(cammers[counter].text);
  });
  clearTimeout(theTimeout);
  theTimeout = setTimeout(function(){HideCamPopup();}, upTime);
  counter++;
};

redoInterval = function(){
  clearTimeout(theTimeout);
  theTimeout = setTimeout(function(){HideCamPopup();}, upTime);
};

stopInterval = function(){
  clearTimeout(theTimeout);
};

function Place(selector) {
  var newTop =   $(window).height() - $(selector).height();
  var newLeft =  $(window).width()  - $(selector).width();
  $(selector).css({
		'position': 'absolute',
		'left': newLeft,
		'top': $(window).height()
  });
  $(selector).animate({opacity: "show", top: newTop}, "slow");
}

function Resize(selector) {
  var newTop =   $(window).height() - $(selector).height();
  var newLeft =  $(window).width()  - $(selector).width();
  
  $(selector).css({
    'position': 'absolute',
    'left': newLeft,
    'top': newTop
  });
  
  $(selector).animate({opacity: "show", top: newTop}, "fast");
}

function HideCamPopup() {
  $("#campopup").animate({opacity: "hide", top: $(window).height()}, "slow");
  repeatTimeout = setTimeout("Repeat()", downTime);
}

function CloseCamPopup() {
  $("#campopup").animate({opacity: "hide", top: $(window).height()}, "fast");
  clearTimeout(repeatTimeout);
  clearTimeout(theTimeout);
  checkCloseCamPopup = 1;
  createCookie("campopup","closed",1);
}
*/
function Repeat() {
  doInterval();
  Place("#campopup");
}

/*Pops*/

function open_pop(a,opt){
	var url=""+a.href;
	if(url==""){return;}
	else{window.open(url,"_blank",opt);}
	return false;
}

/*Flash*/

function flash(url,w,h){
	document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="'+w+'" height="'+h+'" title="player">\n');
	document.write('<param name="movie" value="'+url+'" /> \n');
	document.write('<param name="quality" value="high" /> \n');
	document.write('<param name="wmode" value="transparent"> \n');
	document.write('<embed src="'+url+'" quality="high" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+w+'" height="'+h+'"></embed></object>\n');
}

function flashmovie(player,url,w,h){
	document.write('<object type="application/x-shockwave-flash" flashvars="file='+url+'" data="'+player+'" wmode="transparent" width="'+w+'" height="'+h+'">\n');
	document.write('<param name="movie" value="'+player+'" /> \n');
	document.write('<param name="quality" value="high" /> \n');
	document.write('<param name="flashVars" value="file='+url+'" /> \n');
	document.write('<param name="wmode" value="transparent"> \n');
	document.write('<embed src="'+player+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+w+'" height="'+h+'"></embed></object>\n');
}

/*Cookies*/

function createCookie(name, value, days) {
  if(days==null||days==undefined)
		days = 365 * 50;
  var date = new Date();
  date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
  var expires = "; expires=" + date.toGMTString();
  document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for (var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') c = c.substring(1, c.length);
    if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
  }
  return null;
}

/*level 2 cookies*/

function eraseCookie(name){
	createCookie(name,null,-1);
}

function addCookie(name,value){
  var c=readCookie(name);
  if(c==null){
		createCookie(name,(value+","));
		return true;
	}
  else if(c.indexOf(",")>=0){
    var p = c.split(',');
    for(var i=0;i<p.length;i++){
      if(p[i]!=null && p[i] == value)
				return false;
    }
    c+=value+",";
    createCookie(name,c);
    return true;
  }
  else{
		c = value + ",";
    createCookie(name,c);
		return true;
	}
	return false;
}

function delCookie(name,value){
	var c = readCookie(name);
  if(c!=null){
    var p = c.split(',');
    var r = "";
    for(var i=0;i<p.length;i++){
      if(p[i]!=null && p[i] != '' && p[i]!=value)
				r+=p[i]+",";
    }
    if(r==c)
			return false;
    if(r.length>0)
			createCookie(name,r);
    else
			eraseCookie(name);
		return true;
  }
  return false;
}

function existsCookie(name,value){
	var c = readCookie(name);
  if(c==null)
		return false;
	else if(value==null || value == undefined)
		return true;
	else{
    var p = c.split(',');
    var r = "";
    for(var i=0;i<p.length;i++){
      if(p[i]!=null && p[i] == value)
				return true;
    }
  }
  return false;
}

var cookieEnabled = false;

function supportsCookie(){
	if(!cookieEnabled){
		createCookie("test", "test", 1);
		if(readCookie("test")=="test")
			cookieEnabled = true;
	}
	return cookieEnabled;
}


/*Strings*/

String.format = function( text ){
  if ( arguments.length <= 1 || text == undefined)
    return text;
  var tokenCount = arguments.length - 2;

  for( var token = 0; token <= tokenCount; token++ )
  {
    text = text.replace( new RegExp( "\\{" + token + "\\}", "gi" ), arguments[ token + 1 ] );
  }
  return text;
};

String.prototype.toTitleCase = function(){
  if ( this.length <= 0 || this == undefined)
    return this;
  return this.substring(0,1).toUpperCase()+this.substring(1,this.length);
};

function RemoveHtmlMarkup(s){ 
	s = s.replace(/&amp;/g," ");
	s = s.replace(/amp;/g,"");
	s = s.replace(/quot;/g,"\"");
	s = s.replace(/#160;/g,"");
	s = s.replace(/#235;/g,"");
	return s;
} 

/*Bookmark*/

function bookmark(url, title){
	var u=url?url:document.location;
	var t=title?title:document.title;
  if(document.all){window.external.AddFavorite(u,t);}
  else if(window.sidebar){window.sidebar.addPanel(t, u,"");}
  else if(window.opera && window.print){return true;}
}

/*Search*/

function clear_text(field){
	if (field.defaultValue==field.value)
		field.value ="";
}

function refill_text(field){
	if (field.value==null||field.value=="")
		field.value = field.defaultValue;
}

function check_search(form){
  if (form.searchbox.value == "" || form.searchbox.value == form.searchbox.defaultValue){
		form.searchbox.focus();
		alert("Je hebt nog geen zoekopdracht ingevuld(!)");
		return (false);
  }
  if (form.searchbox.value.length > 100){
		alert("De ingevoerde zoekopdracht bestaat uit teveel karakters.");
		form.searchbox.focus();
		return (false);
  }
  return (true);
}