/*
 * jQuery Pages plugin
 * Includes several JQuery plugins
 * 
 */

// plugin definitions
jQuery.extend({

    Content_Logout: function(mainTarget){
         // Get Services default  
         var curPreProc = "$.ClearUser();";//"$.Content_GetInfoBox();";
         var curPostProc = "";//"$.Content_GetAccountMenu();";
         $.CMS_Acquire("login.php", mainTarget, "", "", curPreProc, curPostProc ); 
    },
   
    ShowLoadingImage: function(mainTarget) {
         $.CMS_Acquire("loading.htm", mainTarget, "", "", "", ""); 
    },
    
    loadLogin: function(mainTarget) {
	    var curPreProc = "";
	    var curPostProc = "$.LoadPage('profile.php','#regPanel');";
         $.CMS_Acquire("login.php", mainTarget, "", "", curPreProc, curPostProc ); 
    },
    
    LoadPage: function(pageName, divTarget, inRequest) {
	    var curPreProc = "$.ShowLoadingImage('" + divTarget + "');";
	    var curPostProc = "";
	    if (inRequest == null)
	    	inRequest = "";

        $.CMS_Acquire(pageName, divTarget, inRequest, "", curPreProc, curPostProc ); 
    },

    LookupUser: function(searchItem, iCompanyId, divTarget) {
	    var oItem = document.getElementById(searchItem);
	    var sValue = "";
	    
	    if (oItem) {
		    sValue = oItem.value;
		    //alert(sValue);
		    inRequest = "lookupName=" + sValue+"&iCompanyId="+iCompanyId;
		    var curPreProc = "";
		    var curPostProc = "";
		    $.CMS_Acquire("lookupUser.php", divTarget, inRequest, "", curPreProc, curPostProc ); 
	    }
    },
    
    SaveNote: function(frm, iEventId, resultDiv) {
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        //load the event member page
        var curPostProc = "";//"$.LoadPage('eventmembers.php', '" + resultDiv + "', 'iEventId=" + iEventId + "');";
        var inRequest = "iEventId="+iEventId+"&mode=save";
        $.CMS_SendForm(frm, resultDiv, "", curPreProc, curPostProc, "", inRequest);

        return false;		
    },
    
    DeleteNote: function(frm, iEventId, iNoteId, resultDiv) {
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        //load the event member page
        var curPostProc = "";//"$.LoadPage('eventmembers.php', '" + resultDiv + "', 'iEventId=" + iEventId + "');";
        var inRequest = "iEventId="+iEventId+"&iNoteId="+iNoteId+"&mode=remove";
        $.CMS_SendForm(frm, resultDiv, "", curPreProc, curPostProc, "", inRequest);

        return false;		
    },
    
    LoadEventMember: function(iEventId, controlId, selId, divPanel) {
	    var curPreProc = "";
	    var curPostProc = "";
	    var inRequest = "mode=loadmember&iEventId="+iEventId+"&selId="+selId+"&controlId="+controlId;

        $.CMS_Acquire("eMemberManager.php", divPanel, inRequest, "", curPreProc, curPostProc ); 
    },
    
    SubmitForm: function (frm, inRequest, tPanel) {
        var curPreProc = "$.ShowLoadingImage('" + tPanel + "');";
        //load the event member page
        var curPostProc = "";
        $.CMS_SendForm(frm, tPanel, "", curPreProc, curPostProc, "", inRequest);

        return false;		
    },
    
    //add member to event
    SaveMember: function (frm, resultDiv, iEventId) {
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        //load the event member page
        var curPostProc = "";//"$.LoadPage('eventmembers.php', '" + resultDiv + "', 'iEventId=" + iEventId + "');";
        var inRequest = "iEventId="+iEventId+"&mode=addmember";
        $.CMS_SendForm(frm, resultDiv, "", curPreProc, curPostProc, "", inRequest);

        return false;		
    },
    
    //delete event member
    DeleteMember: function(frm, iEventId, iUserId, tPanel) {
	    var con = window.confirm("Please confirm to remove the member from this event");
	    if (con) {
	        var curPreProc = "$.ShowLoadingImage('" + tPanel + "');";
		    var curPostProc = "";//"$.LoadPage('eventmembers.php', '"+tPanel+"', 'iEventId="+iEventId+"');";
		    var inRequest = "mode=remove&iEventId="+iEventId+"&iUserId="+iUserId;
		    $.CMS_SendForm(frm, tPanel, "", curPreProc, curPostProc, "", inRequest);
	    }
    },
    
    //set as leader
    SetAsLeader: function(frm, iEventId, iUserId, tPanel) {
	        var curPreProc = "$.ShowLoadingImage('" + tPanel + "');";
		    var curPostProc = "";//"$.LoadPage('eventmembers.php', '"+tPanel+"', 'iEventId="+iEventId+"');";
		    var inRequest = "mode=setasleader&iEventId="+iEventId+"&iUserId="+iUserId;
		    $.CMS_SendForm(frm, tPanel, "", curPreProc, curPostProc, "", inRequest);
    },
    
    SearchCompanyEvents: function (frm, resultDiv) {
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        var curPostProc = "";
        var inRequest = "";
        $.CMS_SendForm(frm, resultDiv, "", curPreProc, curPostProc, "", inRequest);

        return false;		
    },
    
    LoadChart: function(timeframe, chartPanel) {
	    var curPreProc = "";
	    var curPostProc = "makeObjects();";
        $.CMS_Acquire('DrawChart1.php', chartPanel, "timeframe="+timeframe, "", curPreProc, curPostProc ); 
    },
    
    Upload: function(formName, mainTarget) {
            // Show Wait state
            var curTarget = mainTarget; //(inTarget == null || inTarget == "") ? "#contentMain" : inTarget;
              
            // Send Form/display result
            var curPreProc = "";//"$.ClearUser();";
            var curPostProc = ""; //"$.PostLogin('#" + errTarget + "');";
            $.UploadFile('dataupload.php', 'fileToUpload', mainTarget);
            //alert('here');
            //$.CMS_UploadFile('upload.php', curTarget, "fileToUpload", curPreProc, curPostProc);
            

    },
    
	UploadFile: function (uploadurl, fileId, curTarget) {
		var curCleanser = "";
		$("#loading")
		.ajaxStart(function(){
			$(this).show();
		})
		.ajaxComplete(function(){
			$(this).hide();
		});

		$.ajaxFileUpload
		(
			{
				url:uploadurl,
				secureuri:false,
				fileElementId:fileId,
				dataType: 'json',
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							alert(data.error);
						}else
						{
							//alert(data.msg);
	                           //tempContent = $.CMS_ReadResponse(data);               // Check response for an error message
	                           //tempContent = $.CMS_Cleanser(tempContent, curCleanser);      // Cleanup text...remove styles and such         
	                           $(curTarget).html(data.msg);                              // Move clean content to destination
						}
					}
				},
				error: function (data, status, e)
				{
					alert(e);
				}
			}
		)
		
		return false;

	},
	
	SaveEvent: function(frm, mainTarget, resultDiv) {
		var frmObj = eval("document."+frm);
		if (!frmObj) {
			alert("Invalide form");
			return false;
		}
		
		if (frmObj.sEventName.value == "") {
			alert ("Please input event name");
			return false;
		}
		
		if (frmObj.dDateOfEvent.value == "") {
			alert ("Please input event date");
			return false;
		}
		
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        var curPostProc = "";
        var inRequest = "mode=edit";
        $.CMS_SendForm(frm, mainTarget, "", curPreProc, curPostProc, "", inRequest);

        return false;		
	},
	
	SaveCompany: function(frm, mainTarget, resultDiv) {
		var frmObj = eval("document."+frm);
		if (!frmObj) {
			alert("Invalide form");
			return false;
		}
		
		if (frmObj.companyname.value == "") {
			alert ("Please input company name");
			return false;
		}
		
        var curPreProc = "$.ShowLoadingImage('" + resultDiv + "');";
        var curPostProc = "";
        var inRequest = "mode=edit";
        $.CMS_SendForm(frm, mainTarget, "", curPreProc, curPostProc, "", inRequest);

        return false;		
	},
	
    Content_LoginSubmit: function(mainTarget, errTarget){
	    
         // First Validate Form
         var formValid = 1;
         if (document.loginForm.password.value == "") 
            formValid=0;
         if (document.loginForm.email.value == "") 
            formValid=0;
            
         if (formValid == 0) {
            alert("Please enter both your email address and password to login!");
         }
         else {
            // Show Wait state
            var curTarget = mainTarget; //(inTarget == null || inTarget == "") ? "#contentMain" : inTarget;
              
            // Send Form/display result
            var curPreProc = "$.ClearUser(); $.ShowLoadingImage('" + curTarget + "');";
            var curPostProc = "$.PostLogin('" + curTarget + "');";
            $.CMS_Login("loginForm", curTarget, errTarget, "", curPreProc, curPostProc);
         }
         return false;
 
    },
    ClearUser: function() {
	    //clear all the session variables
	    //document.cookie = "iSessionId=";
	    document.cookie = "iUserId=";
    },
    PostLogin: function(curTarget) {
	    //alert("load:"+curTarget);
	    //$.LoadPage("main.php", curTarget);
	    //tabdropdown.init("bluemenu");
    },
    
    Content_RegisterSubmit: function(inTarget){
         // First Validate Form
         var formValid = 1;
         if (document.registerForm.firstName.value == "") 
            formValid=0;
         if (document.registerForm.lastName.value == "") 
            formValid=0;
         if (document.registerForm.email.value == "") 
            formValid=0;
         if (document.registerForm.retypeeMail.value == "") 
            formValid=0;
         if (document.registerForm.pwd.value == "") 
            formValid=0;
         if (document.registerForm.retypePassword.value == "") 
            formValid=0;
        if (document.registerForm.email.value != document.registerForm.retypeeMail.value)
            formValid=0;
        if (document.registerForm.pwd.value != document.registerForm.retypePassword.value)
            formValid=0;
            
         if (formValid == 0) {
            alert("Please fill out the Register form completely and ensure the email and passwords fields match.");
         }
         else {
            // Show Wait state
            var curTarget = (inTarget == null || inTarget == "") ? "#contentMain" : inTarget;
              
            // Send Form/display result
            var curPreProc = ""; //"$.Content_GetInfoBox();";
            var curPostProc = ""; //"$.Content_MyStuff();initTabs();";
            $.CMS_SendForm("registerForm", curTarget, "", curPreProc, curPostProc);
         }
         return false;
 
    },
    
    Content_PasswordSubmit: function(inTarget){
         // First Validate Form
         var formValid = 1;
         if (document.loginForm.password.value == "") 
            formValid=0;
         if (document.loginForm.email.value == "") 
            formValid=0;
            
         if (formValid == 0) {
            alert("Please enter both your email address and password to login!");
         }
         else {
            // Show Wait state
            var curTarget = (inTarget == null || inTarget == "") ? "#contentMain" : inTarget;
              
            // Send Form/display result
            var curPreProc = "$.Content_GetInfoBox();";
            var curPostProc = "$.Content_GetAccountMenu();initTabs();";
            $.CMS_SendForm("loginForm", curTarget, "", curPreProc, curPostProc);
         }
         return false;
 
    }
    
	
}); 
