//=================================OPBOUW VAN DIT BESTAND============================================
//Met de functies in dit bestand kunnen de standaard-elementen van de magnet worden opgeleukt.
//Standaard staan deze functies aan en kunnen elementen hiervan gewijzigd worden.
//Achter elke optie (of boven de functie) staat in het commentaar (zoals dit) beschreven wat je kunt wijzigen
//Erboven staat ook hoe je de functies helemaal uit kunt zetten.
//Daarna staat waar je eventueel de stylesheets moet/mag aanpassen
$(document).ready(function() {

$('ul.accmenu li ul').css('display','none');
$('ul.accmenu').css('display','block');

//laad dit stylesheet enkel als javascrip aan staat
    $("head").append("<link>");
    css = $("head").children(":last");
    css.attr({
      rel:  "stylesheet",
      type: "text/css",
      href: "/css/jqueryEnabled.css"
    });

//======================================SUPERSUCKERFISH-MENU============================================
//uitzetten? verwijder de class 'supermenu' dan uit de master-page
//in de standaard stylesheet (domein.css) staan alle .supermenu styles. (Suckerfish styles.)
supermenu(
		  'supermenu',//1: de class van de navigatie-ul
		  'h',//2: h voor horizontaal menu / v voor verticaal menu
		  '100',//3: breedte van het menu in het geval van een verticaal menu
		  'fade1',//4: fade1 om te faden / anders fade0
		  'slide0',//5: slide1 om te sliden / anders slide0
		  'slow',//6: snelheid van de animatie. Dit kan 'slow','medium','fast' zijn of een getal in milliseconden
		  500,//7: delay. De duur dat het submenu blijft staan wanneer je muis er vanaf is in milliseconden
		  'arrows1',//8: arrows1 om pijltjes bij menuitems met submenu's te laten zien. Anders arrows0
		  8,//9: de minimal breedte van een submenu in em (n.b. de breedte van de sub-ul wordt dynamisch aangepast adhv de tekst in de knoppen)
		  12//10: de maximale breedte van een submenu in em
		  );
	
//======================================ACCORDEON-MENU============================================
//uitzetten? verwijder de class 'accmenu' dan uit de master-page
//in de standaard stylesheet (domein.css) staan alle .accmenu styles.
accmenu('accmenu');	

//======================================TAALKEUZEMENU============================================
//uitzetten? Verander dan hier de classname van 'languagemenu' naar bv. 'languagemenuoff'
//1: de classname van het taalmenu
//2: delay. De duur dat het submenu blijft staan wanneer je muis er vanaf is in milliseconden
//3: fade of slide
languagemenu('languagemenu',300,'fade');

//======================================ALGEMENE SETTINGS============================================
var popwidth = 700; //standaard breedte van de lightbox
var popheight = 600; //standaard hoogte van de lightbox
var VautoDimensions = false; //zet op true als lightbox zelf de afmetingen moet detecteren. Anders false.
//$('head').append('<link rel="stylesheet" href="css/$Enabled.css" type="text/css" />');
  
var maincontent = function(scope){

//FAQ
accordion('AccordionPanelTab','AccordionPanelContent');

//======================================FOTOALBUM============================================
//uitzetten kan door voor de volgende regels een dubbele slash (zoals deze regel) te zetten.
//stylesheet om aan te passen galleriffic-2.css
myGallery(
		  10, 			//1: het aantal thumbnail tonen per pagina
		  false, 		//2: navigatie boven thumbnails aan
		  true, 		//3: navigatie onder thumbnails aan
		  false, 		//4: toon div class='nav-controls' met volgende/vorige links
		  false,  		//5: start als slideshow
		  7000,			//6: duratie tussen foto's in slideshow
		  true,			//7: Opent klikken op de grote foto de originele foto in een lightbox?
		  'elastic',	//8: Hoe opent de lightbox. Opties: 'elastic','fade' of 'none'
		  500,			//9: Hoe lang duurt voorgaand effect in milliseconden
		  true			//10: Toon de titel onder de foto
		  );

//======================================LINKS IN LIGHTBOX OPENEN============================================
//uitzetten kan door voor de volgende regel een dubbele slash (zoals deze regel) te zetten.
//1: De tag waarnaar wordt gekeken. Dit kan een id, class, of iets zelfverzonnens zijn.
//2: De waarde van de bovenstaande tag.
//Wanneer dus linklb('title','popup') hieronder staat worden alle links met de volgende tag in een lightbox
//geopend: title='popup'
linklb('title','popup');
linklb('rel','lightbox-3');


//======================================PNG FIX============================================
//uitzetten kan door voor de volgende regel een dubbele slash (zoals deze regel) te zetten.
$(function(){$(document).pngFix();});

//======================================MAGNIFIER============================================
//Alle plaatjes in een paragraaf met als title 'zoom' krijgen een zoom-functie
magnifier('title','zoom');

//=========================================================================================
//=============================HIERONDER NIKS AANPASSEN!!!!================================


//ACCORDION BUTTON ACTION	

//tagcloud Gebruik: div moet tagcloud heten en elementen gescheiden door punt-comma
if ($('#tagcloud').length > 0){
	var tg = $('#tagcloud').html();
	$('#tagcloud').html('');
	$('#tagcloud').css({
						   'text-align':'center'
						   });
	var arr1 = tg.split(';');
	var newlist = '';
	var colors = ['#CCC','#999','#666'];
	$.each(arr1,function(index){

			var tmp = '<span style="font-size:'+$.randomBetween(9, 20)+'px;line-height:18px;color:'+colors[$.randomBetween(0, 2)]+'">';
			newlist = newlist + (tmp+arr1[index]+'</span>&nbsp;');
	   })
	$('#tagcloud').html(newlist);
}

} // einde maincontent


function magnifier(v1,v2){
	$('img['+v1+'*='+v2+']').each(function(){
			$(this).wrap('<a href="'+$(this).attr('src').replace('_Content','___Source')+'" rel="magnify"/>');
		$('a[rel*=magnify]').magnify({lensWidth:200, lensHeight:200, link:false, delay:100});
		}); 
}

function accordion(v1,v2){
	$("."+v2).hide();
	$("."+v1).click(function() {
		$("."+v2).slideUp();	
		$(this).next().slideDown();
	});
}

//AGN-ONLINE SPECIFIC==========================



function accmenu(){
	if ($('.accmenu').length > 0){
		$('li.menu a').each(function(){
			$(this).next('ul:first').addClass('ulselected');
			$(this).parent().parent('ul.ulselected').addClass('ulselectedparent');			
			});
		initMenu();
	}
}
function initMenu() {
  $('.aOpen').next().css('display','block');
  checkmenuheight()
  $('.accmenu > li > a').click(
    function() {
		$('.accmenu ul').slideUp();
        $(this).next().slideToggle(function(){
				checkmenuheight();
			});	
      }  
    );
  }
function checkmenuheight(){
	var totalheight = 0;
	$('#dropdown > li').each(function(){totalheight = totalheight + $(this).height();});
		if(totalheight >= 380){
			$('.sidenav').animate({'minHeight':totalheight+totalheight-380});
		}else{
			$('.sidenav').animate({'minHeight':'324px'});
		}				
}
//willekeurig iconen tonen rechtsonder
var selicons = function(){
	if ($('ul#icons li').length > 0){
		$('ul#icons li').css('display','none');
		var idarr = $('ul#icons li');
		$.shuffle(idarr);
		$.each(idarr,function(index){
			if (index <= 2){ //verhoog dit getal als je er meer wilt laten zien. bv. 4 tonen = 3
				$(this).css('display','block'); //standaard staat de li op display:none; Hier worden er 3 at random op display:block; gezet.
			}
		});
	}
}
selicons();

//fading rollover voor topnav
var mainli = $('.mainnav ul li');
if(mainli.length > 0){
	mainli.each(function(index){
			tref = ($(this).children('a').attr('href'));
			$(this).append('<a class="rollover"></a>');
			$(this).children('.rollover').height($(this).height());
			$(this).children('.rollover').width($(this).children('a').width());
			var vbg = $(this).children('a').css('background-image');
			$(this).children('.rollover').hide();
			$(this).children('.rollover').css({'overflow':'hidden','background-position':'0px 0px','background-image':vbg,'postion':'absolute','margin-top':-$(this).height()});
			$(this).children('.rollover').attr('href',tref);
			$(this).children('a').mouseenter(function(){
					$(this).siblings('.rollover').fadeIn();
				});	
			$(this).children('.rollover').mouseleave(function(){
					$(this).fadeOut();
				});
		});
}

//sitemap
var sm = $('#sitemap');
var sml = $('#sitemaplink');
var smh = $('#sitemaplinks').height();
sml.click(function(){
		if(sm.attr('class') == 'open'){
			sm.animate({'height':'65px','top':'0px'},'normal','swing');
			sm.removeClass('open');
			sml.css('background-image',sml.css('background-image').replace('close','open'));			
		}else{
			sm.animate({'height':smh+85+'px','top':-smh-20+'px'},'normal','swing');
			sm.addClass('open');
			sml.css('background-image',sml.css('background-image').replace('open','close'));
		}
		return false;
	});

//fix om het sidenav menu te openen wanneer je direct op een subpagina terecht komt
if ($('.subcurrent')){$('.subcurrent').parent().parent().addClass('current');}

//icandy in linkerbalk
if($('.pageclass_home .icandy1').length > 0){
	var ic = $('.pageclass_home .icandy1');
	var carr = $('.pageclass_home .icandy1 li')	
	var arrle = carr.length;
	var zin = 1;	
}

slideSwitch(3500);
$(function() {
    setInterval( 'slideSwitch(3500)', 5000 );
});

//IMAGEMENU (overlappende plaatjes)

if ($('imageMenu')) {
$('#imageMenu ul li a').each(function(){
			$(this).css('background-image','url(img/portfolio1/'+$(this).parent().attr('class')+'.jpg)');
		});
	$('#imageMenu ul').kwicks({max : 320,  spacing : 2  }); 
}




//AGN-ONLINE SPECIFIC==========================


function linklb(v1,v2){
	$('a['+v1+'="'+v2+'"]').each(function(){
			var vurl = $(this).attr('href');
			var pathname = window.location.host; 
			$(this).attr('id','#actpop-'+$(this).index()).attr('href','#pop-'+$(this).index()).after('<div style="display:none;"><div class="popup" id="pop-'+$(this).index()+'"></div></div>');
			$('#pop-'+$(this).index()+' #maincontent').remove();
			var vnavarrows = false;
				if ((vurl.indexOf('.jpg') >= 0) || (vurl.indexOf('.gif') >= 0) || (vurl.indexOf('.png') >= 0)){
					$(this).attr('href',$(this).find('img').attr('src').replace('icon_big','large'));
					vnavarrows = true;
				}else if ((vurl.indexOf(pathname) >= 0)){
					$('#pop-'+$(this).index()).load(vurl+' #maincontent span');
				}else{
					$(this).attr({'href':vurl,'class':'iframe'});
				}
			$(this).fancybox({
			'width'			:	popwidth,
			'height'		:	popheight,
			'autoDimensions'	: VautoDimensions,
			'transitionIn'	:	'fade',
			'transitionOut'	:	'fade',
			'speedIn'		:	500, 
			'speedOut'		:	500, 
			'overlayShow'	:	true,
			'hideOnContentClick'	: false,
			'overlayOpacity'	: 0.85,
			'overlayColor'	:	'#000000',
			'showNavArrows'	:	vnavarrows,
			'titleShow'		:	false			   
		}); 
		//return false;
	});
}

function loadfancybox(target,lightbfx,lightdur,lightit){ // options > http://fancybox.net/api
	target.fancybox({
		'transitionIn'	:	lightbfx,
		'transitionOut'	:	lightbfx,
		'speedIn'		:	lightdur, 
		'speedOut'		:	lightdur, 
		'overlayShow'	:	true,
		'hideOnContentClick'	: true,
		'overlayOpacity'	: 0.85,
		'overlayColor'	:	'#000000',
		'showNavArrows'	:	false,
		'titleShow'		:	lightit
	});
}

// We only want these styles applied when javascript is enabled
function myGallery(thumbs,toppag,botpag,NavControls,slidesh,ssdur,lighb,lightbfx,lightdur,lightit){
	if ($('#thumbs').length > 0){
		$('div.navigation').css({'width' : '300px', 'float' : 'left'});
		//$('div.content').css('display', 'block');
		// Initialize Advanced Galleriffic Gallery
		var gallery = $('#thumbs').galleriffic({
			delay:                     ssdur,
			numThumbs:                 thumbs,
			preloadAhead:              14,
			enableTopPager:            toppag,
			enableBottomPager:         botpag,
			//maxPagesToShow:            7,
			imageContainerSel:         '#slideshow',
			controlsContainerSel:      '#controls',
			captionContainerSel:       '#caption',
			loadingContainerSel:       '#loading',
			renderSSControls:          false,
			renderNavControls:         NavControls,
			playLinkText:              'Start Slideshow',
			pauseLinkText:             'Pauzeer Slideshow',
			prevLinkText:              '&lsaquo; Vorige foto',
			nextLinkText:              'Volgende foto &rsaquo;',
			nextPageLinkText:          'Volgende &rsaquo;',
			prevPageLinkText:          '&lsaquo; Vorige',
			enableHistory:             false,
			autoStart:                 slidesh,
			syncTransitions:           true,
			defaultTransitionDuration: 1500,
			onSlideChange:             function(prevIndex, nextIndex) {
				// 'this' refers to the gallery, which is an extension of $('#thumbs')
				this.find('ul.thumbs').children()
					.eq(prevIndex).fadeTo('fast', vaag).end()
					.eq(nextIndex).fadeTo('fast', 1.0);
			},
			onPageTransitionOut:       function(callback) {
				this.fadeTo('fast', 0.0, callback);
			},
			onPageTransitionIn:        function() {
				this.fadeTo('fast', 1.0)
			},
			onTransitionIn:         function(slide, caption, isSync) {
						if (lighb == true){
							loadfancybox($("span.current a"),lightbfx,lightdur,lightit);
						}
						var duration = this.getDefaultTransitionDuration(isSync);
						slide.fadeTo(duration, 1.0);
						caption.fadeTo(duration, 1.0);
			}
		
	});
	var vaag = 0.67;
	$('#thumbs ul.thumbs li a img').css('opacity',vaag);
	$('#thumbs ul.thumbs li a img').hover(function(){
											 $(this).fadeTo('fast',1);
											 },
											 function(){
											 $(this).fadeTo('fast',vaag);
											 });
											}

	}


maincontent(this);

});//end

/*
 * Superfish v1.4.8 - $ menu widget
 * Copyright (c) 2008 Joel Birch
 *
 * Dual licensed under the MIT and GPL licenses:
 * 	http://www.opensource.org/licenses/mit-license.php
 * 	http://www.gnu.org/licenses/gpl.html
 *
 * CHANGELOG: http://users.tpg.com.au/j_birch/plugins/superfish/changelog.txt
 */
;(function($){
	$.fn.superfish = function(op){

		var sf = $.fn.superfish,
			c = sf.c,
			$arrow = $(['<span class="',c.arrowClass,'"> &#187;</span>'].join('')),
			over = function(){
				var $$ = $(this), menu = getMenu($$);
				clearTimeout(menu.sfTimer);
				$$.showSuperfishUl().siblings().hideSuperfishUl();
			},
			out = function(){
				var $$ = $(this), menu = getMenu($$), o = sf.op;
				clearTimeout(menu.sfTimer);
				menu.sfTimer=setTimeout(function(){
					o.retainPath=($.inArray($$[0],o.$path)>-1);
					$$.hideSuperfishUl();
					if (o.$path.length && $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);}
				},o.delay);	
			},
			getMenu = function($menu){
				var menu = $menu.parents(['ul.',c.menuClass,':first'].join(''))[0];
				sf.op = sf.o[menu.serial];
				return menu;
			},
			addArrow = function($a){ $a.addClass(c.anchorClass).append($arrow.clone()); };
			
		return this.each(function() {
			var s = this.serial = sf.o.length;
			var o = $.extend({},sf.defaults,op);
			o.$path = $('li.'+o.pathClass,this).slice(0,o.pathLevels).each(function(){
				$(this).addClass([o.hoverClass,c.bcClass].join(' '))
					.filter('li:has(ul)').removeClass(o.pathClass);
			});
			sf.o[s] = sf.op = o;
			
			$('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ? 'hoverIntent' : 'hover'](over,out).each(function() {
				if (o.autoArrows) addArrow( $('>a:first-child',this) );
			})
			.not('.'+c.bcClass)
				.hideSuperfishUl();
			
			var $a = $('a',this);
			$a.each(function(i){
				var $li = $a.eq(i).parents('li');
				$a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);});
			});
			o.onInit.call(this);
			
		}).each(function() {
			var menuClasses = [c.menuClass];
			if (sf.op.dropShadows  && !($.browser.msie && $.browser.version < 7)) menuClasses.push(c.shadowClass);
			$(this).addClass(menuClasses.join(' '));
		});
	};

	var sf = $.fn.superfish;
	sf.o = [];
	sf.op = {};
	sf.IE7fix = function(){
		var o = sf.op;
		if ($.browser.msie && $.browser.version > 6 && o.dropShadows && o.animation.opacity!=undefined)
			this.toggleClass(sf.c.shadowClass+'-off');
		};
	sf.c = {
		bcClass     : 'sf-breadcrumb',
		menuClass   : 'sf-js-enabled',
		anchorClass : 'sf-with-ul',
		arrowClass  : 'sf-sub-indicator',
		shadowClass : 'sf-shadow'
	};
	sf.defaults = {
		hoverClass	: 'sfHover',
		pathClass	: 'overideThisToUse',
		pathLevels	: 1,
		delay		: 800,
		animation	: 'fadeslide',
		speed		: 'normal',
		autoArrows	: true,
		dropShadows : true,
		disableHI	: false,		// true disables hoverIntent detection
		onInit		: function(){}, // callback functions
		onBeforeShow: function(){},
		onShow		: function(){},
		onHide		: function(){}
	};
	$.fn.extend({
		hideSuperfishUl : function(){
			var o = sf.op,
				not = (o.retainPath===true) ? o.$path : '';
			o.retainPath = false;
			var $ul = $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass)
					.find('>ul').stop(true,true).hide().css('visibility','hidden');
			o.onHide.call($ul);
			return this;
		},
		showSuperfishUl : function(){
			var o = sf.op,
				sh = sf.c.shadowClass+'-off',
				$ul = this.addClass(o.hoverClass)
					.find('>ul:hidden').css('visibility','visible');
			sf.IE7fix.call($ul);
			if (o.animation == 'fadeslide'){
				o.animation = {opacity:'show',height:'show'};
			}else
			if (o.animation == 'none'){
				o.animation = {opacity:'show'};
				o.speed = 0;
			}else
			if (o.animation == 'fade'){
				o.animation = {opacity:'show'};
			}else
			if (o.animation == 'slide'){
				o.animation = {height:'show'};
			}
			o.onBeforeShow.call($ul);
			
			$ul.animate(o.animation,o.speed,function(){ sf.IE7fix.call($ul); o.onShow.call($ul); });
			return this;
		}
	});

})($);


/*
 * Supersubs v0.2b - $ plugin
 * Copyright (c) 2008 Joel Birch
 *
 * Dual licensed under the MIT and GPL licenses:
 * 	http://www.opensource.org/licenses/mit-license.php
 * 	http://www.gnu.org/licenses/gpl.html
 *
 *
 * This plugin automatically adjusts submenu widths of suckerfish-style menus to that of
 * their longest list item children. If you use this, please expect bugs and report them
 * to the $ Google Group with the word 'Superfish' in the subject line.
 *
 */

;(function($){ // $ will refer to $ within this closure

	$.fn.supersubs = function(options){
		var opts = $.extend({}, $.fn.supersubs.defaults, options);
		// return original object to support chaining
		return this.each(function() {
			// cache selections
			var $$ = $(this);
			// support metadata
			var o = $.meta ? $.extend({}, opts, $$.data()) : opts;
			// get the font size of menu.
			// .css('fontSize') returns various results cross-browser, so measure an em dash instead
			var fontsize = $('<li id="menu-fontsize">&#8212;</li>').css({
				'padding' : 0,
				'position' : 'absolute',
				'top' : '-999em',
				'width' : 'auto'
			}).appendTo($$).width(); //clientWidth is faster, but was incorrect here
			// remove em dash
			$('#menu-fontsize').remove();
			// cache all ul elements
			$ULs = $$.find('ul');
			// loop through each ul in menu
			$ULs.each(function(i) {	
				// cache this ul
				var $ul = $ULs.eq(i);
				// get all (li) children of this ul
				var $LIs = $ul.children();
				// get all anchor grand-children
				var $As = $LIs.children('a');
				// force content to one line and save current float property
				var liFloat = $LIs.css('white-space','nowrap').css('float');
				// remove width restrictions and floats so elements remain vertically stacked
				var emWidth = $ul.add($LIs).add($As).css({
					'float' : 'none',
					'width'	: 'auto'
				})
				// this ul will now be shrink-wrapped to longest li due to position:absolute
				// so save its width as ems. Clientwidth is 2 times faster than .width() - thanks Dan Switzer
				.end().end()[0].clientWidth / fontsize;
				// add more width to ensure lines don't turn over at certain sizes in various browsers
				emWidth += o.extraWidth;
				// restrict to at least minWidth and at most maxWidth
				if (emWidth > o.maxWidth)		{ emWidth = o.maxWidth; }
				else if (emWidth < o.minWidth)	{ emWidth = o.minWidth; }
				emWidth += 'em';
				// set ul to width in ems
				$ul.css('width',emWidth);
				// restore li floats to avoid IE bugs
				// set li width to full width of this ul
				// revert white-space to normal
				$LIs.css({
					'float' : liFloat,
					'width' : '100%',
					'white-space' : 'normal'
				})
				// update offset position of descendant ul to reflect new width of parent
				.each(function(){
					var $childUl = $('>ul',this);
					var offsetDirection = $childUl.css('left')!==undefined ? 'left' : 'right';
					$childUl.css(offsetDirection,emWidth);
				});
			});
			
		});
	};
	// expose defaults
	$.fn.supersubs.defaults = {
		minWidth		: 9,		// requires em unit.
		maxWidth		: 25,		// requires em unit.
		extraWidth		: 0			// extra width can ensure lines don't sometimes turn over due to slight browser differences in how they round-off values
	};
	
})($); // plugin code ends


//z-index fix for IE7
if ($.browser.msie){
var zIndexNumber = 1000;
$('#navigatie').find('li').each(function(i){
	$(this).css('z-index',zIndexNumber);
	zIndexNumber -= 10;
	});
};

/**
 * --------------------------------------------------------------------
 * $-Plugin "pngFix"
 * Version: 1.2, 09.03.2009
 * by Andreas Eberhard, andreas.eberhard@gmail.com
 *                      http://$.andreaseberhard.de/
 *
 * Copyright (c) 2007 Andreas Eberhard
 * Licensed under GPL (http://www.opensource.org/licenses/gpl-license.php)
 *
 * Changelog:
 *    09.03.2009 Version 1.2
 *    - Update for $ 1.3.x, removed @ from selectors
 *    11.09.2007 Version 1.1
 *    - removed noConflict
 *    - added png-support for input type=image
 *    - 01.08.2007 CSS background-image support extension added by Scott Jehl, scott@filamentgroup.com, http://www.filamentgroup.com
 *    31.05.2007 initial Version 1.0
 * --------------------------------------------------------------------
 * @example $(function(){$(document).pngFix();});
 * @desc Fixes all PNG's in the document on document.ready
 *
 * $(function(){$(document).pngFix();});
 * @desc Fixes all PNG's in the document on document.ready when using noConflict
 *
 * @example $(function(){$('div.examples').pngFix();});
 * @desc Fixes all PNG's within div with class examples
 *
 * @example $(function(){$('div.examples').pngFix( { blankgif:'ext.gif' } );});
 * @desc Fixes all PNG's within div with class examples, provides blank gif for input with png
 * --------------------------------------------------------------------
 */

(function($) {

$.fn.pngFix = function(settings) {

	// Settings
	settings = $.extend({
		blankgif: 'blank.gif'
	}, settings);

	var ie55 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 5.5") != -1);
	var ie6 = (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.appVersion) == 4 && navigator.appVersion.indexOf("MSIE 6.0") != -1);

	if ($.browser.msie && (ie55 || ie6)) {

		//fix images with png-source
		$(this).find("img[src$=.png]").each(function() {

			$(this).attr('width',$(this).width());
			$(this).attr('height',$(this).height());

			var prevStyle = '';
			var strNewHTML = '';
			var imgId = ($(this).attr('id')) ? 'id="' + $(this).attr('id') + '" ' : '';
			var imgClass = ($(this).attr('class')) ? 'class="' + $(this).attr('class') + '" ' : '';
			var imgTitle = ($(this).attr('title')) ? 'title="' + $(this).attr('title') + '" ' : '';
			var imgAlt = ($(this).attr('alt')) ? 'alt="' + $(this).attr('alt') + '" ' : '';
			var imgAlign = ($(this).attr('align')) ? 'float:' + $(this).attr('align') + ';' : '';
			var imgHand = ($(this).parent().attr('href')) ? 'cursor:hand;' : '';
			if (this.style.border) {
				prevStyle += 'border:'+this.style.border+';';
				this.style.border = '';
			}
			if (this.style.padding) {
				prevStyle += 'padding:'+this.style.padding+';';
				this.style.padding = '';
			}
			if (this.style.margin) {
				prevStyle += 'margin:'+this.style.margin+';';
				this.style.margin = '';
			}
			var imgStyle = (this.style.cssText);

			strNewHTML += '<span '+imgId+imgClass+imgTitle+imgAlt;
			strNewHTML += 'style="position:relative;white-space:pre-line;display:inline-block;background:transparent;'+imgAlign+imgHand;
			strNewHTML += 'width:' + $(this).width() + 'px;' + 'height:' + $(this).height() + 'px;';
			strNewHTML += 'filter:progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + $(this).attr('src') + '\', sizingMethod=\'scale\');';
			strNewHTML += imgStyle+'"></span>';
			if (prevStyle != ''){
				strNewHTML = '<span style="position:relative;display:inline-block;'+prevStyle+imgHand+'width:' + $(this).width() + 'px;' + 'height:' + $(this).height() + 'px;'+'">' + strNewHTML + '</span>';
			}

			$(this).hide();
			$(this).after(strNewHTML);

		});

		// fix css background pngs
		$(this).find("*").each(function(){
			var bgIMG = $(this).css('background-image');
			if(bgIMG.indexOf(".png")!=-1){
				var iebg = bgIMG.split('url("')[1].split('")')[0];
				$(this).css('background-image', 'none');
				$(this).get(0).runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + iebg + "',sizingMethod='scale')";
			}
		});
		
		//fix input with png-source
		$(this).find("input[src$=.png]").each(function() {
			var bgIMG = $(this).attr('src');
			$(this).get(0).runtimeStyle.filter = 'progid:DXImageTransform.Microsoft.AlphaImageLoader' + '(src=\'' + bgIMG + '\', sizingMethod=\'scale\');';
   		$(this).attr('src', settings.blankgif)
		});
	
	}
	
	return $;

};
})($);

//supermenu
function supermenu(classofmenu,horver,v_width,fade1,slide1,speed,delay,arrows,ssmin,ssmax){
	if (horver == 'v'){
		$("ul."+classofmenu).addClass('sf-vertical');
		$(".sf-vertical, .sf-vertical li").css('width',v_width+"px");
		$(".sf-vertical li ul,.sf-vertical li.sfHover ul").css('left',v_width+"px");
	}

	var vspeed = speed;
	var vdelay = delay;	
	var vani = 'fadeslide';
	if(fade1 == "fade1" && slide1 == "slide1"){vani = 'fadeslide'}else
	if(fade1 == "fade0" && slide1 == "slide0"){vani = 'none'}else	
	if(fade1 == "fade1"){vani = 'fade'}else
	if(slide1 == "slide1"){vani = 'slide'}
	var varrows = false;
	if (arrows == 'arrows1'){varrows = true}
	$("ul."+classofmenu).supersubs({ 
	    minWidth:    ssmin,   // minimum width of sub-menus in em units 
	    maxWidth:    ssmax,   // maximum width of sub-menus in em units 
	    extraWidth:  1     // extra width can ensure lines don't sometimes turn over 
	                       // due to slight rounding differences and font-family 
	}).superfish({ 
	    delay:       vdelay,                            // one second delay on mouseout 
	    animation:   vani,  							// fade-in and slide-down animation 
	    speed:       vspeed,                          // faster animation speed 
	    autoArrows:  varrows,                           // disable generation of arrow mark-up 
	    dropShadows: false ,                         // disable drop shadows 
	    onInit:        function(){},     			  // callback function fires once Superfish is initialised – 'this' is the containing ul 
	    onBeforeShow:  function(){},     			  // callback function fires just before reveal animation begins – 'this' is the ul about to open 
	    onShow:        function(){},     			  // callback function fires once reveal animation completed – 'this' is the opened ul 
	    onHide:        function(){}     			 // callback function fires after a sub-menu has closed – 'this' is the ul that just closed     
		});								  			// call supersubs first, then superfish, so that subs are 
									                 // not display:none when measuring. Call before initialising 
									                 // containing tabs for same reason. 

}

//==================================
function languagemenu(classname,timout,fx){
	var fx = fx;
	var langlist = $('.'+classname);
	if(langlist.length > 0){
		langlist.css({'display':'none','position':'absolute','top':'0px','left':'0px'});
		langlist.wrap('<div id="langwrap" style="position:relative;"/>');
		$('#langwrap').wrap('<div id="langposition"/>');
		langlist.before('<div id="activelang" style="position:absolute;top:0px;left:0px;"><a href="javascript:void(0);" style="display:block;">'+$('.languagemenu li a.selected,.languagemenu li a.open,.languagemenu li a.openselected').html()+'</a></div>');	

			
			function showmenu(){
				if(fx == 'fade'){
					langlist.stop(true,true).fadeIn();
				}else if (fx == 'slide'){
					langlist.stop(false,true).slideDown();					
				}
			}
			function hidemenu(){
				if(fx == 'fade'){
					langlist.fadeOut();
				}else if (fx == 'slide'){
					langlist.slideUp();					
				}
			}
			
			$("#activelang a") 
			.mouseover( function() { 
					showmenu(); 
			}) 
			.mouseout( function() { 
					t = setTimeout(function(){ 
							hidemenu()                                      
					}, timout); // adjust your time here 
			}); 


			langlist.hover(function(){ 
					clearTimeout(t); 
			},function(){ 
					hidemenu();                                              
			}); 
	}

}
//shuffle function
//$('ul').shuffle();
//var arr = [1,2,3,4,5,6];
//arr = $.shuffle(arr);
(function($){
  $.fn.shuffle = function() {
    return this.each(function(){
      var items = $(this).children();
      return (items.length)
        ? $(this).html($.shuffle(items))
        : this;
    });
  }
 
  $.shuffle = function(arr) {
    for(
      var j, x, i = arr.length; i;
      j = parseInt(Math.random() * i),
      x = arr[--i], arr[i] = arr[j], arr[j] = x
    );
    return arr;
  }
})($);

//slideshow
function slideSwitch(v1) {
    var $active = $('#slideshow IMG.active');

    if ( $active.length == 0 ) $active = $('#slideshow IMG:last');

    var $next =  $active.next().length ? $active.next()
        : $('#slideshow IMG:first');

    $active.addClass('last-active');

    $next.css({opacity: 0.0})
        .addClass('active')
        .animate({opacity: 1.0}, v1, function() {
            $active.removeClass('active last-active');
        });
}

// * Usage:
// * $.random(int);
// * $.randomBetween(min, max);
$.extend({
	random: function(X) {
	    return Math.floor(X * (Math.random() % 1));
	},
	randomBetween: function(MinV, MaxV) {
	  return MinV + $.random(MaxV - MinV + 1);
	}
});

