var NZIOB = window.NZIOB || {};
var AsynFilePath = "http://www.nziob.org.nz/Asynchronous"

//-----------------------------------------------------------------
function TextLenghtCounter(el,maxAllowed){
	if(el.value.length>maxAllowed)el.value=el.value.substring(0,maxAllowed);
	document.getElementById('totalChars').innerHTML=(maxAllowed-el.value.length);
}

//-----------------------------------------------------------------
function mainmenu(){
	$("#nziob_container ul.horisontalNav").css({display: "none"}); // Opera Fix
	$("#nziob_container li").hover(function(){
		$(this).find('ul:first').css({visibility: "visible",display: "none"}).show(200);
		},function(){
			$(this).find('ul:first').css({visibility: "hidden"});
		});
	
}

/********************************************************************
 Class: ColExp
*********************************************************************/
NZIOB.ColExp = function()
{
	//-----------------------------------------------------------------
	function CollapseExpand(e)
	{
		var targetEl = $(this).parent().next();
		if(targetEl.css('visibility') == 'hidden'){
			targetEl.css({visibility: "visible",display: "none"}).toggle("fast");
			$(this).html('[Collapse]');
		}
		else{
			targetEl.css({visibility: "hidden",display: "none"});
			$(this).html('[Expand]');
		}
	}
	
	//-----------------------------------------------------------------
	function ExpandAll(e)
	{
		$(".toggleAttached").css({visibility: "visible",display: "none"}).toggle("fast");
		$('.showHideJBtns').html('[Collapse]');
	}
	
	//-----------------------------------------------------------------
	function CollapseAll(e)
	{
		$(".toggleAttached").css({visibility: "hidden",display: "none"});
		$('.showHideJBtns').html('[Expand]');
	}	

	//-----------------------------------------------------------------
	function DeleteDocument(e)
	{
		$(this).html("<img src='/images/site/loader.gif' alt='' />");

		$.ajax( {
			type:'GET',
			complete: UpdateList,
			url: AsynFilePath + '/DocumentUpdater.asp?id=' + $(this).attr("id")
			});
	}
	
	//-----------------------------------------------------------------
	function UpdateInvitation(e)
	{
		$.ajax( {
			type:'GET',
			complete: UpdateTable,
			url: AsynFilePath + '/InvitationUpdater.asp?id=' + $(this).attr("id")
			});
	}
	
	//-----------------------------------------------------------------
	function UpdateCPDPoint( e )
	{
		$.ajax( {
			type:'GET',
			complete: UpdateTable,
			url: AsynFilePath + '/CPDPointUpdater.asp?id=' + $(this).attr("id")
			});
	}	
	
	//-----------------------------------------------------------------
	function UpdateList( response )
	{
		var xmlDoc = response.responseXML;
		var option = xmlDoc.getElementsByTagName('option');

		if( option[0].getAttribute('state') == 1 ){
			var undefined;
			var root = xmlDoc.getElementsByTagName('root');
			var target = root[0].getAttribute('target');
			var targetElement = $("#" + target);
			if(targetElement.parent().attr("id")==undefined){
				targetElement.parent().attr("id","");
				targetElement.parent().css({visibility: "hidden",display: "none"});
			}
			else{
				targetElement.parent().next().attr("id","firstItem");
				targetElement.parent().css({visibility: "hidden",display: "none"});
			}
		}
	}
	
	//-----------------------------------------------------------------
	function UpdateTable( response )
	{
		var xmlDoc = response.responseXML;
		var option = xmlDoc.getElementsByTagName('option');

		if( option[0].getAttribute('state') == 1 ){
			var undefined;
			var root = xmlDoc.getElementsByTagName('root');
			var target = root[0].getAttribute('target');
			var mode = root[0].getAttribute('mode');
			var targetElement = $("#" + target);
			if( mode == "del" ){
				targetElement.parent().css({visibility: "hidden",display: "none"});				
				if( option[0].getAttribute('value') > -1 ){
					$("span#totalCpd").html(option[0].getAttribute('value') );					
				}
			}
			else if( mode == "sts" ){
				targetElement.html( option[0].getAttribute('text') );
			}
		}
	}
	
	return {
		//---------------------------------------------------------------
		init : function(e)
		{
			$('.toggleAttached').css({visibility: "hidden",display: "none"});
			$('.toggleAttached span.frmErrMsg').parent().css({visibility: "visible",display: "none"}).toggle("fast");
			$('.toggleAttached span.frmErrMsg').parent().parent().css({visibility: "visible",display: "none"}).toggle("fast");
			$('.showHideJBtns').bind('click', CollapseExpand);
			$('.showAll').bind('click', ExpandAll);
			$('.hideAll').bind('click', CollapseAll);
			$('.docDeleteBtn').bind('click', DeleteDocument);
			$('.invBtn').bind('click', UpdateInvitation);
			$('.cpdBtn').bind('click', UpdateCPDPoint);			
		}
	}
}();

$(document).ready(function(){mainmenu();});
$(document).ready(NZIOB.ColExp.init);
