// MY PROFILE FORM
function submitMyProfileForm() {
	var 	err = '';
	if (isEmailAddress($('#email').val())==false) {
		err+="Your Email is invalid"+"\r\n";
	}
	if ($('#password').val() == "") {
		err+="Your Password is invalid"+"\r\n";
	} else if ($('#password').val() != $('#verify_password').val()) {
		err+="Both Passwords must match"+"\r\n";
	}
	if ($('#business_type').val() == '0') {
		err+="Please select a Type of Business"+"\r\n";
	}
	if ($('#specialty').val() == '0') {
		 err+="Please select an Area of Specialty"+"\r\n";
	}
	if ($('#state').val() == '0') {
		err+="Please select a State"+"\r\n";
	}
	if ($('#country').val() == '0') {
		err+="Please select a Country"+"\r\n";
	}
	if ($('#contacted').val() == '0') {
          err+="Please select a Contact option"+"\r\n";
	}
	   
	if (err) {
		alert(err);
	} else {
		$('#myProfileFormBtn').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> Submitting...');
		var vars = getFormFieldsByHoldingID('myProfileForm');
		vars += '&action=submitMyProfileForm';
	
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);	
	}	    
}
// EDIT PROFILE FORM
function submitEditPosterForm(posterID) {
	$('#editPosterForm'+posterID+'Btn').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> Submitting...');
	var vars = getFormFieldsByHoldingID('editPosterForm'+posterID);
	vars += '&action=submitEditPosterForm&posterID='+posterID;
	
	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);	
}
// CONTACT ADMIN FORM
function submitContactAdminForm() {
	$('#contactAdminFormBtn').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> sending...');
	var vars = getFormFieldsByHoldingID('contactAdminForm');
	vars += 'action=submitContactAdminForm';

	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);	
}
// REPORT COMMENT ABUSE
function reportCommentAbuse(comment_id) {
	$('#report_comment_abuse_'+comment_id).html('');
	$('#rejectBtns_'+comment_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> submitting...');
	var vars = getFormFieldsByHoldingID('abuseHolder_'+comment_id+'');
	vars += 'action=reportCommentAbuse&comment_id='+comment_id;

	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);
}
// ORDER ARCHIVE POSTER FORM
function orderPosterPdf(poster_id) {
	$('#order_pdf').html('');
	$('#orderBtns').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> submitting...');
	
	var vars = getFormFieldsByHoldingID('order_form_holder');
	vars += 'action=orderPosterPdfJSON&poster_id='+poster_id;

	//SUBMIT FORM
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);
}
// CREATE ACCOUNT FORM
function submitCreateAccountForm() {
	var 	err = '';
	if (isEmailAddress($('#email').val())==false) {
		err+="Your Email is invalid"+"\r\n";
	}
	if ($('#create_password').val() == "") {
		err+="Your Password is invalid"+"\r\n";
	} else if ($('#create_password').val() != $('#verify_password').val()) {
		err+="Both Passwords must match"+"\r\n";
	}
	if ($('#business_type').val() == '0') {
		err+="Please select a Type of Business"+"\r\n";
	}
	if ($('#specialty').val() == '0') {
		 err+="Please select an Area of Specialty"+"\r\n";
	}
	if ($('#state').val() == '0') {
		err+="Please select a State"+"\r\n";
	}
	if ($('#country').val() == '0') {
		err+="Please select a Country"+"\r\n";
	}
	if ($('#contacted').val() == '0') {
          err+="Please select a Contact option"+"\r\n";
	}
	   
	if (err) {
		alert(err);
	} else {
		$('#createAccountFormBtn').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = getFormFieldsByHoldingID('createAccountForm');
		vars += 'action=submitCreateAccountForm';
	
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);
	}
}
// Approve Pending Poster
function approvePendingPoster(poster_name, poster_id, hide) {
	var answer = confirm('Are you sure you want to approve poster "'+poster_name+'"?');
	if (answer){
		$('#pendingPosterApproveBtn'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle"/> saving...');
		var vars = 'action=approvePendingPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "approvePendingPosterOnComplete("+poster_id+",\""+hide+"\")");
	} else{
	    return false;	
	}
}
function approvePendingPosterOnComplete(poster_id, hide) {
	if (hide) { 
		$("#reviewPoster"+poster_id).slideToggle();
	}
}
// Delete Pending Poster
function deletePendingPoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to delete "'+poster_name+'"?');
	if (answer){
		$('#pendingPosterApproveBtn'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=deletePendingPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "deletePendingPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}
function deletePendingPosterOnComplete(poster_id) {
	$("#reviewPoster"+poster_id).slideToggle();
}
// Reject Pending Poster
function rejectPendingPoster(poster_name, poster_id, hide) {
	var answer = confirm('Are you sure you want to reject "'+poster_name+'"?');
	if (answer){
		$('#pendingPosterApproveBtn'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=rejectPendingPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "rejectPendingPosterOnComplete("+poster_id+",\""+hide+"\")");
	} else{
	    return false;	
	}
}
function rejectPendingPosterOnComplete(poster_id, hide) {
	$("#reject_poster_reason_link_"+poster_id).trigger('click');
	if (hide) { 
		$("#reviewPoster"+poster_id).slideToggle();
	}
}
function rejectPosterReason(poster_id) {
	$('#rejectBtns_'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
	var vars = getFormFieldsByHoldingID('reason_form_'+poster_id);
	vars += 'action=rejectPosterReason&poster_id='+poster_id;
	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "rejectPosterReasonOnComplete("+poster_id+")");
}
function rejectPosterReasonOnComplete(poster_id) {
	$.fn.fancybox.close();
}
// Unapprove Approved Poster
function unapprovePoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to unapprove "'+poster_name+'"?');
	if (answer){
		$('#approvedPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=unapprovePoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideApprovedPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}

// Set Poster to Expire
function setExpirePoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to set "'+poster_name+'" to expire?');
	if (answer){
		$('#approvedPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=setExpirePoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideApprovedPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}

// Delete Approved Poster
function deleteApprovedPoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to delete "'+poster_name+'"');
	if (answer){
		$('#approvedPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=deleteApprovedPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideApprovedPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}

// hiding Approved Poster on complete unapprove/expire/delete
function hideApprovedPosterOnComplete(poster_id) {
	$("#approvedPoster"+poster_id).slideToggle();
}


// Delete Expired Poster
function deleteExpiredPoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to delete "'+poster_name+'"');
	if (answer){
		$('#expiredPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=deleteExpiredPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideExpiredPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}
function setPendingExpiredPoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to move "'+poster_name+'" to pending?');
	if (answer){
		$('#expiredPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=setPendingExpiredPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideExpiredPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}

// hiding Expired Poster on complete delete
function hideExpiredPosterOnComplete(poster_id) {
	$("#expiredPoster"+poster_id).slideToggle();
}

// Delete Rejected Poster
function deleteRejectedPoster(poster_name, poster_id) {
	var answer = confirm('Are you sure you want to delete "'+poster_name+'"');
	if (answer){
		$('#rejectedPosterBtns'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> saving...');
		var vars = 'action=deleteRejectedPoster&poster_name='+poster_name+'&poster_id='+poster_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "hideRejectedPosterOnComplete("+poster_id+")");
	} else{
	    return false;	
	}
}

// hiding Expired Poster on complete delete
function hideRejectedPosterOnComplete(poster_id) {
	$("#rejectedPoster"+poster_id).slideToggle();
}

// Delete Comment
function deleteComment(poster_name, poster_id, review_id) {
	var answer = confirm('Are you sure you want to delete this comment for poster "'+poster_name+'"');
	if (answer){
		var vars = 'action=deleteComment&poster_id='+poster_id+'&review_id='+review_id;
		//SUBMIT FORM	
		ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "deleteCommentOnComplete("+review_id+")");
	} else{
	    return false;	
	}
}
function deleteCommentOnComplete(poster_id) {
	$("#ind_comment_"+poster_id).slideToggle();
}

// Download Poster
function downloadPoster(poster_id, update_num) {
	$('#downloadPdf'+poster_id).html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> downloading...');
	var vars = 'action=downloadPoster&poster_id='+poster_id+'&update_num='+update_num;
	
	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars, "downloadPosterOnComplete("+poster_id+")");
}
function downloadPosterOnComplete(poster_id) {
	// downloads pdf
	document.forms["download_pdf_form"+poster_id].submit();
}
// Contact Author Form
function submitContactAuthorForm(poster_id, author_id) {
	$('#contactAuthorFormBtn').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> sending...');
	var vars = getFormFieldsByHoldingID('contactAuthorForm');
	vars += 'action=submitContactAuthorForm&poster_id='+poster_id+'&author_id='+author_id;

	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);	
}

// Search Approved Posters
function submitSearchApprovedPosters() {
	$('#approvedPosterHolder').html('<img src="filebin/images/login/loading.gif" alt="" class="middle" /> loading...');
	$('#searchApprovedPostersBtn').html('<img src="filebin/images/login/loading.gif" alt="..." class="middle" />');
	var vars = getFormFieldsByHoldingID('searchApprovedPosterHolder');
	vars += 'action=submitSearchApprovedPosters';

	//SUBMIT FORM	
	ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);	
}

// Add Keyword Rows
function addKeywordField() {
		// declars holder id
		var keywordHolder = 'addKeywordHolderProfile';
		//finds number of keywords so far
		var numKeywords = $('#'+keywordHolder+' .keywordFieldRow').length;
		
		// sets field and icons for new row
		var newNum = numKeywords+1;
		var inputField = '<input type="text" name="keyword[]" id="keyword_'+newNum+'" class="input_med" value="" />';
		var deleteIcon = '<img src="filebin/images/login/delete_icon.png" alt="Delete Keyword" title="Delete Keyword" onclick="deleteKeywordField('+newNum+');" />';
		// Appends new row to holder div
		$('#'+keywordHolder).append('<div id="keywordFieldRow_'+newNum+'" class="keywordFieldRow">'+inputField+deleteIcon+'</div>');
}
function addKeywordFieldPoster() {
		// declars holder id
		var keywordHolder = 'addKeywordHolderPoster';
		//finds number of keywords so far
		var numKeywords = $('#'+keywordHolder+' .keywordFieldRowPoster').length;
		
		// sets field and icons for new row
		var newNum = numKeywords+1;
		var inputField = '<input type="text" name="keyword[]" id="keywordPoster_'+newNum+'" class="input_med" value="" />';
		var deleteIcon = '<img src="filebin/images/login/delete_icon.png" alt="Delete Keyword" title="Delete Keyword" onclick="deleteKeywordFieldPoster('+newNum+');" />';
		// Appends new row to holder div
		$('#'+keywordHolder).append('<div id="keywordFieldRowPoster_'+newNum+'" class="keywordFieldRowPoster">'+inputField+deleteIcon+'</div>');
}
// Delete Keyword Rows
function deleteKeywordField(numRow, id) {
		$('#keywordFieldRow_'+numRow).slideUp('slow');
		$('#keywordFieldRow_'+numRow).html('');
		
		if (id) { 
			var vars = 'action=deleteKeywordField&id='+id;
			//SUBMIT FORM	
			ajax_json_call('/filebin/ajax/php/posterAJAX.php', 'POST', vars);
		}
}
function deleteKeywordFieldPoster(numRow) {
		$('#keywordFieldRowPoster_'+numRow).slideUp('slow');
		$('#keywordFieldRowPoster_'+numRow).html('');
}

//STANDARD AJAX HANDLERS
function ajax_json_call(callUrl, callType, callVars, onCompleteFunc) {
	try {
		$.ajax({
			type: callType,
			url: callUrl,
			data: callVars,
			dataType: "json",
			success: function(data) {
				if (data) {
					process_success_ajax_json_call(data);
				} else {
					//error
				}
		 	},
			complete: function() {
				if (eval("typeof " + onCompleteFunc + " == 'function'")) {
					eval(onCompleteFunc+'()');
				}
			}
		});
	} catch (e) {
		//nothing for now
	}
}
function process_success_ajax_json_call(data) {
	if (data) {
		var alert_content="";
		$.each(data, function(id, dataHolder) {
			
			/*** SPECIAL CASES FOR ATHOGEN ***/
				// Clear form field values after submitting
				if (id == 'clear_values') {
					clearFormFieldsByHoldingID(dataHolder.jContentReturn);
				// Redirect to another page		
				} else if (id == "redirect") {
					window.location = dataHolder.jContentReturn;
				// Close dialog
				} else if (id == "close_dialog") {
					$.fn.fancybox.close();
				}
			/*** end SPECIAL CASES FOR ATHOGEN ***/
			
			if ($("#"+id) && id!="alert_msg") {
				if (dataHolder.jAction.indexOf('insert')>-1) {
					$(dataHolder.jContentReturn)[dataHolder.jAction]('#'+dataHolder.jHelpId);
				} else {
					$("#"+id)[dataHolder.jAction](dataHolder.jContentReturn);
				}
			}
			if (id=="alert_msg") alert_content += content+"\n";
		});
		if (alert_content != "") alert(alert_content);
	}
	else {
		//process error here...
	}
}
function clearFormFieldsByHoldingID(id) {
	var inputs = $('#'+id+' :input');
	inputs.each(function() {
		$(this).val("");
	});
	var textarea = $('#'+id+' textarea');
	textarea.each(function() {
		$(this).val("");
	});
}
function getFormFieldsByHoldingID(id) {
	var returnStr = '';
	if (jQuery("#"+id)) {
		//$('input[name=baz]:checked').val()
		var $inputs = jQuery('#'+id+' :input');
		$inputs.each(function() {
			if (this.name != '') {
				if (this.type != 'checkbox' && this.type != 'file' && this.type != 'image') {
					returnStr += this.name+"="+encodeURIComponent(jQuery(this).val())+"&";
				} else if (this.type == 'checkbox') {
					if (jQuery(this).is(':checked')) {
						returnStr += this.name+"="+encodeURIComponent(jQuery(this).val())+"&";
					}
				}
			}
		});
		
		var $selects = jQuery('#'+id+' select');
		$selects.each(function() {
			if (this.type =='select-single') {
				returnStr += this.name+"="+encodeURIComponent(jQuery(this).val())+"&";
			} 
			/*
			else if (this.type =='select-multiple') {
				jQuery(this).each
			}
			*/
		});
		
		var $textarea = jQuery('#'+id+' textarea');
		$textarea.each(function() {						
			if (this.name != '') {
				//returnStr += this.name+"="+encodeURIComponent(jQuery(this).val())+"&";
			}
		});
		
	}
	return returnStr;
}
