var myAg=navigator.userAgent.toLowerCase();
var isMac=myAg.indexOf('mac')!=-1;

function OnMouseOver(object)
{
	object.style.textDecoration = "underline";
}

function OnMouseOut(object)
{
	object.style.textDecoration = "";
}

function newImage(arg)
{
	if (document.images)
	{
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages()
{
	if (document.images && (preloadFlag == true))
	{
		for (var i=0; i<changeImages.arguments.length; i+=2)
		{
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}


var preloadFlag = false;
function preloadImages()
{
	if (document.images)
	{
		Help_over = newImage("images/help-over.gif");
		UserProfile_over = newImage("images/user-profile-over.gif");		
		StartPage_over = newImage("images/start-page-over.gif");
		Logout_over = newImage("images/log-out-over.gif");
		pluss_img = newImage("images/plus.gif");
		minus_img = newImage("images/minus.gif");
		tab1_img = newImage("images/tabunselect1.gif");
		tab2_img = newImage("images/tabunselect2.gif");
		tab3_img = newImage("images/tabunselect3.gif");
		tab4_img = newImage("images/tabselect1.gif");
		tab5_img = newImage("images/tabselect2.gif");
		tab6_img = newImage("images/tabselect3.gif");
		preloadFlag = true;
	}
}


var pathEx = new RegExp( "(/(v[34]/)?(\\w*)/)", "ig" );
var pathMatch = pathEx.exec( location.pathname );
var servicePath = "/";
if( pathMatch != null && pathMatch.length > 1 )
{
	servicePath = pathMatch[1];
}

function onLoad() {
	// get username to use in cookies
	
	// init lastTab
	lastTab[0] = tab4;
	lastTab[1] = tab1;
	lastTab[2] = tab6;
	lastTab[3] = tab7;
	lastTab[4] = tab8;
	lastTab[5] = tab11;
	lastTab[6] = tab12;
	lastTab[7] = tab20;

	TabSwitch( reportsArray, true );

	changePage( tab0, tab0[2].name, "", reportsArray[0][0], true );

	var catNo = GetCookie("category");
	var catId = GetCookie("templateid");
		
	var numberOfCat = 0;
	
	if( typeof category == 'object') {
		if( category.length != null) {
			numberOfCat = category.length;
		} else {
			numberOfCat = 1;
		}
	}
	else
	{
		mainMessage("Go to the <b>Other Features</b> menu in order to manage your categories.");
		TabHide( reportsArray );
		return;
	}
	
	if( catNo == null || catNo >= numberOfCat)
	{
		catNo = 0;
	}
	
	if( catId == null )
	{
		catId = 0;
	}
	
	if ( category.length != null ) {
		lastSelected = category[catNo];
	} else {
		lastSelected = category;
	}
	
	hilite(lastSelected); //highlights category!!!
	//OnCategorySelection(catNo,catId,lastSelected.innerText);
	if( category.length != null) {
		category[catNo].parentElement.onclick();
	} else {
		category.parentElement.onclick();
	}
	
	var menuCookie = GetCookie("menu");
	if( menuCookie != null ) {
		menu_toggle();
	}
}

var lastSelected;

function hilite(object) {
	lastSelected.className = "textTemplates";
	object.className = "selected";
	lastSelected = object;
}


var lastTab = new Array();
var activeTemplate = 0;
var activeTemplateId;

function OnCategorySelection( index ) {
	var argv = OnCategorySelection.arguments;
	var argc = OnCategorySelection.arguments.length;
	var templateId = (argc > 1) ? argv[1] : 0;
	var templateName = (argc > 2) ? argv[2] : "unknown";
	
	
	// global variable to make sure the navigating triggered by TabSwitch is correct
	activeTemplate = index;
	activeTemplateId = templateId;
	
	SetCookie("category", index, exp, servicePath);
	SetCookie("templateid", templateId, exp, servicePath);
			
	TabSwitch( reportsArray );
	ReportName.innerHTML = templateName;
}

var lastLevel;
function changePage(SelTab,FileName,Param,tabLevel) {
	var argv = changePage.arguments;
	var argc = changePage.arguments.length;
	var onload = (argc > 4) ? argv[4] : false;

	var xCoord = window.frames('content').document.body.clientWidth;
	var yCoord = window.frames('content').document.body.clientHeight;

	if( lastTab[tabLevel] ) {
		lastTab[tabLevel][0].src = "images/tabunselect1.gif";
		lastTab[tabLevel][1].background = "images/tabunselect2.gif";
		lastTab[tabLevel][2].className = "tabunselected";
		lastTab[tabLevel][3].src = "images/tabunselect3.gif";
		mainMessage("Please wait while loading...");

		if( !onload ) {
			window.open( "content_redirector.aspx?tab=" + FileName + "&templateid=" + activeTemplateId + "&templateno=" + activeTemplate + "&view=" + Param + "&x=" + xCoord + "&y=" + yCoord ,"content", "", false );
		}		
	}
	lastTab[tabLevel] = SelTab;
	lastLevel = tabLevel;
	
	SelTab[0].src = "images/tabselect1.gif";
	SelTab[1].background = "images/tabselect2.gif";
	SelTab[2].className = "tabselected";
	SelTab[3].src = "images/tabselect3.gif";
}

function mainMessage( text ) {
	var argv = mainMessage.arguments;
	var argc = mainMessage.arguments.length;
	var doc = (argc > 1) ? window.parent.document.frames.content.document : document.frames.content.document;

	doc.body.innerHTML = "";
	doc.writeln("<html><head><link REL='stylesheet' HREF='allstyles.css' TYPE='text/css'></head><body class='slave' style='BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px' topmargin='0' leftmargin='0' rightmargin='0' marginheight='0' marginwidth='0'>");
	doc.writeln("<table width='100%' class=tabs cellspacing=0 cellpadding=10 border=0><tr><td>");
	doc.writeln("<p class='text'>" + text + "</p>");
	doc.writeln("</td></tr></table></body></html>");
}

var profileArray = new Array( [0,"tab4"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", ""],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );
var reportsArray = new Array( [1,"tab1"], ["reports", ""], ["alerts", ""] , ["sources", ""], ["keywords", ""], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"],["support", "none"], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", ""], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", ""], ["guimaker", "none"], ["template_statistics", ""], ["db", ""], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", ""], ["article_rating", ""], ["cust_newsletter", "none"] );
var helpArray = new Array( [2,"tab5"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", ""], ["quick_guide", ""], ["support", ""], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", ""], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );
var startPageArray = new Array( [3,"tab7"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", ""], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );
var categoryArray = new Array( [4,"tab8"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", "none"], ["add_category", ""], ["create_category", ""], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );
var newsletterArray = new Array( [5,"tab11"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", ""], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", ""] );
var adminArray = new Array( [6,"tab12"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", ""], ["category_manager", ""], ["library_manager", ""], ["poller_manager", ""], ["service_manager", ""], ["locale_manager", ""], ["about", "none"], ["search", "none"], ["guimaker", "none"], ["template_statistics", "none"], ["db", "none"], ["source_manager", ""], ["microportal_manager", ""], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );
var intranetArray = new Array( [7,"tab20"], ["reports", "none"], ["alerts", "none"] , ["sources", "none"], ["keywords", "none"], ["user_profile", "none"],  ["user_manual", "none"], ["quick_guide", "none"], ["support", "none"], ["startpage", "none"], ["add_category", "none"], ["create_category", "none"], ["newsletter_builder", "none"], ["newsletter_publish", "none"], ["user_manager", "none"], ["category_manager", "none"], ["library_manager", "none"], ["poller_manager", "none"], ["service_manager", "none"], ["locale_manager", "none"], ["about", "none"], ["search", "none"], ["guimaker", ""], ["template_statistics", "none"], ["db", "none"], ["source_manager", "none"], ["microportal_manager", "none"], ["source_checker", "none"], ["article_rating", "none"], ["cust_newsletter", "none"] );

function TabSwitch( tabArray ) {
	var argv = TabSwitch.arguments;
	var argc = TabSwitch.arguments.length;
	var onload = (argc > 1) ? argv[1] : false;

	for( var i = 1 ; i < tabArray.length ; i++ ) {
		if( eval( tabArray[i][0] + '.cw_rights != ""' ) )
		{
			eval( tabArray[i][0] + '.style.display = "' + tabArray[i][1] +'"');
		}
	}
	
	var tabLevel = tabArray[0][0];

	//set catman as default if you don't have userman rights	
	if( eval( tabArray[14][0] + '.cw_rights == ""' ) )
	{
		lastTab[6] = tab13;		
	}

	if( lastTab[tabLevel] && !onload) {
		lastTab[tabLevel][2].onclick();
	}		
	
}

function TabHide( tabArray ) {
	for( var i = 1 ; i < tabArray.length ; i++ )
	{
		eval( tabArray[i][0] + '.style.display = "none"');
	}
}

function menu_toggle() {
	var imenu 	= document.getElementById('icon_menu');
	var iarrow	= document.getElementById('icon_arrow');
	if (imenu.style.display != "none")  {
		imenu.style.display = "none";
		DeleteCookie("menu");
		iarrow.src = "images/icon_arrowup.gif";
	}	
	else {
		imenu.style.display = "block";
		SetCookie("menu", "true", exp, servicePath );
		iarrow.src = "images/icon_arrowdown.gif";
	}
}


function OnMenuSelect(choice)
{
	if (choice == "help")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( helpArray );
	}
	else if (choice == "startpage")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( startPageArray  );
	}
	else if (choice == "logout")
	{
		DeleteCookie("remember");
		DeleteCookie("username");
		DeleteCookie("password");
		DeleteCookie("force_service");
		navigate("login.aspx");
	}
	else if (choice == "category")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( categoryArray  );
	}
	else if (choice == "userprofile")
	{
		// Clear the reportname
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( profileArray );
	}
	else if (choice == "newsletter_publish")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( newsletterArray  );
	}
	else if (choice == "customer_newsletter")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( newsletterArray  );
		changePage(tab28,'newsletter/newsletter_customer','',5);
	}	
	else if (choice == "admin")
	{
		ReportName.innerHTML = "&nbsp;";
		TabSwitch( adminArray  );
	}
	else if (choice == "mediawatcher_builder")
	{
		window.open( "readonly/guimaker.aspx", "_blank", "", false );
	}
	else if (choice == "portal_generator")
	{
		window.open( "portalgenerator/portal_settings.aspx", "_blank", "width=790, height=570, resizable=yes", false );
	}


}

function DownloadOnClick()
{
	window.open("webband/downloader.aspx", "", "width=402,height=312, status=yes,toolbar=no,menubar=no,location=no,resizable=yes,scrollbars=no", false );
}

// Cookie Code

var expDays = 360;
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));
// We set this in the onload function
var preCookieName = "";

function getCookieVal (offset) {
	var endstr = document.cookie.indexOf (";", offset);

	if (endstr == -1)
		endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie (name) {
	var arg = name + preCookieName + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;

	while (i < clen) {
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return getCookieVal (j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break;
	}
	return null;
}

function SetCookie (name, value) {
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	document.cookie = name + preCookieName + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) +  ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}

function DeleteCookie (name) {
	var exp = new Date();
	exp.setTime (exp.getTime() - 1);
	var cval = GetCookie (name);
	document.cookie = name + preCookieName + "=" + cval + "; expires=" + exp.toGMTString();
}

function RemoveIllegalCharacters( object )
{
	Num = new String(object.value);
	//We break this up for stupid firewall
	Num = eval( 'Num.' + 'rep' + 'lace(/[\\/:*?"<>|]/g, "")' );
	
	if (object.value != Num)
	{
		object.value = Num;
	}
}
