/**
 * Recent question/answer display process ajax call
 *
 * @return void
 */
function getRecentQuestions() {
	$('#spnRecentQuestionsStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.get('/public/display-recent-questions', {}, function(a_objResponse){
		$('#spnRecentQuestionsStatus').html('');
		$('#spnRecentQuestions').html(a_objResponse);
	}, 'text');
}

/**
 * Question ask form process ajax call
 *
 * @return void
 */
function doAsk() {
	$('#spnAjaxStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.post('/public/process-ask', $('#frmMain').serialize(), function(a_objResponse){
		$('#spnAjaxStatus').html('');
		$('#spnStatus').html(a_objResponse.message);
		$('#divMsgDisplay').effect("highlight", {color:'#FFFF64'}, 1000);
	}, 'json');
}

/**
 * Contact form process ajax call
 *
 * @return void
 */
function doContact() {
	$('#spnAjaxStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.post('/index/docontact', $('#frmMain').serialize(), function(a_objResponse){
		$('#spnAjaxStatus').html('');
		$('#spnStatus').html(a_objResponse.message);
		$('#divMsgDisplay').effect("highlight", {color:'#FFFF64'}, 1000);

		if (a_objResponse.status) {
			$('#txtName').val('');
			$('#txtEmail').val('');
			$('#cmbRegarding').val('Information Request');
			$('#txtSubject').val('');
			$('#txtMsg').val('');
			$('#frmMain').effect("highlight", {color:'#FFFF64'}, 1000);
		}

	}, 'json');
}

/**
 * Top news display process ajax call
 *
 * @return void
 */
function getTopNews() {
	$('#spnAjaxStatusNews').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.get('/news-and-events/topnews', {}, function(a_objResponse){
		$('#spnAjaxStatusNews').html('');
		$('#divAjaxResponseNews').html(a_objResponse);
	}, 'text');
}

/**
 * Top articles display process ajax call
 *
 * @return void
 */
function getTopArticles() {
	$('#spnAjaxStatusArticles').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.get('/articles/toparticles', {}, function(a_objResponse){
		$('#spnAjaxStatusArticles').html('');
		$('#divAjaxResponseArticles').html(a_objResponse);
	}, 'text');
}

/**
 * Login form process ajax call
 *
 * @return void
 */
function processLogin() {
	$('#spnAjaxStatusLogin').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.post('/member/process-login', $('#frmLogin').serialize(), function(a_objResponse){
		$('#spnAjaxStatusLogin').html('');

		if (!a_objResponse.status) {
			$('#spnStatusLogin').html(a_objResponse.message);
			$('#divMsgDisplay').effect("highlight", {color:'#FFFF64'}, 1000);
		}

		else {
			window.location = '/member/profile';
		}
	}, 'json');
}

/**
 * Registration form process ajax call
 *
 * @return void
 */
function processRegister() {
	$('#spnAjaxStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.post('/member/process-register', $('#frmMain').serialize(), function(a_objResponse){
		$('#spnAjaxStatus').html('');

		if (!a_objResponse.status) {
			$('#spnStatus').html(a_objResponse.message);
			$('#divMsgDisplay').effect("highlight", {color:'#FFFF64'}, 1000);
			$.scrollTo('#spnStatus',800);
		}

		else {
			window.location = '/member/profile';
		}
	}, 'json');
}

/**
 * Get province information per country process ajax call
 *
 * @return void
 */
function getProvince(a_intCountryID, a_strTarget) {
	$.get('/member/province/id/' + a_intCountryID, {}, function(a_objResponse){
		var options = '';

		for (var i=0; i<a_objResponse.length; ++i){
			options += '<option value="' + a_objResponse[i].prv_id + '">' + a_objResponse[i].prv_name + '</option>';
		}

		$(a_strTarget).html(options);
	}, 'json');
}

function notifyApproval() {
	$('#spnApprovalRequestStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	if ($.cookie('notifyapproval') == 'true') {
		$('#spnApprovalRequestStatus').html('<div id="divMsgDisplay" class="error" style="margin-top:10px; margin-bottom:0;">We are sorry, You have to wait 48 hours between reminders!</div>');
	}

	else {
		$.get('/member/notifyapproval', {}, function(a_objResponse){
			$('#spnApprovalRequestStatus').html('');

			if (a_objResponse.status) {
				$.cookie('notifyapproval', 'true', { expires:2 });
				$('#aRequestApproval').attr('href','javascript:void(0);');
				$('#spnApprovalRequestStatus').html('<div id="divMsgDisplay" class="success" style="margin-top:10px; margin-bottom:0;">All the members listed below were notified successfully!</div>');
			}

			else {
				$('#spnApprovalRequestStatus').html('<div id="divMsgDisplay" class="error" style="margin-top:10px; margin-bottom:0;">We are sorry, there was an error occured while notifying member. Make sure there no already approved members on the list and try again.</div>');
			}
		}, 'json');
	}
}

function requestReference() {
	$('#spnRequestReferenceStatus').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.post('/member/requestreference', $('#frmRequestReference').serialize(), function(a_objResponse){
		$('#spnRequestReferenceStatus').html('');

		if (a_objResponse.status) {
			$('#aRequestReference').attr('href','javascript:void(0);');
		}

		$('#spnRequestReferenceStatus').html('<div style="margin-top:10px;">' + a_objResponse.message + '</div>');
	}, 'json');
}

/**
 * Toggle the message box between show and hide
 *
 * @return void
 */
function toggleDetails() {
	if ($('#ulMsgList').css('display') == 'none') {
		$('#ulMsgList').fadeIn('slow');
		$('#imgExpangMsg').attr('src','/img/icon/minus.gif');
		$('#imgExpangMsg').attr('alt','Hide Box');
		$('#imgExpangMsg').attr('title','Hide Box');
	}

	else {
		$('#ulMsgList').fadeOut('slow');
		$('#imgExpangMsg').attr('src','/img/icon/plus.gif');
		$('#imgExpangMsg').attr('alt','Show Box');
		$('#imgExpangMsg').attr('title','Show Box');
	}
}

/**
 * Main menu process
 *
 * @return void
 */
function mainmenu(){
	$('#nav ul').css({display: "none"}); // Opera Fix

	$('#nav li').hover(function(){
		$(this).find('ul:first:hidden').css({visibility: "visible",display: "none"}).fadeIn(400);

		if (($(this).find('a:first').attr('class') != 'mLink') && ($(this).find('a:first').attr('class') != 'mSept')) {
			$(this).find('a:first').addClass('mns');
		}

	},function(){
		$(this).find('ul:first').css({visibility: "hidden"});

		if (($(this).find('a:first').attr('class') != 'mns')) {
			$(this).find('a:first').removeClass('mns');
		}
	});
}

function getBranchList() {
	$('#spnBranchList').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.get('/SLDA/index/branchlist', {}, function(a_objResponse){
		$('#spnBranchList').html('');
		$('#spnBranchList').html(a_objResponse);
	}, 'text');
}

function getBranchContentList(a_intBranchID) {
	$('#spnBranchContentList').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="absmiddle" alt="Loading ..." />');

	$.get('/SLDA/index/branchcontentlist/id/' + a_intBranchID, {}, function(a_objResponse){
		$('#spnBranchContentList').html('');
		$('#spnBranchContentList').html(a_objResponse);
	}, 'text');
}

function bindCommitteeNav() {
	$("#cmbCommitteeYearSelector").change(function () {
		$("#cmbCommitteeYearSelector option:selected").each(function(){
			if ($(this).val() != '') {
				window.document.location = '/SLDA/standing-committees/' + $(this).val();
			}
		});
	}).trigger('change');
}

function bindGovernanceNav() {
	$("#cmbGovernanceYearSelector").change(function () {
		$("#cmbGovernanceYearSelector option:selected").each(function(){
			if ($(this).val() != '') {
				window.document.location = '/SLDA/governance/' + $(this).val();
			}
		});
	}).trigger('change');
}

function searchNow() {
	window.document.frmSearch.submit();
}

function editBucket(a_intSection, a_strID, a_blnIsStatic) {
	$('#' + a_strID + 'Status').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="top" alt="Loading ..." />');

	$.post('/member/edit', {intSection:a_intSection, blnIsStatic:a_blnIsStatic}, function(a_objResponse){
		$('#' + a_strID + 'Status').html('');
		$('#' + a_strID).html(a_objResponse);
	}, 'text');
}

function saveBucket(a_strID, a_strForm) {
	$('#' + a_strID + 'Status').html('<img src="/img/ajax-loader-transparent.gif" height="16" width="16" align="top" alt="Loading ..." />');

	$.post('/member/savebucket', $('#' + a_strForm).serialize(), function(a_objResponse){
		$('#' + a_strID + 'Status').html('');
		$('#spnEditResponse').html(a_objResponse.message);
		$('#divMsgDisplay').effect("highlight", {color:'#FFFF64'}, 1000);
	}, 'json');
}

/**
 * Register all onload functions
 *
 * @return void
 */
$(document).ready(function(){
	mainmenu();

	$("#ulAccordion").accordion({
		header: '.jqAccordionHead',
		active: '.jqAccordionActive',
		event: 'mouseover'
	});
	
	$("#txtBDay").datepicker({
		yearRange: strDateRange,
	    dateFormat: "yy/mm/d",
	    showOn: "both",
	    buttonImage: "/img/icon/calendar.gif",
	    buttonImageOnly: true,
	    changeMonth: true,
		changeYear: true,
		defaultDate: '-120y'
	});

	$('#aLogOff').click(function() { $("#divLoginConfirm").dialog('open'); });

	$("#divLoginConfirm").dialog({
		bgiframe: true,
		resizable: false,
		height: 200,
		width: 350,
		modal: true,
		autoOpen: false,
		overlay: {
			backgroundColor: '#000',
			opacity: 0.5
		},
		buttons: {
			'Yes, Logoff now': function() {
				$(this).dialog('close');
				window.location = '/member/logoff';
			},
			Cancel: function() {
				$(this).dialog('close');
			}
		}
	});

	$("#divPersonalTabs, #divPreferenceTabs").tabs();
	getBranchList();
});