/** COMMONS **/
//IE hack: dodanie metody Array.indexOf w IE
if (!Array.indexOf) {
	Array.prototype.indexOf = function(obj) {
		for (var i=0; i<this.length; i++) {
			if (this[i]==obj) {
				return i;
			}
		}
		return -1;
	}
}

//URL widoku zwracajego adres obrazka
var captchaSrcURL = '/odswiez_captche.html';

/**
 * Funkcja odświeża captchę
 * @param captchaImgObj HTMLImgObject - obiekt DOM obrazka z captchą
 */
function refreshCaptcha(captchaImgObj) {
	captchaImgObj.src = 'http://i.wp.pl/a/i/tsw/spinner_'+captchaImgObj.width+'x'+captchaImgObj.height+'.gif';
	var path = captchaSrcURL+'?width='+captchaImgObj.width+'&height='+captchaImgObj.height;
	WP.ajax.get({
		url: path,
		onSuccess: function(ajaxRes) {
			var res = trim(ajaxRes.text);
			if (res != '') {
				captchaImgObj.src = res;
			}
		},
		timeout: 15000,
		onTimeout: function() {}
	});
}

/**
 * Funkcja wywołuje odświeżenie captchy na podstawie atrybutu 'id' HTMLowego
 * elementu nadrzędnego w stosunku do captchy
 * @param parentHTMLElementId String - id elementu nadrzędnego w stosunku do <img> z captchą
 */
function refreshCaptchaByParentTag(parentHTMLElementId) {
	var captchaImgObj = ID(parentHTMLElementId).getElementsByTagName('img')[0];
	refreshCaptcha(captchaImgObj);
	return false; //nie podążaj za linkiem w elemencie <a>
}

/**
 * Funkcja dodaje event onlick do obrazka z captchą,
 * który spowoduje każdorazowe przeładowanie obrazka
 * @param parentHTMLElementId String - id elementu nadrzędnego w stosunku do <img> z captchą
 */
function addRefeshCaptchaEvent(parentHTMLElementId) {
	var captchaImgObj = ID(parentHTMLElementId).getElementsByTagName('img')[0];
	WP.event.set(captchaImgObj, 'onclick', function(){refreshCaptcha(captchaImgObj)});
}

/** /COMMONS **/


/**    MENU    **/
var loginFormChanged = false;
var userName = "";
var playerSettings = new Array();
var gloriusConfiguration = 'max';
var preparedPlayerConfig = null;
var loginTimeout = "no";
var loginTimeoutDuration = 5000;
var loginStatus = 0;
var initialLoginDataInserted = false;
var actualPlayedVid = null;

function setPlayerSettings(vid, nid, type, date, scope, reload, clearList, accordionNumber){
	playerSettings.vid = vid;
	playerSettings.nid = nid;
	playerSettings.type = type;
	playerSettings.date = date;
	playerSettings.scope = scope;
	playerSettings.reload = reload;
	playerSettings.clearList = clearList;
	playerSettings.accordionNumber = accordionNumber;
	data = getDataFromUrl(window.location.href);
	if (data.nid != 0){
		playerSettings.nid = data.nid;
	}
	if (data.vid != 0){
		playerSettings.vid = data.vid;
	}
	if (data.type != 0){
		playerSettings.type = data.type;
	}
	if (data.scope != 0){
		playerSettings.scope = data.scope;
	}

}


function chvalue(n) {
	if (!loginFormChanged && (ID(n).value == 'e-mail' || ID(n).value == 'hasło')) ID(n).value='';
	loginFormChanged = true;
	ID(n).style.color="#ffffff";
	chvalue_pass();
	return false;//wyczyszczenie value formularza
}

function chvalue_pass(){
	$('fake_haslo').hide();
	$('haslo').show();
	return false;//podmiana txt na password (hak na MSIE)
}

function hidePass(){
	$('haslo').hide();
}

function clearLoginTimeout(){
	if (loginTimeout != 'no'){
		clearTimeout(loginTimeout);
	}
	loginTimeout = 'no';
}

function hideLogForm(){
	$('logHover').hide();
	$('logNormal').show();
	$('langFlag').show();
	clearLoginTimeout();
}

function showLoginDiv(bool){
	if (bool){
		if (!initialLoginDataInserted) {
			if (ID('loginInp').value == '')	ID('loginInp').value = 'e-mail';
			if (ID('haslo').value != '') chvalue_pass();
			initialLoginDataInserted = true;
		}
		if (loginTimeout == 'no'){
			$('logHover').show();
			$('logNormal').hide();
			$('langFlag').hide();
		}
		clearLoginTimeout();
		loginStatus = 0;
	} else {
		if (loginTimeout == 'no'){
			loginTimeout = setTimeout("hideLogForm()", loginTimeoutDuration);
			loginStatus = 1;
		}
	}
}

function delayHiding(){
	if (loginStatus == 1){
		clearLoginTimeout();
		loginTimeout = setTimeout("hideLogForm()", loginTimeoutDuration);
	}
}

function logOut(){
	var backUrl = ID('backUrl').getAttribute('title');
	var path="_action,logOut,backUrl,"+backUrl+",index.html";
	location.href = path;
	return false;
	
}

function redirectToMainPage(){
	redirectHelper("index.html");
}

function redirectToSendPage(){
	redirectHelper("dolacz.html");
}

function redirectToWebStarPage(){
	window.open("http://www.webstarfestival.pl/glosowanie/wyniki/", "WebStarFestival");
}

function redirectToSendPage(){
	redirectHelper("przeslij.html");
}
/**    /MENU    **/

function changeBottomRanking(type, scope){
	$("bt_"+type+"_sc_0").deleteClass("on");
	$("dbt_"+type+"_sc_0").hide();
	$("bt_"+type+"_sc_2").deleteClass("on");
	$("dbt_"+type+"_sc_2").hide();
	$("bt_"+type+"_sc_3").deleteClass("on");
	$("dbt_"+type+"_sc_3").hide();
	$("bt_"+type+"_sc_"+scope).addClass("on");
	$("dbt_"+type+"_sc_"+scope).show();

}

/**  ZARZADZAJ KONTEM **/
function copy_val(id, idc) { 
	if (!id || !idc) { return false; }
	ID(idc).value = ID(id).value;
	return true;
}

/** /ZARZADZAJ KONTEM **/


/** STRONA BLEDU **/
var timeoutCount = 20;
var timerId = 0;

function updateTimer() {
	if (timerId) {
		clearTimeout(timerId);
		timerId = setTimeout("updateTimer()", 1000);
		timeoutCount -= 1;
		ID("timer").innerHTML = timeoutCount;
	}
	if (timeoutCount <= 0){
		window.location = dictionary.location;
	}
}

function stopTimer() {
	if (timerId) {
		clearTimeout(timerId);
	}
}

/** STRONA BLEDU **/


/** ZARZADZAJ PLAYEREM */

/**
 * Wrzuca dane do playera.
 * Parametry:
 * vid - id klipu
 * nid - id uzytkownika
 * type - typ listy
 * date - data playslisty
 * scope - przedzial czasowy playlisty
 * reload - (1 - z przeladowaniem strony, 0 - bez przeladowania)
 * clearsingleClip - (0, gdy chcemy dodac pojedynczy klip do listy, 1 - cala liste)
 * accordionNumber (0 - o autorze, 1 - forum, 2 - hitlista)
 */
function loadPlayer(vid, nid, type, date, scope, reload, singleClip, accordionNumber){
	if (reload == 1){
		var path = '';
		if (vid != 0){
			path += 'vid,'+vid+',';
		}
		if (nid != 0){
			path += 'nid,'+nid+',';
		}
		if (type != 0 && type != "PR"){
			path += 'type,'+type+',';
		}
		if (scope != 0){
			path += 'scope,'+scope+',';
		}
		if (accordionNumber != 2){
			path += 'accn,'+accordionNumber+',';
		}
		path += "index.html";
		redirectHelper(path);
	} else {
		if (singleClip == 1){
			getHitList(vid, nid, type, date, scope);
		} else {
			if (actualPlayedVid != vid){
				getHitListClip(vid);
			}
		}
		changeAccordion(accordionNumber);
	}
}

function getUserName(){
	return ID('userName').getAttribute('title');
}

function getUserRates(){
	userRatesFromCookie = WP.cookie.get("tsw/userRate");
	if (userRatesFromCookie == null){
		return null;
	}
	userRatesArr = userRatesFromCookie.split(";");
	var userRates = new Array();
	for (var i=0; i< userRatesArr.length; i++){
		userRatesArrRow = userRatesArr[i].split('-');
		var userRate = new Array();
		userRate.vid = userRatesArrRow[0];
		userRate.value = userRatesArrRow[1];
		userRates[i] = userRate;
	}
	return userRates;
}

function getDataFromUrl(url){
	data = new Array();
	afterHash = url.split("#");
	data.nid = 0;
	data.vid = 0;
	data.type = 0;
	data.scope= 0;
	if (afterHash.length > 1){
		dataArray = afterHash[1].split("-");
		for (i=0; i<dataArray.length; i++){
			if (dataArray[i][0] == "n"){
				var nidRegExp = /^\d+$/g;
				nidRaw = dataArray[i].substr(1, dataArray[i].length-1);
				if (nidRegExp.test(nidRaw)) {
					data.nid = nidRaw;
				}
			}
			if (dataArray[i][0] == "v"){
				var vidRegExp = /^\d+$/g;
				vidRaw = dataArray[i].substr(1, dataArray[i].length-1);
				if (vidRegExp.test(vidRaw)) {
					data.vid = vidRaw;
				}
			}
			if (dataArray[i][0] == "t"){
				typeRaw = dataArray[i].substr(1, dataArray[i].length-1);
				if (typeRaw == 'PR' || typeRaw == 'LA' || typeRaw == 'MC'
					|| typeRaw == 'MV' || typeRaw == 'WR' || typeRaw == 'NID'){
						data.type = typeRaw;
					}
			}
			if (dataArray[i][0] == "s"){
				var scopeRegExp = /^\d+$/g;
				scopeRaw = dataArray[i].substr(1, dataArray[i].length-1);
				if (scopeRegExp.test(scopeRaw)) {
					data.scope = scopeRaw;
				}
			}
		}
	}
	if (data.type == 0 && data.nid != 0){
		data.type = 'NID';
	}
	if (data.type == 'NID'){
		setMenu(2);
	}
	if (data.type == 'LA' || data.type == 'MC'
		|| data.type == 'MV' || data.type == 'WR'){
			setMenu(3);
		}
	return data;
}


function setMenu(tab){
	$('navSG').deleteClass('off');
	if (tab == 1){
		$('navSG').addClass('on');
		$('navKAN').deleteClass('on');
		$('navRAN').deleteClass('on');
	}
	if (tab == 2){
		$('navSG').deleteClass('on');
		$('navKAN').addClass('on');
		$('navRAN').deleteClass('on');
	}
	if (tab == 3){
		$('navSG').deleteClass('on');
		$('navKAN').deleteClass('on');
		$('navRAN').addClass('on');
	}
}

function userAgree(baseUrl){
	data = getDataFromUrl(window.location.href);
	url = escape(prepareHistoryUrl(data));
	path = baseUrl;
	if (url != ""){
		path = "historyUrl,"+url+","+baseUrl;
	}
	redirectHelper(path);
}

function prepareHistoryUrl(data){
	url = "";
	addMinus = false;
	if (data.nid != null && data.nid != 0){
		url += "n"+data.nid;
		addMinus = true;
	}
	if (data.vid != null && data.vid != 0){
		if (addMinus){
			url += "-";
			addMinus = false;
		}
		url += "v"+data.vid;
		addMinus = true;
	}
	if (data.type != null && data.type != 0){
		if (addMinus){
			url += "-";
			addMinus = false;
		}
		url += "t"+data.type;
		addMinus = true;
	}
	if (data.scope != null && data.scope != 0){
		if (addMinus){
			url += "-";
			addMinus = false;
		}
		url += "s"+data.scope;
		addMinus = true;
	}
	return url;
}

function addHistory(vid, nid){
	data.vid = vid;
	data.nid = nid;
	data.type = playerSettings.type;
	data.scope = playerSettings.scope;
	
	url = escape(prepareHistoryUrl(data));

	if (url != ""){
		var adresRaw = window.location.href;
		var adres = adresRaw.split("#");
		var path = adres[0]+"#"+url;
		redirectHelper(path);
	}
}
//ustawia rotacje i timeout gloriusow
function GloriusConf(){
	this.timeout = 5;
	this.bool = false;
}

function setAutoRatate(){
	smallGloriusConf = new GloriusConf();
	smallGloriusConf.bool = true;
	bigGloriusConf = new GloriusConf();
	gloriusAutoRotate(smallGloriusConf, bigGloriusConf);
}

var opinionConfig = new Array();
opinionConfig.isFirstTime = true;
opinionConfig.timelineComments = null;


function filterFirstPageTimelineComments(commentsList){
	if (commentsList.page == 1 && opinionConfig.isFirstTime){
		opinionConfig.timelineComments = commentsList.timelineComments;
		opinionConfig.isFirstTime = false;
	} else {
		commentsList.timelineComments = opinionConfig.timelineComments;
	}
}

function restartFirstPageTimelineComments(){
	opinionConfig.isFirstTime = true;
}


/** /ZARZĄDZAJ PLAYEREM **/

/* SEO */
//zmienia tytuł strony
function changePageTitle(newTitle) {
	if ("" != newTitle && 'undefined' != typeof(newTitle) ) {
		document.title = newTitle + dictionary.shortTitle;
	} else {
		document.title = dictionary.fullTitle;
	}
}
/* /SEO */

/**  JSON **/

function EmptyData(){
	this.status = "empty";
}

function TimeoutData(){
	this.status = "timeout";
}

function ErrorData(){
	this.status = "error";
}

function getHitList(vid, nid, type, date, scope){
	var hitlistPath = '';
	if (vid != 0){
		hitlistPath += 'vid,'+vid+',';
	} 
	if (nid != 0){
		hitlistPath += 'nid,'+nid+',';
	} 
	if (type != 0){
		hitlistPath += 'type,'+type+',';
	}
	if (date != 0){
		hitlistPath += 'playDate,'+date+',';
	} 
	if (scope != 0){
		hitlistPath += 'scope,'+scope+',';
	}
	hitlistPath += 'hitlist.json';

	WP.ajax.get({
		url:hitlistPath,
		onSuccess: function(res) {
			if (res.text == '</error>'){
				loadGlorius(new ErrorData());
				loadHitList(new ErrorData());
			} else {
				var data = WP.parseJSON(res.text);
				if (data.glorius.status == "ok" && data.hitList.status == "ok"){
					userRates = getUserRates();
					if (userRates != null){
						for (i=0; i<data.hitList.clips.length; i++){
							for (j=0; j<userRates.length; j++){
								if (data.hitList.clips[i].vid == userRates[j].vid){
									data.hitList.clips[i].userRate = userRates[j].value;
								}
							}
						}
					}
					for (i=0; i<data.hitList.clips.length; i++){
						if (typeof data.hitList.clips[i].description == 'string'){
							data.hitList.clips[i].description = data.hitList.clips[i].description.replace(/\\n/g, "\n");
						}
					}
					loadGlorius(data.glorius);
					loadHitList(data.hitList);
				} else {
					loadGlorius(new EmptyData());
					loadHitList(new EmptyData());
				}
			}

		}, 
		timeout: 15000,
		onTimeout: function() {
			loadGlorius(new TimeoutData());
			loadHitList(new TimeoutData());
		}
		});
}

function getHitListClip(vid){
	var path = '';
	if (vid != 0){
		path += 'vid,'+vid+',';
	} else {
		return;
	}
	path += 'hitlist.json';

	WP.ajax.get({
		url:path,
		onSuccess: function(res) {
			if (res.text == '</error>'){
			//error do nothing
			} else {
				var data = WP.parseJSON(res.text);
				if (data.glorius.status == "ok" && data.hitList.status == "ok"){
					userRates = getUserRates();
					if (userRates != null){
						for (i=0; i<data.hitList.clips.length; i++){
							for (j=0; j<userRates.length; j++){
								if (data.hitList.clips[i].vid == userRates[j].vid){
									data.hitList.clips[i].userRate = userRates[j].value;
								}
							}
						}
					}
					for (i=0; i<data.hitList.clips.length; i++){
						if (typeof data.hitList.clips[i].description == 'string'){
							data.hitList.clips[i].description = data.hitList.clips[i].description.replace(/\\n/g, "\n");
						}
					}

					addClipToHitList(data.hitList.clips[0], data.glorius.clips[0]);
			} else {
			//empty do nothing
			}
			}

		},
		timeout: 15000,
		onTimeout: function() {
				//timeout do nothing
		}});
}

function preparePlayerConfig(){
	userName = getUserName();
	getPath = 'player_config.json';

	WP.ajax.get({
		url:getPath,
		onSuccess: function(res) {
				if (res.text == '</error>'){
					loadPlayerConfig(new ErrorData());
				} else {
					var data = WP.parseJSON(res.text);
					if (data.status == "ok"){ 
						data.userName = userName;
						if (playerSettings.vid != 0 || playerSettings.nid != 0){
							data.options.configurationBtnState = "max";
						}
						loadPlayerConfig(data);
					} else {
						loadPlayerConfig(new EmptyData());
					}
				}
		},
		timeout: 15000,
		onTimeout: function() {
				loadPlayerConfig(new TimeoutData());
		}});
}

function getOpinionList(vid, page){

	path = 'vid,'+vid+',page,'+page+',opinie.json';
	WP.ajax.get({url:path,
		onSuccess: function(res) {
				if (res.text == '</error>'){
					loadComment(new ErrorData());
				} else {
					var data = WP.parseJSON(res.text);
					if ((data.status) && data.status == "ok"){ 
						filterFirstPageTimelineComments(data);
						loadComment(data);
					} else {
						loadComment(new EmptyData());
					}
				}
		},
		timeout: 15000,
		onTimeout: function() {
				loadComment(new TimeoutData());
		}});
}

function getSocialBookmarking(vid) {
	var path = '/vid,'+vid+',social_bookmarking.json';
	WP.ajax.get({
	             url: path,
	             timeout: 15000,
	             onSuccess: function(res) {
				if (res.text == '</error>') {
					loadSocialBookmarking(new ErrorData());
				} else {
					var sbm = WP.parseJSON(res.text);
					if (sbm.status && sbm.status == "ok") {
						loadSocialBookmarking(sbm);
					} else {
						loadSocialBookmarking(new ErrorData());
					}
				}
		     },
		     onTimeout: function() {
				loadSocialBookmarking(new TimeoutData());
		     }
	           });
}

/** /JSON **/


/**  SEARCH  **/
function queryCheck() {
	var query = document.searchForm.query.value;
	if (query=='') {
		ID('query').focus();
		return false;
	}
	return true;
}

/**  /SEARCH  **/


/** DYMEK (balloon) **/
//czy trwa przełączanie między prevkami
var balloonPrevRunning = false;

//id timeoutu przełączania między prevkami
var balloonPrevTimerId = null;

//dane prevki do wyświetlenia: numer
var balloonPrevNumber = 1;

//poszukaj obiektu DIVa z dymkiem jako podrzędnego do tego o zadanym id (clipDivId)
function findBalloonDivObj(clipDivId) {
	var childDivObjs = ID('zaj_'+clipDivId).getElementsByTagName('div');
	//pobranie pierwszego podrzędnego DIVa i sprawdzenie czy jest to DIV z dymkiem (id='popup')
	for (var i = 0; i < childDivObjs.length; i++) {
		if (childDivObjs.item(i).id.substr(0,5) == 'popup') {
			return childDivObjs.item(i);
		}
	}
	return false;
}

//sprawdza czy element jest dzieckiem innego elementu
function isChildOf(parent, child) {
	if (child != null) {
		while (child.parentNode) {
			if ((child = child.parentNode) == parent) {
				return true;
			}
		}
	}
	return false;
}

//funkcja sprawdza czy myszka opuscila obszar w ktorym
//ma byc pokazywany opis i prevki materialu
function clipBalloonMouseOut(element, event, code) {
	var mouseTarget = null;
	if (event.toElement) {
		mouseTarget = event.toElement;
	} else if (event.relatedTarget) {
		mouseTarget = event.relatedTarget;
	}
	if (!isChildOf(element, mouseTarget) && element != mouseTarget) {
		eval(code);
	}
}

//uwidocznij dymek dla klipu w DIVie o id=clipDivId
function showClipBalloon(clipDivId, prevPath) {
	var balloonDivObj = null;
	if (balloonDivObj = findBalloonDivObj(clipDivId)) {
		balloonDivObj.style.display = 'block';
		if (ID('f_'+balloonDivObj.id)) {
			$('f_'+balloonDivObj.id).show();
		}
		$('zaj_'+clipDivId).deleteClass('zIndex4');
		$('zaj_'+clipDivId).addClass('zIndex1000');
		if (!balloonPrevRunning && prevPath != '') {
			prevPath = prevPath.replace("@amp;", "@");
			var prevPathStripped = stripURLFilename(prevPath);
			var parsedPrevFilename = parsePrevFilename(prevPath.substr(prevPathStripped.length));
			balloonPrevTimerId = setInterval("startBalloonPreview('popupImg_"+clipDivId+"','"+prevPathStripped+"','"+parsedPrevFilename[1]+parsedPrevFilename[2]+"')", 1000);
		}
		balloonPrevRunning = true;
	}
}

//ukryj dymek dla klipu w DIVie o id=clipDivId
function hideClipBalloon(clipDivId, prevPath) {
	if (prevPath != '') {
		stopBalloonPreview("popupImg_"+clipDivId, prevPath);
		balloonPrevNumber = 1;
	}
	var balloonDivObj = null;
	if (balloonDivObj = findBalloonDivObj(clipDivId)) {
		$('zaj_'+clipDivId).deleteClass('zIndex1000');
		$('zaj_'+clipDivId).addClass('zIndex4');
		balloonDivObj.style.display = 'none';
		if (ID('f_'+balloonDivObj.id)) {
			$('f_'+balloonDivObj.id).hide();
		}
	}
}

//rozpocznij pokaz prevek
function startBalloonPreview(imgObjId, imgPathWithoutFilename, imgFilenameSuffix) {
	ID(imgObjId).src =imgPathWithoutFilename + '0' + balloonPrevNumber + imgFilenameSuffix;
	balloonPrevNumber++;
	if (balloonPrevNumber > 6)
		balloonPrevNumber = 1;
}

//zakończ pokaz prevek
function stopBalloonPreview(imgObjId, imgPath) {
	ID(imgObjId).src = imgPath;
	clearInterval(balloonPrevTimerId);
	balloonPrevRunning = false;
}

//usuń nazwę pliku z adresu URL
function stripURLFilename(url) {
	return url.substring(0, url.lastIndexOf('/')+1);
}

//funkcja parsuje nazwę prevki (np. '02_1a26.jpg', '03.jpg') na sekwencje:
// Array([0] => numer_prevki (np. '02'), [1] => suffix-timestamp (np. '_1a26'), [2] => rozszerzenie-z_kropka (np. '.jpg')
function parsePrevFilename(prevFilename) {
	var prevNumber = prevFilename.substr(0, 2);
	var prevExt = prevFilename.substr(prevFilename.lastIndexOf('.'));
	var prevSuffix = prevFilename.substring(prevNumber.length, prevFilename.length - prevExt.length);
	return [prevNumber, prevSuffix, prevExt];
}

/** /DYMEK (balloon) **/


/** EDYTUJ UŻYTKOWNIKA: zmien domyślą prevkę **/
var clipDefaultPrevNumber = 0;
var clipDefaultPrecSuffix = '';
var clipDefaultPrevExt = '.jpg';

//funkcja wykonuje operacje zmiany prevki na podstawie numeru nowej
function changeClipDefaultPrev(prevNumber) {
	if (prevNumber != parseInt(prevNumber))
		return false;

	ID('clipPrev').src = stripURLFilename(ID('clipPrev').src) + '0' + prevNumber + clipDefaultPrecSuffix + clipDefaultPrevExt;

	if (clipDefaultPrevNumber != 0) $('prevNum'+clipDefaultPrevNumber).deleteClass('sel');

	if (ID('prevNum'+prevNumber) != undefined)
		$('prevNum'+prevNumber).addClass('sel');
	ID('clipDefaultPrevFilenameInp').value = '0' + prevNumber + clipDefaultPrecSuffix + clipDefaultPrevExt;

	clipDefaultPrevNumber = prevNumber;

	return false; //nie podążaj za ahref'em
}

//funkcja 'wydłubuje' z nazwy pliku (np. 01.jpg) numer prevki i przekazuje dalej
function changeClipDefaultPrevByFilename(prevFilename) {
	var parsedFilename = parsePrevFilename(prevFilename);
	clipDefaultPrecSuffix = parsedFilename[1];
	clipDefaultPrevExt = parsedFilename[2];
	changeClipDefaultPrev(parseInt(parsedFilename[0]));
}

/** /EDYTUJ UŻYTKOWNIKA: zmien domyślą prevkę **/


/** PRELOADING **/
function preloadRegisterImages(){
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnRegisterSlijOver);
}

function preloadSendImages(){
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnSendSlijOver);
}

function preloadStartImages(){
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnDisclaimerWchodzeOver);
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnDisclaimerSpadamOver);
}
function preloadBalloonBackground(){
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnPopupPng);
        preloadedImg = document.createElement('img');
        preloadedImg.setAttribute('src',dictionary.btnPopupGif);
}
/** /PRELOADING **/


/** NIJUSLETTER **/
//przydatne gdy nijusletter otwarty za pomocą trzeciego przycisku myszy
var forcePopup = false;

//tablica zawierająca zaznaczone checkboxy (w postaci GIDów)
var selectedChannels = [];

var channelsSortType;

//sprawdzanie czy okno subskrypcji będzie w popupie czy na warstwie
function isNijusletterInPopup(view) {
//	return (forcePopup || view == "index.html");
	return true;
}

//funkcja rozpoczynająca ukazywanie subskrypcji do nijuslettera, wywoływana z menu głównego serwisu
function showNijusletter(view) {
	if (isNijusletterInPopup(view)) {
		showNijusletterPopup();
	} else {
		//zapytanie po kod nijuslettera
		WP.ajax.get({
			url: '/subskrybuj_ajax.html',
			onSuccess: function(ajax) {
				loadNijusletter(ajax.text);
				disp_none();
			}
		});
	}
	
	//nie wykonuj przekierowania w <a href>
	return false;
}

//funkcja pokazująca subskrypcję do nijuslettera w popupie
function showNijusletterPopup(nid) {
	var nUrl = '/subskrybuj.html';
	if (nid) {
		nUrl += '?nid='+nid;
	}
	window.open(nUrl,dictionary.windowTitleSubskrybuj,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=538, width=576');
}

//zamknięcie nijuslettera
function hideNijusletter(n) {
	if (isNijusletterInPopup()) {
		window.close();
	} else {
		ID('wpNijusletter').innerHTML = '';
	}
	
	//nie wykonuj przekierowania w <a href>
	return false;
}

//załaduj pobrany kod HTML do elementu o id=bxNijusletter
function loadNijusletter(nletterSrc) {
	ID('wpNijusletter').innerHTML = nletterSrc;
}

//funkcja wysyłająca submit nijuslettera
function sumbitNijusletter(nletterFormObj) {
	//zrzuć liste zaznaczonych checkboksów do inputa 'nijusletterGids'
	ID('nijusletterGids').value = selectedChannels.join(',');

	if (isNijusletterInPopup()) {
		//wykonaj submit formularza
		return true;
	} else {
		var period = '';
		for (var i = 0; i < nletterFormObj.period.length; i++) {
			if (nletterFormObj.period[i].checked) {
				period = nletterFormObj.period[i].value;
				break;
			}
		}
		var email = nletterFormObj.email.value;
		var action = nletterFormObj._action.value;
		var gids = nletterFormObj.gids.value;
		var getUrl = '/gids,'+gids+',email,'+email+',_action,'+action+',subskrybuj_ajax.html';
		
		WP.ajax.get({
			url: getUrl,
			onSuccess: function(ajax) {
				loadNijusletter(ajax.text);
				//jeżeli powrót z akcji to wyczyść radiobuttony (nie wyświetlaj ich)
				if (ID('actRet')) fake_radio('');
				else fake_radio(period);
			}
		});
		
		//nie wykonuj submita formularza
		return false;
	}
}

//funkcja doczytuje ajaxem stronicowaną listę kanałów w niujsletterze
function reloadNijusletterChannels(pageSuffix) {
	var getUrl = '/nijusletterkanaly_ajax.html'+pageSuffix;
	ID('nlChs').innerHTML = "<div class='nl_wait'>ładuję ...</div>";
	WP.ajax.get({
		url: getUrl,
		onSuccess: function(ajax) {
			ID('nlChs').innerHTML = ajax.text;
			reloadCheckBoxes();
		}
	});
}

//funkcja onClick checkboksa w nijusletterze
function checkBoxClick(span) {
	if ($(span).hasClass('fake_inp_off')) {
		selectCheckBox(getGid(span));
	} else if($(span).hasClass('fake_inp_on')) {
		deselectCheckBox(getGid(span));
	}
}

//funkcja zaznacza checkboksa i dodaje GIDa do tablicy zaznaczonych
function selectCheckBox(gid) {
	//id="nij_XXX" - zwykłe kanały
	if (ID('nij_'+gid)) {
		$('nij_'+gid).deleteClass('fake_inp_off');
		$('nij_'+gid).addClass('fake_inp_on');
	}
	//id="nip_XXX" - promowane kanały
	if (ID('nip_'+gid)) {
		$('nip_'+gid).deleteClass('fake_inp_off');
		$('nip_'+gid).addClass('fake_inp_on');
	}

	if (gid != NaN && gid > 0 && selectedChannels.indexOf(gid) < 0) {
		selectedChannels.push(gid);
	}
}

//funkcja odznacza checkboksa i usuwa GIDa z tablicy zaznaczonych
function deselectCheckBox(gid) {
	//id="nij_XXX" - zwykłe kanały
	if (ID('nij_'+gid)) {
		$('nij_'+gid).deleteClass('fake_inp_on');
		$('nij_'+gid).addClass('fake_inp_off');
	}
	//id="nip_XXX" - promowane kanały
	if (ID('nip_'+gid)) {
		$('nip_'+gid).deleteClass('fake_inp_on');
		$('nip_'+gid).addClass('fake_inp_off');
	}

	if (gid != NaN && gid > 0 && selectedChannels.indexOf(gid) >= 0) {
		selectedChannels.splice(selectedChannels.indexOf(gid), 1);
	}
}

//funkcja zaznacza wszystkie checkboksy z tablicy w formularzu nijuslettera
function reloadCheckBoxes() {
	for (var i=0; i<selectedChannels.length; i++) {
		selectCheckBox(selectedChannels[i]);
	}
}

//span z checkboxem o id="nij_XXX" lub "nip_XXX", gdzie XXX - to GID
function getGid(span) {
	return parseInt(span.id.substr(4, span.id.length));
}

function switchSort(sortType) {
	if (sortType == 1) {
		//najpopuplarniejsze
		$('sort4').hide();
		$('sort1').show();
	} else {
		//alfabetycznie
		$('sort4').show();
		$('sort1').hide();
	}
	
}

/** /NIJUSLETTER **/


/** REGULAMIN **/
function showRegulationPopup() {
	window.open('/regulamin.html',dictionary.windowTitleRegulamin,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=409, width=577');
}

/** /REGULAMIN **/


/** MOBILE PROMO **/
function showMobilePromoPopup() {
	window.open('/mobilna.html',dictionary.windowTitleMobilna,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=409, width=577');
}

/** /MOBILE PROMO **/


/** INFORM US - KONTAKT **/
function showInformUsPopup() {
	window.open('/kontakt.html',dictionary.windowTitleInformUs,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=409, width=577');
}
/** /INFORM US - KONTAKT **/

/** ABOUT US **/
function showAboutUsPopup() {
	window.open('/o_nas.html',dictionary.windowTitleONas,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=409, width=577');
}
/** /ABOUT US **/

/** AWARDS PROMO **/
function showAwardPopup(awardId) {
	window.open('/nagrody.html?a='+awardId,dictionary.windowTitleONas,'toolbar=0, location=0, menubar=0, directories=0, scrollbars=0, height=409, width=577');
}
/** /AWARDS PROMO **/

/** DOŁĄCZ **/
//textarea było kiedyś czyszczone
var wasOnceCleared = false;

function joinSendTextLimit(limit) {
	joinSendClearMsg();
	var curMsg = document.joinSend.msg.value;
	var curMsgLen = curMsg.length;
	if (curMsgLen > limit) document.joinSend.msg.value = curMsg.slice(0, limit);
}

function joinSendClearMsg() {
	if (!wasOnceCleared) {
		document.joinSend.msg.value = '';
		setJoinSendClearedFlag(true);
	}
}

function joinSendSubmit() {
	joinSendClearMsg();

	var curMsg = document.joinSend.msg.value;
	var curMsgLen = curMsg.length;


	if (curMsgLen <= 4){
		alert(dictionary.czyTaWiadomosc);
		return false;
	}
	return true;
}

function setJoinSendClearedFlag(wasOnceClearedToSet) {
	if (wasOnceClearedToSet) {
		document.joinSend.msg.style.color = '#000000';
		wasOnceCleared = true;
	} else {
		document.joinSend.msg.style.color = '#999999';
		wasOnceCleared = false;
	}
}

function findBalloonDivObjPrzeslij(id) {
	var childDivObjs = ID(id).getElementsByTagName('div');
	//pobranie pierwszego podrzędnego DIVa i sprawdzenie czy jest to DIV z dymkiem (id='popup')
	for (var i = 0; i < childDivObjs.length; i++) {
		if (childDivObjs.item(i).id.substr(0,5) == 'popup') {
			return childDivObjs.item(i);
		}
	}
	return false;
}


function joinSendPopupShow() {
	var balloonDivObj = null;
	if (balloonDivObj = findBalloonDivObjPrzeslij('bxPrzeslij')) {
		balloonDivObj.style.display = 'block';
		$('popup_bxPrzeslij').show();
		$('popup_bxPrzeslij').deleteClass('zIndex4');
		$('popup_bxPrzeslij').addClass('zIndex1000');
	}
}

function joinSendPopupHide() {
	var balloonDivObj = null;
	if (balloonDivObj = findBalloonDivObjPrzeslij('bxPrzeslij')) {
		$('popup_bxPrzeslij').deleteClass('zIndex1000');
		$('popup_bxPrzeslij').addClass('zIndex4');
		balloonDivObj.style.display = 'none';
		$('popup_bxPrzeslij').hide();
	}
}

/** /DOŁĄCZ **/


/** REKLAMA **/

//deklaracja wartosci poczatkowych
var advDataInFlash = AdvData();
var advDataPrepared = AdvData();
var advStatus = new Array();
advStatus.isAdvDataLoading = false;
advStatus.advTimeout = 'no';
advStatus.advTimeoutLen = 15000;

//obiekt z danymi reklamy
function AdvData() {
	this.status = "ok";
	this.advPlayerClickUrl = '';
	this.advPlayerMovieUrl = '';
	this.advPlayerConfirm = '';
	this.advPlayerTopLayerUrl = '';
	this.advPlayerTopLayerClickUrl = '';
	this.advPlayerTopLayerWidth = '';
	this.advPlayerTopLayerHeight = '';
	this.advPlayerTopLayerConfirm = '';
	this.advPlayerTopLayerExternalConfirm = '';
	this.advPlayerTopLayerFullSize = true;
	this.advPlayerTopLayerDuration = 10;
	this.advPlayerTopLayerCloseConfirm = '';
	this.advPlayerBottomLayerUrl = '';
	this.advPlayerBottomLayerStart = 10;
	this.advPlayerBottomLayerClickUrl = '';
	this.advPlayerBottomLayerPosition = 'B';
	this.advPlayerBottomLayerConfirm = '';
	this.advPlayerBottomLayerDuration = 0;
	this.advPlayerBottomLayerCloseConfirm = '';
	this.advPlayerBottomLayerExternalConfirm = '';
}

//funkcja pakuje parametry z systemu w obiekt advData
function prepareAdvData(advPlayerClickUrl, advPlayerMovieUrl, advPlayerConfirm, 
		advPlayerTopLayerUrl, advPlayerTopLayerClickUrl, advPlayerTopLayerWidth, 
		advPlayerTopLayerHeight, advPlayerTopLayerConfirm, advPlayerTopLayerExternalConfirm,
		advPlayerTopLayerFullSize, advPlayerTopLayerDuration, advPlayerTopLayerCloseConfirm,
		advPlayerBottomLayerUrl, advPlayerBottomLayerStart, advPlayerBottomLayerClickUrl, 
		advPlayerBottomLayerPosition, advPlayerBottomLayerConfirm, advPlayerBottomLayerDuration,
		advPlayerBottomLayerCloseConfirm, advPlayerBottomLayerExternalConfirm){

	advData = new AdvData();
	advData.status = 'ok';
	advData.advPlayerClickUrl = advPlayerClickUrl;
	advData.advPlayerMovieUrl = advPlayerMovieUrl;
	advData.advPlayerConfirm = advPlayerConfirm;
	advData.advPlayerTopLayerUrl = advPlayerTopLayerUrl;
	advData.advPlayerTopLayerClickUrl = advPlayerTopLayerClickUrl;
	advData.advPlayerTopLayerWidth = advPlayerTopLayerWidth;
	advData.advPlayerTopLayerHeight = advPlayerTopLayerHeight;
	advData.advPlayerTopLayerConfirm = advPlayerTopLayerConfirm;
	advData.advPlayerTopLayerExternalConfirm = advPlayerTopLayerExternalConfirm;
	advData.advPlayerTopLayerFullSize = advPlayerTopLayerFullSize;
	advData.advPlayerTopLayerDuration = advPlayerTopLayerDuration;
	advData.advPlayerTopLayerCloseConfirm = advPlayerTopLayerCloseConfirm;
	advData.advPlayerBottomLayerUrl = advPlayerBottomLayerUrl;
	advData.advPlayerBottomLayerClickUrl = advPlayerBottomLayerClickUrl;
	advData.advPlayerBottomLayerStart = advPlayerBottomLayerStart;
	advData.advPlayerBottomLayerPosition = advPlayerBottomLayerPosition;
	advData.advPlayerBottomLayerConfirm = advPlayerBottomLayerConfirm;
	advData.advPlayerBottomLayerDuration = advPlayerBottomLayerDuration;
	advData.advPlayerBottomLayerCloseConfirm = advPlayerBottomLayerCloseConfirm;
	advData.advPlayerBottomLayerExternalConfirm = advPlayerBottomLayerExternalConfirm;

	return advData;
}

//funkcja ladujaca dane po wczytaniu ich w iframie
function setAdvData(advData) {
	if (advStatus.advTimeout != 'no'){
		clearTimeout(advStatus.advTimeout);
	}
	advStatus.advTimeout = 'no';
	if (advStatus.isAdvDataLoading){
		sendAdvData(advData);
	}
}


//player wywoluje gdy chce reklame
function advQuery(clip){
//	sendNoAdvData();
//	return;
	
	if (clip.isAdv){
		getDataFromAdvSystem(clip.advChannel);
	} else {
		sendNoAdvData();
	}
}

//wysyla polecenie pominięcia reklamy
function sendNoAdvData(){
	advStatus.isAdvDataLoading = true;
	advEmpty = new AdvData();
	sendAdvData(advEmpty);
}

//przeladowuje iframe'a wczytujacego dane reklam instream
function getDataFromAdvSystem(channel) {
	advStatus.isAdvDataLoading = true;
	var browserUrl = window.location.href;

	if (advStatus.advTimeout == 'no'){
		advStatus.advTimeout = setTimeout("loadEmptyDataOnTimeout()", advStatus.advTimeoutLen);
	}

	reloadInStreamAdvFrame(browserUrl, channel);

}

//parsuje parametry z notacji przecinkowej
function parseComaSepParametersFromUrl(){
	pathParams = window.location.pathname;
	pathParams = pathParams.replace(/_action/gi, "__action");
	pathParams = pathParams.split(",");
	params = '';
	sep = '&';
	for (i=0; i < pathParams.length; i=i+2){
		if ('undefined' != typeof(pathParams[i+2])){
			if (i == 0){
				pathParams[i] = pathParams[i].replace(/\//gi, "");
			}
			params = params + sep + pathParams[i] + '=' + pathParams[i+1];
		}
	}

	return params;
}

//przeladowuje iframe w celu pobrania nowych danych do reklamy
function reloadInStreamAdvFrame(browserUrl, channel) {
	var timestamp = parseInt(new Date().getTime().toString().substring(0, 10));
	var iframeSrc = "reklama_in_stream_ajax.html?t="+timestamp;
	if (browserUrl != '') {
		var browserUrlArr = browserUrl.split("#");
		browserUrl = browserUrlArr[0];
		iframeSrc += "&wptvurl="+browserUrl.substr(7).replace(/\?/gi, "&").replace(/_action/gi, "__action");
	}
	if (channel != ''){
		iframeSrc += "&wptvcanal="+channel;
	}
	iframeSrc += parseComaSepParametersFromUrl();

	ID("inStreamAdvFrame").src = iframeSrc;
}

//przekazuje dane reklamy do playera
function sendAdvData(advData) {
//alert(dumpObj(advData,"a","",1));
	advStatus.isAdvDataLoading = false;
	loadAdvData(advData);
}

//ustawia informacje o braku reklamy jak za dlugo czekamy na odpowiedz na reklame
function loadEmptyDataOnTimeout(){
	if (advStatus.advTimeout != 'no'){
		clearTimeout(advStatus.advTimeout);
	}
	advStatus.advTimeout = "no";
	advEmpty = new AdvData();
	if (advStatus.isAdvDataLoading){
		sendAdvData(advEmpty);
	}
}

function advInStreamStart(advData){
	inzlicz = new Image(1,1);
	inzlicz.src = advData.advPlayerConfirm;
}

function advTopLayerStart(advData){
	inzlicz = new Image(1,1);
	inzlicz.src = advData.advPlayerTopLayerConfirm;
	if (advData.advPlayerTopLayerExternalConfirm != ''){
		inzlicz2 = new Image(1,1);
		inzlicz2.src = advData.advPlayerTopLayerExternalConfirm;
	}
}

function advBottomLayerStart(advData){
	inzlicz = new Image(1,1);
	inzlicz.src = advData.advPlayerBottomLayerConfirm;
	if (advData.advPlayerBottomLayerExternalConfirm != ''){
		inzlicz2 = new Image(1,1);
		inzlicz2.src = advData.advPlayerBottomLayerExternalConfirm;
	}
}

function advInStreamClose(advData){
}

function advTopLayerClose(advData){
	if (advData.advPlayerTopLayerCloseConfirm != ''){
		inzlicz = new Image(1,1);
		inzlicz.src = advData.advPlayerTopLayerCloseConfirm;
	}
}

function advBottomLayerClose(advData){
	if (advData.advPlayerBottomLayerCloseConfirm != ''){
		inzlicz = new Image(1,1);
		inzlicz.src = advData.advPlayerBottomLayerCloseConfirm;
	}
}
/** /REKLAMA **/

/** PLAYER **/
function showUserProductions(clip){
	if (playerSettings.nid == clip.nid && playerSettings.type == "NID"){
		changeAccordion(2);
	} else {
		loadPlayer(0, clip.nid, 0, 0, 0, 1, 1, 2);
	}
}

function movieStarted(clip, trigger){
	getOpinionList(clip.vid, 1);
	actualPlayedVid = clip.vid;
	if (trigger == 2){
		changeCommentsCount(clip);
	}

}

function movieChanged(clip, trigger){
	actualPlayedVid = clip.vid;
	addHistory(clip.vid, clip.nid);
	changePageTitle(clip.title);
	if (trigger == 2 && gloriusConfiguration == "min"){
		setGloriusActiveElement(clip.vid);
	}
	restartFirstPageTimelineComments();
	loadClipTags(clip.vid);
}
function onFlashAppInit(){
	loadPlayer(playerSettings.vid, playerSettings.nid, playerSettings.type,
			playerSettings.date, playerSettings.scope, playerSettings.reload, 
			playerSettings.clearList, playerSettings.accordionNumber);
	setAutoRatate();
}

function getPlayerConfig(){
	preparePlayerConfig();
}

function loadGlorius(glorius){
	thisMovie("tswApp").loadGlorius(glorius);
//	alert(dumpObj(glorius,"glorius","",1));
}

function loadHitList(hitList){
	thisMovie("tswApp").loadHitList(hitList);
//	alert(dumpObj(hitList,"hitList","",1));
}

function loadComment(commentsList){
	thisMovie("tswApp").loadComment(commentsList);
	//alert(dumpObj(commentsList,"commentsList","",1));
}

function putPlayerConfigData(){
	thisMovie("tswApp").loadPlayerConfig(preparedPlayerConfig);
//	alert(dumpObj(preparedPlayerConfig,"preparedPlayerConfig","",1));
}

function loadPlayerConfig(playerConfig){
	preparedPlayerConfig = playerConfig;
//	setTimeout('putPlayerConfigData()', 500);

	thisMovie("tswApp").loadPlayerConfig(playerConfig);
//	alert(dumpObj(playerConfig,"loadPlayerConfig","",1));
}

function changeAccordion(tab){
	thisMovie('tswApp').changeAccordion(tab);
}

function addClipToHitList(clip, gloriusClip){
	thisMovie('tswApp').addClipToHitList(clip, gloriusClip);
}

function loadAdvData(advData){
//	alert(dumpObj(advData,"advData","",1));
	thisMovie("tswApp").loadAdvData(advData);
}
function configurationChanged(val){
	gloriusConfiguration = val;
}

function gloriusChanged(vid){
	setHitListActiveElement(vid);
}

function setHitListActiveElement(vid){
	thisMovie("tswApp").setHitListActiveElement(vid);
}

function setGloriusActiveElement(vid){
	thisMovie("tswApp").setGloriusActiveElement(vid);
}
function thisMovie(movieName) {
	if (WP.isIE||WP.isOpera) return window[movieName]; else return document[movieName];
}

//wysyla polecenie aktualizacji liczby komentarzy dla klipu
function changeCommentsCount(clip) {
	WP.ajax.get({url: 'zlicz_opinie.html', params: {_action:'changeCommentsCount',vid:clip.vid}} );
}

function changeOpinionPage(clip, page){
	getOpinionList(clip.vid, page);
}
function gloriusAutoRotate(smallGloriusConf, bigGloriusConf){
	thisMovie("tswApp").gloriusAutoRotate(smallGloriusConf, bigGloriusConf);
//	alert(dumpObj(smallGloriusConf,"smallGloriusConf","",1));
//	alert(dumpObj(bigGloriusConf,"bigGloriusConf","",1));
}

function loadSocialBookmarking(sbm) {
	thisMovie('tswApp').loadSocialBookmarking(sbm);
	//alert(dumpObj(sbm,"socialBookmarking","",1));
}
/** /PLAYER **/


/** TAGI **/
/**
 * Jeżeli nie ma elementy bxTagi to znaczy że klip nie ma tagów.
 *
 * @param vid string - id klipu dla którego mają być przeładowane tagi
 **/
function loadClipTags(vid) {
	var path = '/vid,'+vid+',tagi_ajax.html';
	WP.ajax.get({
		     url: path,
		     onSuccess: function(res) {
			ID('bxTagi').innerHTML = res.text;
			ID('bxTagi').setAttribute('title', vid);
			if (trim(res.text) == '') $('bxTagi').hide();
			else $('bxTagi').show();
		     }
	});
}

/** /TAGI **/


/**  HELPERS  **/

//wypisuje ladnie sformatowany objekt
//alert(dumpObj(advData,"a","",1));
var MAX_DUMP_DEPTH = 10;
function dumpObj(obj, name, indent, depth) {
	if (depth > MAX_DUMP_DEPTH) {
		return indent + name + ": <Maksymalne zagłębienie osiągnięte>\n";
	}

	if (typeof obj == "object") {
		var child = null;
		var output = indent + name + "\n";

		indent += "\t";
		for (var item in obj){
			try {
				child = obj[item];
			} catch (e) {
				child = "<Blad oceny>";
			}

			if (typeof child == "object") {
				output += dumpObj(child, item, indent, depth + 1);
			} else {
				output += indent + item + ": " + child + "\n";
			}
		}
		return output;
	} else {
		return obj;
	}
}

function trim(str, chars) {
	return ltrim(rtrim(str.toString(), chars), chars);
}

function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

/**  /HELPERS  **/

function redirectHelper(url){
	setTimeout('window.location.replace("'+url+'")',200);
}

function dumpProps(obj) {
	ID('wpFooterTSW').innerHTML = dumpObj(obj,"a","",1)
}