
(function($){

	"use strict";

	$(document).ready(function(){

		/* set rollover. */
		$('img.over, input.over').rollover();

		/* activate current page image. */
		$('img.on').each(function(){
			this.src = this.src.replace(/^(.+)(\.[a-z]+)$/, '$1_on$2');
		});

		/* open link as '_blank'. */
		$('a[rel=external],a[rel=pdf]').click(function(){					
			window.open(this.href, '_blank');
			return false;
		});

		/* popup */
		$('a[rel=popup]').click(function(){					
			window.open(this.href,'_blank',' status=no, toolbar=no, location=no, menubar=no, scrollbars=yes, resizable=yes, height=550, width=610');
			return false;
		});

		/* page track handler. */
		$('a[rel=track]').click(function(){
			/* strip extension & trailing slash. */
			var track_data = this.href
				.replace(/\.[a-z]+$/, '')
				.replace(/\/$/, '')
			;

			/* track page view. */
			try {
				pageTracker._trackPageview('/exitpages/'+ track_data);
			}
			catch(e) {}

			/* open new window. */
			window.open(this.href, '_blank');
			return false;
		});

		/* search form handler. */
		$('#search_form').submit(function(){
			/* open new window. */
			this.target = '_blank';
		});



		/* const values. */
		var default_font_size = '10px';
		var font_scale = 1.1;

		/* init font size. */
		var font_size = getCookie('fontSize') || default_font_size;
		var $target = $('#content');
		$target.css('fontSize', font_size);

		/* font size changer handler. */
		$('#font_size > ul a').click(function(){
			var action = $(this).attr('title') || 'default';

			/* increments font size. */
			if (action === 'larger') {
				/* todo. support for any units. */
				font_size = $target.css('fontSize');
				var size = parseFloat(font_size) * font_scale;
				var unit = font_size.slice(-2);
				font_size = size + unit;
			}
			/* reset font size. */
			else {
				font_size = default_font_size;
			}
			$target.css('fontSize', font_size);

			/* save setting. */
			setCookie(
				'fontSize',
				$target.css('fontSize') || default_font_size,
				{
					path: '/',
					expires: 7	/* keep 1 week */
				}
			);

			return false;
		});

	});

})(jQuery);



/*
 * jQuery tiny rollover plugin.
 *
 * @param {Object} Several options.
 * @return {Object} jQuery object.
 */
(function(a){a.fn.rollover=function(b){var d={suffix:"_on"};b=a.extend(d,b);var e="$1"+b.suffix+"$2";return a(this).each(function(){var c=new Image;c.src=this.src.replace(/^(.+)(\.[a-z]+)$/,e);a(this).data("rolloverImage",{defaultImage:this.src,hoverImage:c.src}).mouseover(function(){this.src=a(this).data("rolloverImage").hoverImage}).mouseout(function(){this.src=a(this).data("rolloverImage").defaultImage})})}})(jQuery);



/* cookie functions. */
function getCookie(name)
{
	var value;
	if (document.cookie && document.cookie != '') {
		var cookies = document.cookie.split(';');
		var cookie;
		for (var i = 0, len = cookies.length; i < len; i++) {
			cookie = cookies[i].replace(/^\s+|\s+$/g, '');
			if (cookie.substring(0, name.length + 1) == (name +'=')) {
				value = decodeURIComponent(cookie.substring(name.length + 1));
				break;
			}
		}
	}
	return value;
}

function setCookie(name, value, option)
{
	option = option || {};
	if (!value) {
		value = '';
		option.expires = -1;
	}
	var expires = '';
	if (option.expires && (typeof option.expires == 'number' || option.expires.toUTCString)) {
		var date;
		if (typeof option.expires == 'number') {
			date = new Date();
			date.setTime(date.getTime() + (option.expires * 24 * 60 * 60 * 1000));
		} else {
			date = option.expires;
		}
		expires = '; expires='+ date.toUTCString();
	}
	var path = option.path ? '; path='+ (option.path) : '';
	var domain = option.domain ? '; domain='+ (option.domain) : '';
	var secure = option.secure ? '; secure' : '';
	document.cookie = [ name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
}

function d_rpromo(){
  win=window.open("","promotion","width=660,height=510,scrollbars=0,resizable=0,menubar=0");
  win.focus();
}

