//
// Login Hash (needs to be loaded immeadetely)
//

function hashPwd(loginSalt, loginWindow, sessionId)
{
	var password = $('#loginForm input[name=password]');
	var output   = $('#loginForm input[name=loginval]');
	
	var hash = SHA1(loginSalt + password.val());
	hash = SHA1(hash + sessionId + loginWindow)
	output.val(hash);
	password.val('');
}

function prepareSecuredLogin(loginSalt, loginWindow, sessionId, oldLogin)
{
	$('#loginForm').submit(function() {
		if(!oldLogin)
		{
			hashPwd(loginSalt, loginWindow, sessionId);
		}
	});
	
	$('#loginBtn').click(function() {
		if(!oldLogin)
		{
			hashPwd(loginSalt, loginWindow, sessionId);
		}
		document.forms.login.submit();
	});
}

function wordwrap(string)
{
	wrapString = '<br />'
	length = 40;
	
	wrapped = '';
	word = '';
	html = false;
	
	for(i=0;i<string.length;i++)
	{
		char = string[i];
      
		/** HTML Begins */
		if(char == '<')
		{	
			if(word.length > 0)
			{
				wrapped += word;
				word = '';
			}
        
			html = true;
			wrapped += char;
		}
      
		/** HTML ends */
		else if(char == '>')
		{
			html = false;
			wrapped += char;
		}
      
		/** If this is inside HTML -> append to the wrapped string */
		else if(html)
		{
			wrapped += char;
		}
      
		/** Whitespace characted / new line */
		else if(char == ' ' || char == "\t" || char == "\n")
		{
			wrapped += word+char;
			word = '';
		}
      
		/** Check chars */
		else
		{
			word += char;

			if(word.length > length)
			{
				wrapped += word+wrapString;
				word = '';
			}
		}
	}

    if(word != '')
    {
		wrapped += word;
	}
    
	return wrapped;
}


$(document).ready(function()
{
	//
	// Search Field Functions
	//
	var popBox = $('#searchToggle').siblings('div.suggestBox');
	var items = popBox.children('div');
	
	$('#searchToggle').click(function(e)
	{
		popBox.css('display') == 'none' ? popBox.fadeIn() : popBox.fadeOut();
		e.cancelBubble = true;
		if(e.stopPropagation) e.stopPropagation();
	});
	
	$('#searchField').focus(function()
	{
		// dont' overwrite user input
		if(popBox.children('div:contains('+$('#searchField').val()+')').length != 0)
		{
			$('#searchField').val('');
		}
		$('#searchField').css('color', '');
	});
	
	$('#searchField').blur(function()
	{
		if($('#searchField').val() == '')
		{
			$('#searchField').val($('#searchToggle').siblings('div').children('div[sel=true]').text());
			$('#searchField').css('color', 'gray');
		}
	});
	
	items.click(function()
	{
		var elem = $(this);
		popBox.hide();
		
		// dont' overwrite user input
		if(popBox.children('div:contains('+$('#searchField').val()+')').length != 0)
		{
			$('#searchField').val(elem.text());
		}
		$('#searchArea').val(elem.attr('val'));

		items.css('font-weight', 'normal');
		items.attr('sel', 'false');
		
		elem.css('font-weight', 'bold');
		elem.attr('sel', 'true');
	});
	
	// Language Selector
	
	var popBox1 = $('#languageToggle').siblings('div.suggestBox');
	var items1 = popBox1.children('div');	
	
	$('#languageToggle').click(function(e)
	{
		popBox1.css('display') == 'none' ? popBox1.fadeIn() : popBox1.fadeOut();
		e.cancelBubble = true;
		if(e.stopPropagation) e.stopPropagation();
	});	
	
	items1.click(function()
	{
		var elem = $(this);
		popBox1.hide();
		if(elem.attr('sel')!='true')
		{
			document.location.href=elem.attr('val');
		}
		
	});	
	
	// Common
	
	$('body').click(function(e)
	{
		popBox.hide();
		popBox1.hide();
	});
				

});