/**
 * Default javascript functions
 *
 * @package TemplateFramework
 * @subpackage Javascript
 * @author created by: Axel Michel, UnitB technology GmbH
 * @author created by: Stefan Jacobi, UnitB technology GmbH
 * @author refactored by: Florian Zuckschwerdt, Maris Consulting GmbH
 * @author last modified by: $Author: evams $
 * @version $Rev: 2173 $ - $Date: 2010-11-11 18:16:10 +0100 (Do, 11 Nov 2010) $ - $HeadURL: http://be-subversion.eu.schering.net/svn/webkit/TemplateFrameWork/trunk/TeamsiteBranches/NewBranch/static/js/defaults.js $
 */
 
var currSize = 1;

function switchStyleSheetSrc(size) {
    var styleName = 'size'+size;
    $('link[rel*="style"][title]').each(function() {
        this.disabled = true;
        if($(this).attr('title')==styleName) {
            this.disabled = false;
        }
    });
    $.cookie('styles',size,{expires:7,path:'/'});
}

function switchToPrintStyleSheet() {
	switchStyleSheetSrc(1);
	$.get("/static/css/print.css", function(css) {
		$("head").append("<style type='text/css'>"+css+"</style>");
		window.print();
	});
}

function disableAll() {
    $('link[rel*="style"]').each(function() {
        this.disabled = true;
    });
}

function updatePlayer(id){
	createPlayer(videos[id]);
	$("#videoTitle").html(videos[id]['title']);
	$("#videoDesc").html(videos[id]['desc']);
	$("#fbtvlink").attr('href',videos[id]['fblink']);
	$("#twtvlink").attr('href',videos[id]['tweet']);
	$("html, body").animate({scrollTop : 0},1000);
}
function createPlayer(video){
	
	if(!isMacMobileDevice){
		var vars_flash = {
				
		}
		var params_flash = {
			allowfullscreen  : true,
			quality          : 'high',
			play             : 'true',
			loop             : 'true',
			menu             : 'false',
			wmode            : 'opaque',
			bgcolor          : '#FFFFFF',
			allowscriptaccess: 'always'
		};
		var attributes_flash = {
			styleclass : ''
		};
		swfobject.embedSWF(video['url'], "videoPlayer", "640", "390", "9,0,0,0", "expressInstall.swf", vars_flash, params_flash, attributes_flash);
	}else{
		$("#videoPlayer").html('<a href="/static/media/video/'+ video['id'] +'.mp4"><img id="playerimage" src="/static/media/images/upload/youtube/' + video['id'] + '.jpg" border="0" width="480" height="360" /></a>');
//		$('#playerimage').attr('scr','/static/media/images/upload/youtube/' + video['id'] + '.jpg');
	}
}
function reset(){
	$(".videoListInner").css({"display":"block"});
}

function updateActiveState(vidId){
	reset();
	$("#" + vidId).parent().parent().css({"display":"none"});
}
 

function setBookmark()
{
    var bookmarkurl = location.href;
    var title = document.title.replace(/[\<\>\|\":\*\?\\]/g ,"");
    if (window.sidebar) { // Mozilla Firefox Bookmark
        window.sidebar.addPanel(title, bookmarkurl,"");
    } else if( window.external ) { // IE Favorite
        window.external.AddFavorite( bookmarkurl, title);
    } else if(window.opera && window.print) { // Opera Hotlist
        return true;
    }
}

$().ready(function() {
	$('body.home .rightCol').jScrollPane({
		showArrows: true
	});
	$('ul.sf-menu').superfish({autoArrows: false});
	$("a.swf").fancybox({
		'padding' : 0,
		'autoScale' : false,
		'transitionIn' : 'none',
		'transitionOut' : 'none'
	});
	$(".vid").click(function() {
		var vidId = $(this).attr("id");
		updateActiveState(vidId);
		updatePlayer(vidId);
	}); 
	$(".tvlink").click(function() {
		var vidId = $(this).prev().attr("id");
		updateActiveState(vidId);
		updatePlayer(vidId);
	}); 
	$("a#countries").click(function(){
		return false;
	});
	
	$(".teaserlink a:not(.special)").hover(
		function(){
			$(this).prev().css('backgroundPosition','left 0px');
		},
		function(){
			$(this).prev().css('backgroundPosition','left -26px');
		}
	);
	$(".teaserlink a.twitter, ").hover(
			function(){
				$(this).prev().css('backgroundPosition','left -4px');
			},
			function(){
				$(this).prev().css('backgroundPosition','left -50px');
			}
		);
	$(".teaserlink a.facebook, ").hover(
			function(){
				$(this).prev().css('backgroundPosition','left -4px');
			},
			function(){
				$(this).prev().css('backgroundPosition','left -49px');
			}
		);
	if (document.all) {
        try {document.execCommand("BackgroundImageCache",false,true);} catch(e){}
    }
    $('.add-bookmark a').click(function(){setBookmark(); return false;});
    $('.print a').click(function(){switchToPrintStyleSheet(); return false;});
    
    // $('#TextVersion').click(function(){disableAll(); return false;});

    if ($.cookie('styles')) {
    	currSize = parseInt($.cookie('styles'));
    	$('.fs_size'+currSize).addClass('active');
        switchStyleSheetSrc(currSize);
    }
    var maxSizes = $('.fontsizer .size').size();
    if (maxSizes > 0) {
        if(currSize==1) {
            $('.fs_minus').addClass('disabled');
        } else if(currSize==maxSizes) {
            $('.fs_plus').addClass('disabled');
        }
        $('.fontsizer .size').click(function() {
            currSize = parseInt($(this).attr('title'));
            $('.fontsizer .size').each(function(){$(this).removeClass('active');});
            $(this).addClass('active');
            if(currSize==1) { $('.fs_minus').addClass('disabled');}
            else {$('.fs_minus').removeClass('disabled');}
            if(currSize==maxSizes) { $('.fs_plus').addClass('disabled');}
            else {$('.fs_plus').removeClass('disabled');}
            switchStyleSheetSrc(currSize);
            return false;
        });
         $('.fs_minus').click(function(){
            if(currSize > 1) {
                currSize--;
                $('.fontsizer .size').each(function(){$(this).removeClass('active');});
                $('.fs_size'+currSize).addClass('active');
                if(currSize==1) { $('.fs_minus').addClass('disabled');}
                else {$('.fs_minus').removeClass('disabled');}
                $('.fs_plus').removeClass('disabled');
                switchStyleSheetSrc(currSize);
            }
            return false;
         });
         $('.fs_plus').click(function(){
                 if(currSize < maxSizes) {
                     currSize++;
                     $('.fontsizer .size').each(function(){$(this).removeClass('active');});
                     $('.fs_size'+currSize).addClass('active');
                     if(currSize==maxSizes) { $('.fs_plus').addClass('disabled');}
                     else {$('.fs_plus').removeClass('disabled');}
                     $('.fs_minus').removeClass('disabled');
                     switchStyleSheetSrc(currSize);
                 }
                 return false;
         });
     }
     $('.popup .print,.popup .close').css({'cursor':'pointer'});
     $('.popup .print').click(function(){
            window.print();
            return false;
      });
     $('.popup .close').click(function(){
            self.close();
            return false;
     });
	// show advanced searchform
	$("#showform").click(function(){
		$("#formcontainer").css('display','block');
		$(this).css('display','none');
	});
    $("#search_form, #simplesearch_form").submit(function(){
        $("#WT\\.oss").val($("#q").val());
    });

 // trigger popups over class openpopup and a second class to name a properties array out of popupProperties-Object
    $('a.openpopup').click(function(){
    	for(var pops in popupProperties){
    		 if($(this).hasClass(pops)) {
    		 	var p = eval("popups." + pops);
    		 	
    		 	// optionale Einstellungen fuer ein Popup dynamisch konkatenieren START
    		 	var properties = '';
    		 	$.each(p,function(key, value){
    		 		if(key != 'name') {
    		 			properties += key + '=' + value + ',';
    		 		}			 		
    		 	});
    		 	// letztes Komma entfernen
    		 	properties = properties.substr(0,properties.length - 1);
    		 	// optionale Einstellungen fuer ein Popup dynamisch konkatenieren ENDE
    		 	
    			openPopup(this.href,p.name,propertyString);
    		 }
    	}
    	return false;
    });
    moveArrows();
    $(window).resize(function() {
        moveArrows();
    });

});

function moveArrows(){
    if(parseInt($(window).height())<550){
    	diff = 382-550+parseInt($(window).height());
    	$(".jspVerticalBar").css('top',diff+'px');
    }
}
function openPopup(url, name, properties) {
	var newwindow=window.open(url,name,properties);
	if (window.focus) {
		if (newwindow) newwindow.focus();
	}
	return newwindow;
}
// Define popup-Windowproperties here
var popupProperties = {
	"popImprint":{
		"width":550,
		"height":550,
		"name": 'imprint'
	}
}



/*
 * Superfish v1.4.8 - jQuery 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	: {opacity:'show'},
		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').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);
			o.onBeforeShow.call($ul);
			$ul.animate(o.animation,o.speed,function(){ sf.IE7fix.call($ul); o.onShow.call($ul); });
			return this;
		}
	});

})(jQuery);


/* Copyright (c) 2006 Brandon Aaron (http://brandonaaron.net)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php) 
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 *
 * $LastChangedDate: 2010-11-11 18:16:10 +0100 (Do, 11 Nov 2010) $
 * $Rev: 2173 $
 *
 * Version 2.1.1
 */
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(b($){$.m.E=$.m.g=b(s){h($.x.10&&/6.0/.I(D.B)){s=$.w({c:\'3\',5:\'3\',8:\'3\',d:\'3\',k:M,e:\'F:i;\'},s||{});C a=b(n){f n&&n.t==r?n+\'4\':n},p=\'<o Y="g"W="0"R="-1"e="\'+s.e+\'"\'+\'Q="P:O;N:L;z-H:-1;\'+(s.k!==i?\'G:J(K=\\\'0\\\');\':\'\')+\'c:\'+(s.c==\'3\'?\'7(((l(2.9.j.A)||0)*-1)+\\\'4\\\')\':a(s.c))+\';\'+\'5:\'+(s.5==\'3\'?\'7(((l(2.9.j.y)||0)*-1)+\\\'4\\\')\':a(s.5))+\';\'+\'8:\'+(s.8==\'3\'?\'7(2.9.S+\\\'4\\\')\':a(s.8))+\';\'+\'d:\'+(s.d==\'3\'?\'7(2.9.v+\\\'4\\\')\':a(s.d))+\';\'+\'"/>\';f 2.T(b(){h($(\'> o.g\',2).U==0)2.V(q.X(p),2.u)})}f 2}})(Z);',62,63,'||this|auto|px|left||expression|width|parentNode||function|top|height|src|return|bgiframe|if|false|currentStyle|opacity|parseInt|fn||iframe|html|document|Number||constructor|firstChild|offsetHeight|extend|browser|borderLeftWidth||borderTopWidth|userAgent|var|navigator|bgIframe|javascript|filter|index|test|Alpha|Opacity|absolute|true|position|block|display|style|tabindex|offsetWidth|each|length|insertBefore|frameborder|createElement|class|jQuery|msie'.split('|'),0,{}));

/**
 * Cookie plugin
 *
 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT and GPL licenses:
 * http://www.opensource.org/licenses/mit-license.php
 * http://www.gnu.org/licenses/gpl.html
 *
 */

/**
 * Create a cookie with the given name and value and other optional parameters.
 *
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Set the value of a cookie.
 * @example $.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });
 * @desc Create a cookie with all available options.
 * @example $.cookie('the_cookie', 'the_value');
 * @desc Create a session cookie.
 * @example $.cookie('the_cookie', null);
 * @desc Delete a cookie by passing null as value. Keep in mind that you have to use the same path and domain
 *       used when the cookie was set.
 *
 * @param String name The name of the cookie.
 * @param String value The value of the cookie.
 * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
 * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
 *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
 *                             If set to null or omitted, the cookie will be a session cookie and will not be retained
 *                             when the the browser exits.
 * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
 * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
 * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
 *                        require a secure protocol (like HTTPS).
 * @type undefined
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */

/**
 * Get the value of a cookie with the given name.
 *
 * @example $.cookie('the_cookie');
 * @desc Get the value of a cookie.
 *
 * @param String name The name of the cookie.
 * @return The value of the cookie.
 * @type String
 *
 * @name $.cookie
 * @cat Plugins/Cookie
 * @author Klaus Hartl/klaus.hartl@stilbuero.de
 */
jQuery.cookie = function(name, value, options) {
    if (typeof value != 'undefined') { // name and value given, set cookie
        options = options || {};
        if (value === null) {
            value = '';
            options.expires = -1;
        }
        var expires = '';
        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
            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.toUTCString(); // use expires attribute, max-age is not supported by IE
        }
        // CAUTION: Needed to parenthesize options.path and options.domain
        // in the following expressions, otherwise they evaluate to undefined
        // in the packed version for some reason...
        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 = jQuery.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;
    }
};
jQuery.fn.extend({
	open: function() {
		return this.each(function() {
			new jQuery.Popup(this);
		});
	}
});

jQuery.Popup = function(obj) {
	var LinkDefaults = {
		'id':'popwin',
		'mode':'simple',
		'titleBar':'title',
		'close':'<span class="close-pop"></span>',
		'autoCenter':true,
		'height':400,
		'width':400,
		'left':50,
		'top':50,
		'resizable':'yes',
		'scrollbars':'yes'
	};
	
	var ImgDefaults = {
		'id':'popimg',
		'titleBar':'alt',
		'identifier':'_large',
		'close':'<span class="close-pop"><span>x</span></span>',
		'autoCenter':true,
		'left':0,
		'top':0
	};
	
	var DivDefaults = {
		'id':'popdiv',
		'titleBar':'title',
		'close':'<span class="close-pop"><span>x</span></span>',
		'autoCenter':true,
		'left':50,
		'top':50,
		'width':400,
		'height':250
	};
	
	var _openWin = function(url,options) {
		if(options.autoCenter) {
			var dim = _getPageSize();
			options.left = parseInt((dim[0] - options.width)/2);
			options.top = parseInt((dim[1] - options.height)/2);
		}
		var features = _setFeatures(options);		
		switch(options.mode.toLowerCase()) {
			case 'modal':
			case 'modeless':
				if($.browser.msie) {
					features = features.replace(/\,/gi,';');
					features = features.replace(/\=/gi,':');
					features = features.replace(/scrollbars/gi,'scroll');
					features = features.replace(/left/gi,'dialogLeft');
					features = features.replace(/top/gi,'dialogTop');
					features = features.replace(/width/gi,'dialogWidth');
					features = features.replace(/height/gi,'dialogHeight');
					if(features.search('scroll')==-1) {features+=';srcoll:no';}
					if(features.search('status')==-1) {features+=';status:no';}
					if(features.search('help')==-1) {features+=';help:no';}
					w = (options.mode.toLowerCase=='modeless') ? 
						window.showModelessDialog(url,window,features) : 
						window.showModalDialog(url,window,features);
				} else {
					features = 'dependent=yes,'+features;
					w = window.open(url,options.id,features);
				}
				w.focus();
				break;
			case 'inline':
				_openInline(url,'iframe',options);
				break;
			case 'full':
				top.location.relplace(url);
				break;
			default:
				w = window.open(url,options.id,features);
				w.focus();
				break;
		}
	}
	
	_getPageSize = function () {
		var de = document.documentElement;
		var w = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
		var h = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight
		return new Array(w,h) 
	}
	
	_getPageScrollTop = function(){
		var yScrolltop;
		var xScrollleft;
		if (self.pageYOffset || self.pageXOffset) {
			yScrolltop = self.pageYOffset;
			xScrollleft = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop || document.documentElement.scrollLeft ){	 // Explorer 6 Strict
			yScrolltop = document.documentElement.scrollTop;
			xScrollleft = document.documentElement.scrollLeft;
		} else if (document.body) {
			yScrolltop = document.body.scrollTop;
			xScrollleft = document.body.scrollLeft;
		}
		return new Array(xScrollleft,yScrolltop) 
	}
	
	var _openInline = function(url,type,options) {
		if($('#VPop').size()==0) {
			$('<div id="VPop"></div>').appendTo('body');
		}
		if(options.title) {
			$('#VPop').append('<div class="pop-title">'+options.title+'</div>');
		}
		if(options.close) {
			var c = $(options.close).appendTo('#VPop');
			$(c).click(function(){$('#VPop').remove();});
		}
		$('<div id="TFake">&nbsp;</div>').appendTo('#VPop');
		$('#VPop').css({'left':'-2000px','top':'-2000px'}).show();
		var padW = ($('#VPop')[0].offsetWidth-$('#VPop')[0].clientWidth);
		var padH = ($('#VPop')[0].offsetHeight-$('#VPop')[0].clientHeight);
		padH +=($('#TFake')[0].offsetTop);
		var posW = parseInt(padW)+parseInt(options.width);
		var posH = parseInt(padH)+parseInt(options.height);
		$('#TFake').remove();
		document.onkeydown = function(e) {
			keycode = (e==null) ? keycode = event.keyCode : e.which; 
			if(keycode==27) {$('#VPop').remove();}
		}
		var scroll =_getPageScrollTop();
		if(options.autoCenter) {
			var dim = _getPageSize();
			lt = parseInt(scroll[0] + (dim[0] - posW)/2);
			tp = parseInt(scroll[1] + (dim[1] - posH)/2);
		} else {
			lt = scroll[0] + options.left;
			tp = scroll[1] + options.top;
		}
		$('#VPop').css({'position':'absolute','left':lt,'top':tp,'height':posH,'width':posW});
		if(type=='iframe') {
			$('<iframe src="'+url+'" id="'+options.id+'"></iframe')
				.css({'height':options.height,'width':options.width})
				.appendTo('#VPop');
		} else if(type=='img') {
			$('<img src="'+url+'" />').appendTo('#VPop');
		} else {
			$('<div class="pop-box"></div>').appendTo('#VPop');
			$('div.pop-box','#VPop').css({'height':options.height,'width':options.width,'overflow':'auto'}).html($(url).html());
		}
		$('#VPop').show();
		$(window).scroll(function(){
			var dim = _getPageSize();
			var scroll =_getPageScrollTop();
			if(options.autoCenter) {
				var style = {left: (scroll[0] + (dim[0] - posW)/2), 
				top: (scroll[1] + (dim[1]-posH)/2)};
			} else {
				var style = {left: (scroll[0] + options.left), 
				top: (scroll[1] + options.top)};
			}
			$("#VPop").css(style);
		});
	}
	
	var _setFeatures = function(opts) {
		var tmp = [];
		var featureList = 'dependent,height,hotkeys,innerHeight,innerWidth,left,location,menubar,resizable,sreenX,screenY,scrollbars,status,toolbar,top,width,';
		var pixelVal = 'height,innerWidth,innerHeight,left,screenX,screenY,top,width,';
		for(a in opts) {
			if(featureList.search(a+',')!=-1) {
				if(pixelVal.search(a+',')!=-1) {opts[a]+='px';}
				tmp[tmp.length] = a+"="+opts[a];
			}
		}
		return tmp.join(',');
	}
	
	imgPreloader = new Image();
	imgPreloader.onload = function() {
		imgPreloader.onload = null;
		var imageWidth = imgPreloader.width;
		var imageHeight = imgPreloader.height;
	}
	
	if(obj.nodeName.toLowerCase()=='img') {
		$(obj).css({'cursor':'pointer'});
	}
	
	$(obj).click(function(event){
		var url = false;
		var opts = false;
		if($(obj).attr('rel') && $(obj).attr('rel').indexOf('{')!=-1) {
			opts = eval('tmp='+$(obj).attr('rel'));
		}
		switch(obj.nodeName.toLowerCase()) {
			case 'a':
				obj.blur();
				url = obj.href;				
				var imageTest = /\.(jpe?g|png|gif|bmp)/gi;
				if ( url.match(imageTest) ) {
					var options = $.extend({},ImgDefaults,opts);
					imgPreloader = new Image();
					imgPreloader.src = url;
					imgPreloader.onload = function() {
						imgPreloader.onload = null;
						options.width = imgPreloader.width;
						options.height = imgPreloader.height;
						options.title = $(obj).attr(options.titleBar);
						_openInline(url,'img',options);
					}
				} else if(url.indexOf('#')!=-1 && url.indexOf('.')==-1) { 
					url = '#'+url.split('#')[1];
					if($(url).size()>0) {
						var options = $.extend({},DivDefaults,opts);
						options.title = $(url).attr(options.titleBar);
						if(!options.width) {
							$(url).show();
							options.width = $(url).css('height').replace(/[a-zA-Z%]/gi,'');
							if(options.width=='') {
								options.width  = ($(url)[0].offsetWidth &&  $(url)[0].offsetWidth!=0) ?
									 $(url)[0].offsetWidth : 400;
							}
							$(url).hide();
						}
						if(!options.height) {
							$(url).show();
							options.height = $(url).css('width').replace(/[a-zA-Z%]/gi,'');
							if(options.height=='') {
								options.height  = ($(url)[0].offsetHeight &&  $(url)[0].offsetHeight!=0) ?
									 $(url)[0].offsetHeight : 400;
							}
							$(url).hide();
						}
						_openInline(url,'div',options);
					}
				} else {
					var options = $.extend({},LinkDefaults,opts);
					_openWin(url,options);
				}
				event.preventDefault();
				return false;
				break;			
			case 'img':
				url = obj.src;
				var options = $.extend({},ImgDefaults,opts);
				if(options.identifier) {
					var imageURL = url.replace(/\.(jpe?g|png|gif|bmp)/gi,options.identifier+'.$1');
					imgPreloader = new Image();
					imgPreloader.src = imageURL;
					if(imgPreloader.height && imgPreloader.width) {
						options.width = imgPreloader.width;
						options.height = imgPreloader.height;
						options.title = $(obj).attr(options.titleBar);
						_openInline(imageURL,'img',options);
					} else {
						imgPreloader.onload = function() {
							imgPreloader.onload = null;
							options.width = imgPreloader.width;
							options.height = imgPreloader.height;
							options.title = $(obj).attr(options.titleBar);
							_openInline(imageURL,'img',options);
						}
					}
				} else {
					options.height = parseInt(obj.height);
					options.width = parseInt(obj.width);
					options.title = $(obj).attr(options.titleBar);
					_openInline(url,'img',options);
				}
				event.preventDefault();
				return false;
				break;
		}
		return true;
	});
};

$(document).ready(function(){$('a.popup').open();});

