﻿//dynamically load and add this .css file
document.write('<link type="text/css" rel="Stylesheet" href="/v2/static/kpncom/css/kpn_dynamic.css" />');
document.write('<link type="text/css" rel="Stylesheet" href="/v2/static/kpncom/css/ui.kpntheme.css" />');
//dynamically load and add this .js file
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/ui.core.js"></script>');
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/ui.dialog.js"></script>');
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/ui.accordion.js"></script>');
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/ui.tabs.js"></script>');
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/ui.slider.js"></script>');
document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/jquery.tools.min.js"></script>');
//load only for IE6
if (navigator.userAgent.indexOf("MSIE 6") > -1 && navigator.userAgent.indexOf("Opera") == -1){
    document.write('<script type="text/javascript" src="/v2/static/kpncom/js/bgsleight.js"></script>');
    document.write('<script type="text/javascript" src="/v2/static/kpncom/js/ui_1.7.2/jquery.bgiframe.min.js"></script>');
};

//* Declaration of variables **********************************/

// Get Dom specification
var W3CDOM = (document.createElement && document.getElementsByTagName);
var bIEdetected = bIEdetected;

window.onload = startevents;

/* pageManager object ***/

// add this method to the document methods
//document.getElementsByClassName=getElementsByClassName;

//define pageManager object
pageManager = function() {
	//* local properties
	this.behavior = [];
	this.eventCache = [];

	//* local methods
	this.bindBehaviors = function(arg){
		for(var a in pM.behavior){
		    bh = pM.behavior[a];
			bindUoBehavior(bh.scope,bh.nodeTags,bh.nodeClass,bh.nodeChild,bh.initBind,bh.initElms,bh.click,bh.hover,bh.out,bh.move,bh.mup,bh.kup);
		}
	};

	this.addBehavior  = function(arg){
		o = new Object();
			o.name = arg["name"];
			o.owner = arg["owner"];
			o.scope = null;
			o.nodeTags	= null;
			o.nodeClass = null;
			o.nodeChild = null;
			o.initElms = null;
			o.initBind = null;
			o.click = null;
			o.hover = null;
			o.out = null;
			o.move	= null;
			o.mup = null;
			o.kup = null;
		this.behavior.push(o);
		return o;
	};
};

function test() {
    //console.log("test function");
    };

/* initialize pageManager and subscribe behaviors ***/
var pM = new pageManager();

// create rounded corners on kpn-box
bh1 = pM.addBehavior({name:'rounded corners', owner:'KPN'});
    bh1.scope       = ['pa_content','dialog'];
    bh1.nodeTags    = 'div';
    bh1.nodeClass   = 'kpn-box';
    bh1.initElms    = init_doroundedcorner;
    
bh2 = pM.addBehavior({name:'Search results', owner:'KPN'});
    bh2.scope       = 'InternalSearchBox';
    bh2.nodeTags    = 'a';
    bh2.nodeClass   = 'kpn_bh_refineSearch';
    bh2.click       = click_refineSearch;

bh3 = pM.addBehavior({name:'rich tooltip', owner:'KPN'});
    bh3.scope       = ['ph_content','site25content'];
    bh3.nodeTags    = 'img';
    bh3.nodeClass   = 'kpn_bh_richtooltip';
	bh3.hover		= mover_doTooltip;
	bh3.out		    = mout_doTooltip;
	
bh4 = pM.addBehavior({name:'rich jquery dialog', owner:'KPN'});
    bh4.scope       = 'pa_content';
    bh4.nodeTags    = ['a','area'];
    bh4.nodeClass   = 'kpn_bh_richdialog';
    bh4.initElms    = open_dialog;
    
bh5 = pM.addBehavior({name:'Close refine search results', owner:'KPN'});
    bh5.scope       = 'ph_content';
    bh5.nodeTags    = 'a';
    bh5.nodeClass   = 'kpn_bh_refineSearchClose';
    bh5.click    = click_refineSearchClose;
    
bh6 = pM.addBehavior({name:'input to link', owner:'KPN'});
    bh6.scope       = ['pa_content','site25content'];
    bh6.nodeTags    = 'input';
    bh6.nodeClass   = 'kpn_bh_dynamicbutton';
    bh6.initElms    = doInputToLink;
    
//bh7 = pM.addBehavior({name:'init flash overlay', owner:'KPN'});
//    bh7.scope       = 'body';
//    bh7.nodeTags    = 'div';
//    bh7.nodeClass   = 'kpn_bh_flashoverlay';
//    bh7.initElms    = initFlashOverlay;

// init binding of swaplist
bh8 = pM.addBehavior({name:'swaplist', owner:'KPN'});
	bh8.scope		= 'pa_content';
	bh8.nodeTags	= 'ul';
	bh8.nodeClass	= 'kpn_bh_swaplist';
	bh8.nodeChild   = 'li';
	bh8.click		= click_doSwaplist;
	
// binding of accordion
bh9 = pM.addBehavior({name:'accordion', owner:'KPN'});
    bh9.scope       = ['ph_content','dialog'];
    bh9.nodeTags    = 'dl';
    bh9.nodeClass   = 'kpn_bh_accordion';
    bh9.nodeChild   = 'dt';
    bh9.initElms    = init_accordion;
	
// binding tabs
bh10 = pM.addBehavior({name:'tabs', owner:'KPN'});
    bh10.scope      = ['ph_content','dialog'];
    bh10.nodeTags   = 'div';
    bh10.nodeClass  = 'kpn_bh_tabsbox';
    bh10.initElms   = init_tabsbox;
    
// init binding of flash
bh11 = pM.addBehavior({name:'flash',owner:'KPN'});
	bh11.scope		= ['ph_content','dialog'];
	bh11.nodeTags	= 'a';
	bh11.nodeClass	= 'kpn_bh_flash';
	bh11.initElms	= init_doFlash;
		
// init backbase iframe
bh12 = pM.addBehavior({name:'Backbase Iframe',owner:'KPN'});
	bh12.scope		= 'ph_content';
	bh12.nodeTags	= 'div';
	bh12.nodeClass	= 'kpn_bh_iframe';
	bh12.initElms	= init_doIframe;
		
bh13 = pM.addBehavior({name:'clear prefild form elements',owner:'KPN'});
    bh13.scope      = 'wrapper';
    bh13.nodeTags   = ['textarea','input'];
    bh13.nodeClass  = 'kpn_bh_clearInput';
    bh13.initElms      = click_clearInput;
    
bh14 = pM.addBehavior({name:'init sliders',owner:'KPN'});
    bh14.scope      = ['ph_content','dialog'];
    bh14.nodeTags   = 'input';
    bh14.nodeClass  = 'kpn_bh_slider';
    bh14.initBind   = init_slider;

bh15 = pM.addBehavior({name:'update shopping basket',owner:'KPN'});
    bh15.scope      = 'ph_shoppingcart';
    bh15.nodeTags   = 'span';
    bh15.nodeClass  = 'kpn_bh_cmshopitem';
    bh15.initElms   = init_shoppingbasketcm;
    
bh16 = pM.addBehavior({name:'update shopping basket',owner:'KPN'});
    bh16.scope      = 'ph_shoppingcart';
    bh16.nodeTags   = 'span';
    bh16.nodeClass  = 'kpn_bh_zmshopitem';
    bh16.initElms   = init_shoppingbasketzm;
    
// init binding of swaptable
bh17 = pM.addBehavior({name:'swaptable',owner:'KPN'});
	bh17.scope		= 'ph_content';
	bh17.nodeTags	= 'tr';
	bh17.nodeClass	= 'kpn_bh_swaptable';
//	bh17.initBind	= init_doSwapTable;
	bh17.click		= click_doSwapTable;
	
// init binding quotes
bh18 = pM.addBehavior({name:'quotes',owner:'KPN'});
    bh18.scope      = 'ph_content';
    bh18.nodeTags   = 'p';
    bh18.nodeClass  = 'blockquotes';
    bh18.initBind   = init_addquotes;


/* start events ***/
function startevents(){

	styleActive = (document.styleSheets[0])?!document.styleSheets[0].disabled:false;
	// all the javascript that depend on the stylesheet

	if (styleActive){
		// bind all subscribed behaviors
		pM.bindBehaviors();
	}
};

/***************************** Helper functions **************************************/

//*** function for binding unobtrusive behavior on elements ***/
//    bindUoBehavior(scope,HTMLelement,class,<target>,<init_function>,<init_element>,onclick_function,<mouseover_function>,<mouseout_function>,<mousemove_function>,<mouseup_function>,<keyup_function>)
//    scope			: single string value or multiple parms as array [x,y,z]
//    HTMLelement	: single string value or multiple parms as array [x,y,z]
//	  target		: "null" binds events on class element, otherwise binds on defined HTMLelement's child target element.
//
//	  scope -> tag -> class -> <target (direct child)>
//    fninit -> called once when DOM search returns objects
//    elminit -> called on every element in collection returned from DOM search

function bindUoBehavior(scope,tag,cls,target,fninit,elminit,fnmcl,fnmov,fnmou,fnmmv,fnmup,fnkup){

	if (!W3CDOM) return true;
	if(!isArray(scope)){scope = scope.split()}
	// call init function
	if(fninit)fninit();
	for(t=0;t<scope.length;t++){
	    var container = document.getElementById(scope[t]);
		if(container != null){
			if(!isArray(tag)){tag = tag.split()}
			for(q=0;q<tag.length;q++){
				var elms = container.getElementsByTagName(tag[q]);
						  if(elms.length != 0){
								  for (var i = (elms.length-1); i >= 0; i--){
										//if(cssjs('check',elms[i],cls)){
										if($(elms[i]).hasClass(cls)){
											if(target != null){
												var telms = elms[i].getElementsByTagName(target);
												if(telms.length != 0){
													for (var j = 0; j < telms.length; j++) {
														if(telms[j].parentNode == elms[i]){
															// target defined
															if(elminit){elminit(telms[j]);}
															if(fnmcl){telms[j].onclick     = fnmcl;EventCache.add(telms[j], "onclick",     fnmcl, true);}
															if(fnmov){telms[j].onmouseover = fnmov;EventCache.add(telms[j], "onmouseover", fnmov, true);}
															if(fnmou){telms[j].onmouseout  = fnmou;EventCache.add(telms[j], "onmouseout",  fnmou, true);}
															if(fnmmv){telms[j].onmousemove = fnmmv;EventCache.add(telms[j], "onmousemove", fnmmv, true);}
															if(fnmup){telms[j].onmouseup   = fnmup;EventCache.add(telms[j], "onmouseup",   fnmup, true);}
															if(fnkup){telms[j].onkeyup     = fnkup;EventCache.add(telms[j], "onkeyup",     fnkup, true);}
														}
													}
											    }
											}
											else{
													// no target defined
													if(elminit){elminit(elms[i]);}
													if(fnmcl){elms[i].onclick     = fnmcl;EventCache.add(elms[i], "onclick",     fnmcl, true);}
													if(fnmov){elms[i].onmouseover = fnmov;EventCache.add(elms[i], "onmouseover", fnmov, true);}
													if(fnmou){elms[i].onmouseout  = fnmou;EventCache.add(elms[i], "onmouseout",  fnmou, true);}
													if(fnmmv){elms[i].onmousemove = fnmmv;EventCache.add(elms[i], "onmousemove", fnmmv, true);}
													if(fnmup){elms[i].onmouseup   = fnmup;EventCache.add(elms[i], "onmouseup",   fnmup, true);}
													if(fnkup){elms[i].onkeyup     = fnkup;EventCache.add(elms[i], "onkeyup",     fnkup, true);}
											}
										}
								  }
						  }
				    }
			}
        }
		return true;
};

// returns a parameter value in a url string 
function getValueFromUrl(url, parm){
	var a_url = url.split("?");

	if(a_url.length > 1){
		var a_parms = a_url[1].split("&");
		for(i = 0; i < a_parms.length; i++ ){
			var a_temp = a_parms[i].split("=");
			if( a_temp[0] === parm ) { return a_temp[1]; }
		}
	}
	return null;
};

//* define event object for active browser
function event_handler(e){
	e = e || window.event;
}
function isArray(a) {
    return isObject(a) && a.constructor == Array;
};
function isObject(a) {
    return (a && typeof a == 'object') || isFunction(a);
};
function isFunction(a) {
    return typeof a == 'function';
};

/****************** event cache *********************/
/*
 	EventCache Version 1.0
	Copyright 2005 Mark Wubben

	Provides a way for automagically removing events from nodes and thus preventing memory leakage.
	See <http://novemberborn.net/javascript/event-cache> for more information.

	This software is licensed under the CC-GNU LGPL <http://creativecommons.org/licenses/LGPL/2.1/>
*/

/*	Implement array.push for browsers which don't support it natively.
	Please remove this if it's already in other code */

if(Array.prototype.push == null){
	Array.prototype.push = function(){
		for(var i = 0; i < arguments.length; i++){
			this[this.length] = arguments[i];
		};
		return this.length;
	};
};

/*	Event Cache uses an anonymous function to create a hidden scope chain.
	This is to prevent scoping issues. */
var EventCache = function(){
	var listEvents = [];

	return {
		listEvents : listEvents,

		add : function(node, sEventName, fHandler, bCapture){
			listEvents.push(arguments);
		},


		flush : function(){
			var i, item;
			for(i = listEvents.length - 1; i >= 0; i = i - 1){
				item = listEvents[i];

				if(item[0].removeEventListener){
					item[0].removeEventListener(item[1], item[2], item[3]);
				};

				/* From this point on we need the event names to be prefixed with 'on" */
				if(item[1].substring(0, 2) != "on"){
					item[1] = "on" + item[1];
				};

				if(item[0].detachEvent){
					item[0].detachEvent(item[1], item[2]);
				};

				item[0][item[1]] = null;
			};
		}
	};
}();

/* add Array.push if needed */
if(Array.prototype.push == null){
	Array.prototype.push = function(item) { this[this.length] = item; return this.length; }
}

$.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toGMTString)) {
            var date;
            if (typeof options.expires == 'number') {
                date = new Date();
                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
            } else {
                date = options.expires;
            }
            expires = '; expires=' + date.toGMTString(); // use expires attribute, max-age is not supported by IE
        }
        var path = options.path ? '; path=' + options.path : '';
        var domain = options.domain ? '; domain=' + options.domain : '';
        var secure = options.secure ? '; secure' : '';
        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
    } else { // only name given, get cookie
        var cookieValue = null;
        if (document.cookie && document.cookie != '') {
            var cookies = document.cookie.split(';');
            for (var i = 0; i < cookies.length; i++) {
                var cookie = $.trim(cookies[i]);
                // Does this cookie string begin with the name we want?
                if (cookie.substring(0, name.length + 1) == (name + '=')) {
                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
                    break;
                }
            }
        }
        return cookieValue;
    }
};

function sanitizeHTML(sHTML){
    aTagBlacklist = ["script","embed","object","frameset","iframe","frame","meta","link","style"];
    aAttrBlacklist = ["javascript:","style=","onclick","ondblclick","onmousemove","onmouseover","onmouseout","onmouseup","onmousedown","onkeyup","onkeydown","onkeypress","onfocus","onblur","onchange"];

    sout = sHTML;

    // strip attributes
    for(t=0;t<aAttrBlacklist.length;t++){
        regexp = eval("/"+aAttrBlacklist[t]+"/gi");
        sout = sout.replace(regexp, "@@@@@");
    };

    //strip tags
    for(t=0;t<aTagBlacklist.length;t++){
        regexp = eval("/<"+aTagBlacklist[t]+"[^*]*\\/"+aTagBlacklist[t]+">/gi");
        sout = sout.replace(regexp, "<!-- sanitized -->");
    };

    return sout;

}; 

//function detectFlash(ver) {	return (getFlashVersion() >= ver) ? true:false; }

/* rounded corners kpn-box */
function init_doroundedcorner(oLink) {

    if ($(oLink).hasClass("noborder")) {
        return false;
    };

    topcorners = '<div class="kpn-box-tl"></div><div class="kpn-box-tr"></div>';
    bottomcorners = '<div class="kpn-box-bl"></div><div class="kpn-box-br"></div>';
    
    $(topcorners).prependTo(oLink);
    $(bottomcorners).appendTo(oLink);

};

function mover_doTooltip(e){
	var posx = 0;
	var posy = 0;
	var offset = 5;
	var curtitle = this.title;
    this.title = '';

	//var brich = getElementsByClassName("infotext",this.parentNode);
	var brich = $('.infotext', this.parentNode);
	if(brich != null){curtitle=brich[0].innerHTML};

   	var ttnode = document.createElement("div");
    document.body.appendChild(ttnode);

	// ielistbox shield
	if(bIEdetected){
		var tsnode = document.createElement("iframe");
		var txnode = document.createElement("div");
		ttnode.appendChild(tsnode);
		ttnode.appendChild(txnode);
		txnode.className = "tooltiptext";
		txnode.innerHTML = curtitle;
		tsnode.className = "tooltipshield";
		tsnode.src = "about:blank";
     	txnode.id = "tooltext";
		hg = curtitle.length/24;
		tsnode.height=200+(hg*20);
		ttnode.className = "tooltip_ie";
	}
	else{
		var corners = '<span class="tooltiptl"></span><span class="tooltiptr"></span><span class="tooltipbr"></span><span class="tooltipbl"></span>';

		ttnode.innerHTML = curtitle + corners;
		//ttnode.innerHTML = curtitle;
		ttnode.className = "tooltip";
	}

	ttnode.id = "tooltip";

 if (!e) var e = window.event;
	if (e.pageX || e.pageY)
	{
		posx = e.pageX + offset;
		posy = e.pageY + offset;
	}
	else if (e.clientX || e.clientY)
	{
		posx = e.clientX + document.documentElement.scrollLeft + offset;
		posy = e.clientY + document.documentElement.scrollTop + offset;
	}

	if(posx+ttnode.clientWidth > document.documentElement.clientWidth)posx=posx-ttnode.clientWidth-(2*offset);
	if(e.clientY+ttnode.clientHeight > document.documentElement.clientHeight)posy=posy-ttnode.clientHeight-(2*offset);
	ttnode.style.left = posx+"px";
	ttnode.style.top = posy+"px";

};

function mout_doTooltip(){
	ttnode = document.getElementById("tooltip");
	if(ttnode){
//		var brich = getElementsByClassName("infotext",this.parentNode);
		var brich = $('.infotext');
		if(brich != null){this.title=""};
		if(bIEdetected){
			var titleobj = document.getElementById("tooltext");
			}
			else{
				var titleobj = ttnode;
			}
		this.title = titleobj.innerHTML;
		document.body.removeChild(ttnode);
	};
};

function open_dialog(oDialogLink) {

    var dialogElement = document.getElementById('dialog');    
    var dialogUrl = $(".kpn_bh_richdialog").attr("url");
	
    if (!dialogElement) {
        oDialog = document.createElement('div');
        oDialog.id = 'dialog';
        $(oDialog).appendTo('body');
    };
        
    var oUrl = $(oDialogLink).attr('href');
    if (!dialogUrl) {
        $(oDialogLink).attr('href','javascript:void("'+ oUrl +'");');
        $(oDialogLink).attr('url',oUrl);
    };
    	
    $('#dialog').dialog({
        autoOpen: false,
        width: 748,
        minHeight: 500,
        bgiframe: true,
        open: function() {        
            bodyContent = $.ajax({
              url: url,
              type: "GET",
              dataType: "html",
              success: function(data){
                $("#ui-dialog-title-dialog").html($(data).find("h1"));
                $("#dialog").html($(data).find("div.#ph_content"));
//                pM.bindBehaviors();
              },
              complete: function() {
                pM.bindBehaviors();
              }
           }).responseText;
                           
            $(".ui-widget-overlay").bind("click", closeDialogWindowOnOverlayClick);
        },
        buttons: {
            "sluit venster": function() {
                $(this).dialog('close');
            }
        },
        close: function() {
            $("#ui-dialog-title-dialog").empty();
            $("#dialog").empty();
        },
        modal: true
    });
	
    if ($('a').hasClass('autoOpen')){
         $('#dialog').dialog('open');
     };      
	   
    $('.kpn_bh_richdialog').click(function() {
        url = $(this).attr('url');
        $('#dialog').dialog('open');
    });
    
    var closeDialogWindowOnOverlayClick = function(event){
        var closeButton = $(".ui-dialog:visible").find(".ui-dialog-titlebar-close");
        closeButton.trigger("click");
        $(".ui-widget-overlay").unbind("click", closeDialogWindowOnOverlayClick);
    };
};

function doInputToLink(oButton) {
    oLink = document.createElement('a');
    oLink.onclick = oButton.onclick;
    oLink.tabIndex = oButton.tabIndex;
    
    if (oButton.parentNode.className == 'floatLeft') {
        oLink.className = 'dynamicbutton_grey floatLeft';
    }
    else if (oButton.parentNode.className == 'floatRight') {
        oLink.className = 'dynamicbutton_blue floatRight';
    }
    else {
        oLink.className = 'dynamicbutton_grey';
    }
    oLink.innerHTML = '<span>'+ oButton.value +'</span>';
    
//    oButton.parentNode.replaceChild(oLink,oButton);
    $(oButton).removeClass("kpn_bh_dynamicbutton")
                .addClass("hidden DisplayNone");
    $(oLink).insertAfter(oButton);
};

//* swaplist
function click_doSwaplist(e){
    if (!e){
        var e = window.event
    };	
	var bnoLink = false;
	trg = (e.srcElement)?e.srcElement:e.target;
    
    if(trg != null && trg.href != null){ 
        //bnoLink = cssjs("check",trg.parentNode.parentNode,"kpn_bh_swaplist"); 
        bnoLink = $(trg.parentNode.parentNode).hasClass("kpn_bh_swaplist");
        if(bnoLink) {
            e.cancelBubble = true;
            e.returnValue = false;
            if (e.stopPropagation){
                e.stopPropagation();
                e.preventDefault();
			}	
        }
    } 
	if(trg.parentNode.className!="swaplistbullet" && bnoLink){
//        openedNodes = getElementsByClassName("swaplistopen", document);
        openedNodes = $('.swaplistopen');
		if(openedNodes != null){
		    for(t=0;t<openedNodes.length;t++){
			    if(this!=openedNodes[t]){
				    openedNodes[t].className = "swaplistclosed";
				}
			};
		}
		this.className = (this.className=='swaplistopen')? "swaplistclosed" : "swaplistopen";
		return false;
	}
};
//* swaptable
function click_doSwapTable(e){
    if (!e) var e = window.event;
//    sobj = getElementsByClassName("tablepart",this.parentNode);
    sobj = $(".tablepart");
	var nextNode = (this.nextSibling.nodeType != 3)? this.nextSibling : this.nextSibling.nextSibling; 
//    cssjs('swap',this,"childopened","childclosed");
//    cssjs('swap',nextNode,"open","close");
    if ($(this).hasClass("childclosed")) {
        $(this)
            .removeClass("childclosed")
            .addClass("childopened");
        $(nextNode)
            .removeClass("close")
            .addClass("open");
    }
    else if ($(this).hasClass("childopened")) {
        $(this)
            .removeClass("childopened")
            .addClass("childclosed");
        $(nextNode)
            .removeClass("open")
            .addClass("close");
    };
};

// accordion
function init_accordion(e) {
    $('.kpn_bh_accordion').accordion({
        autoHeight: false,
        collapsible: true,
        active: false
    });
};

// tabsbox
function init_tabsbox() {   
    $('.kpn_bh_tabsbox .kpn-box-tl').addClass('hidden');
    $('.kpn_bh_tabsbox').tabs();
};

function init_doFlash(oLink){
	parmurl  = getValueFromUrl(oLink.href,"ra_url");
	parmversie  = getValueFromUrl(oLink.href,"ra_versie");
	parmheight  = getValueFromUrl(oLink.href,"ra_height");
	parmwidth  = getValueFromUrl(oLink.href,"ra_width");
	
	flashembed(oLink, {src: parmurl, wmode: 'opaque', w3c: true });

};

//create iframe container
function init_doIframe(oWrap, sSrc){
    aobj = oWrap.getElementsByTagName('a');
    if(aobj){
            parmheight  = getValueFromUrl(aobj[0].href,"ra_ifheight");
            parmwidth  = getValueFromUrl(aobj[0].href,"ra_ifwidth");
            parmacctitle  = getValueFromUrl(aobj[0].href,"ra_iftitle");
			if(sSrc){
				parmurl = sSrc;
			}
			else{
				parmurl  = aobj[0].href;
			}
			    
			//protocol aware when parmurl != https
			if(parmurl.indexOf('https')==-1){
				aparmurl = parmurl.split('http:');
				protcp = document.location.protocol;
				parmurl = protcp + aparmurl[1];
			};			
	
        fobj = document.createElement('iframe');
        fobj.width = parmwidth;
        fobj.height = parmheight;
        fobj.src = parmurl;
	    fobj.frameBorder = "0";
	    fobj.scrolling = "no";
	    fobj.title = parmacctitle;
	    if(fobj.border){fobj.border = "0"};
	    fobj.style.border = "none";
        
        oWrap.innerHTML = "";
        oWrap.appendChild(fobj);
    };	
};

function click_clearInput(field) {
    
    field = field;
//    prefill = 'type zoekterm';
    prefill = field.value;
    
    $(field).focus(function() {
        if (field.value == prefill) {
            field.value = '';
        }
        else if (field.value == '') {
            field.value = prefill;
        }
    });
    $(field).blur(function() {
        if (field.value == prefill) {
            field.value = '';
        }
        else if (field.value == '') {
            field.value = prefill;
        }
    });
};

function click_refineSearch() {
    $('#internalSearchRefine').removeClass("hidden");
};
function click_refineSearchClose() {
    $('#internalSearchRefine').addClass("hidden");
    $('input').attr('checked','');
};

function init_slider(obj) {
   ecol = $(".kpn_bh_slider");
   for(t=0;t<ecol.length;t++) {
        $(ecol[t])
            .addClass("hidden")
            .removeClass("kpn_bh_slider");
        $("span.valueParam").addClass("hidden");        
        $('<span class="construct_slider">'+$(ecol[t]).attr("value")+'</span>')
            .attr("id", "s_"+$(ecol[t]).attr("id"))
            .insertAfter(ecol[t]);
        
        wrcol = $(ecol[t])[0];
        construct_slider(wrcol);
   }   
};
function construct_slider(wrcol) {
    $.extend($.ui.slider.defaults, {
        range: 'min',
        orientation: 'horizontal',
        animate: true
    });
        
    $(".construct_slider", wrcol.parentNode).each(function() {
        var addParam = $(".valueParam", wrcol.parentNode).text();
        var value = parseInt($(this).text());
        $(this).empty();
        $(this).slider({
            value: value,
            slide: function(event, ui) {
                $("#"+this.id+"amount").text(ui.value + addParam);
                wrcol.value = ui.value;
            }
        })
        test = ("#"+this.id+"amount");
        $("#"+this.id+"amount").text($("#"+this.id).slider("value")+addParam);
        
    });    
};

function init_shoppingbasketcm(e) {
    if ($.cookie('KPNCM_ISBASKET') == null) {
        $(e).html("0 items");
    }
    else {
        $(e).html($.cookie('KPNCM_ISBASKET') + " items");
    }
};
function init_shoppingbasketzm(e) {
    if ($.cookie('KPN_ISBASKET') == null) {
        $(e).html("0 items");
    }
    else {
        $(e).html($.cookie('KPN_ISBASKET') + " items");
    }
};

function init_addquotes(e) {
    $('<img src="/v2/static/kpncom/images/css/quote-open.png" alt="quote open" />').prependTo('.blockquote');
    $('<img src="/v2/static/kpncom/images/css/quote-close.png" alt="quote close" />').appendTo('.blockquote');    
};