function Administration(){
	
    this.init = function() {
    }

    this.saveMyDataForm = function() {
        dojo.xhrPost({
            url: "/administration/save-my-data-form/",
            form: "myDataForm",
            load: function(response, ioArgs){
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }
    
    this.saveMyAccessForm = function() {
        dojo.xhrPost({
            url: "/administration/save-my-access-form/",
            form: "myAccessForm",
            load: function(response, ioArgs){
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }
    
    this.saveMyNotifyForm = function() {
        dojo.xhrPost({
            url: "/administration/save-my-notify-form/",
            form: "myNotifyMessagesForm",
            load: function(response, ioArgs){
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }   
    
    this.saveMyCommproNotifyMessagesForm = function() {
        dojo.xhrPost({
            url: "/administration/save-my-commpro-notify-form/",
            form: "myCommproNotifyMessagesForm",
            load: function(response, ioArgs){
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }      
    
    this.saveDataForm = function() {
        dojo.xhrPost({
            url: "/administration/save-data-form/",
            form: "DataForm",
            load: function(response, ioArgs){
        		dijit.byId("manageUserAccountsDataTab").refresh();
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }
    
    this.saveAccessForm = function() {
        dojo.xhrPost({
            url: "/administration/save-access-form/",
            form: "AccessForm",
            load: function(response, ioArgs){
        		dijit.byId("manageUserAccountsAccessTab").refresh(); 
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }
    
    this.setUser = function(user_id) {
        dojo.xhrPost({
            url: "/administration/administration-set-user/",
            postData: "user_id=" + user_id,
            load: function(response, ioArgs){
        	
        		dijit.byId("manageUserAccountsDataTab").refresh();
        		dijit.byId("manageUserAccountsAccessTab").refresh();        	
	        	dijit.byId("manageUserAccountsTabPrint").refresh();
	        	dijit.byId("manageUserAccountsTabDisplay").refresh();
	        	dijit.byId("manageAdditionalAccessTab").refresh();
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }  
    
    this.updateUserRights = function(type) {
        dojo.xhrPost({
            url: "/administration/update-user-rights/"+type,
            form: type + "RightsForm",
            load: function(response, ioArgs){
        		errorHandler.show();
        		
        		dijit.byId("manageUserAccountsTabPrint").refresh();
        		dijit.byId("manageUserAccountsTabDisplay").refresh();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });
    }
    
    this.setSubUser = function(subUser_id){
        dojo.xhrPost({
            url: "/administration/administration-set-sub-user/",
            postData: "sub-user_id=" + subUser_id,
            load: function(response, ioArgs){
        	
	        	dijit.byId("manageAdditionalAccessTab").refresh();

        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });    	
    }
    
    this.setDisplay = function(display_id){
        dojo.xhrPost({
            url: "/administration/set-display/",
            postData: "display_id=" + display_id,
            load: function(response, ioArgs){
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });    	
    }
    
    this.createDisplay = function() {
    	dijit.byId('createDisplayDialog').show();
    }
    
    this.doCreateDisplay = function(description) {
        dojo.xhrPost({
            url: "/administration/create-display/",
            postData: "description=" + description,
            load: function(response, ioArgs){
        		administrationDisplay.close();
        		dijit.byId("display_id").setValue(parseInt(response)); 
        		dijit.byId("display_id").validate();
        		
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });  
    }
    
    this.deleteDisplay = function(description) {
        dojo.xhrPost({
            url: "/administration/delete-display/",
            load: function(response, ioArgs){
        		administrationDisplay.close();

        		dijit.byId("display_id").setValue(""); 
        		dijit.byId("display_id").validate();
        		
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });  
    }
    
    
    this.setCt1 = function(ct1_id){
        dojo.xhrPost({
            url: "/administration/administration-set-ct1/",
            postData: "ct1_id=" + ct1_id,
            load: function(response, ioArgs){
        	
	        	//dijit.byId("manageAdditionalAccessTab").refresh();

        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });    	
    }    
    
    this.setAdditionalAccess = function() {
        dojo.xhrPost({
            url: "/administration/administration-set-additional-access/",
            load: function(response, ioArgs){
        	
	        	dijit.byId("manageAdditionalAccessTab").refresh();

        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        }); 
    }
    
    this.deleteAdditionalAccess = function(parent_id,subUser_id,uCT1_id){
    	dijit.byId('additionalAccess_parent_id').setValue(parent_id);
    	dijit.byId('additionalAccess_subUser_id').setValue(subUser_id);
    	dijit.byId('additionalAccess_uCT1_id').setValue(uCT1_id);
    	dijit.byId('deleteAdditionalAccessDialog').show();
    }    
    
    this.createUser = function(){
    	dijit.byId('createUserDialog').show();
    }     
    
    this.doCreateUser = function(email,password){
        dojo.xhrPost({
            url: "/administration/administration-create-user/",
            postData: "email=" + email +"&password=" + password,
            load: function(response, ioArgs){
        	
	        	dijit.byId("chooseUserWrapper").refresh();
        		dijit.byId("manageUserAccountsDataTab").refresh();
        		dijit.byId("manageUserAccountsAccessTab").refresh();        	
	        	dijit.byId("manageUserAccountsTabPrint").refresh();
	        	dijit.byId("manageUserAccountsTabDisplay").refresh();
	        	dijit.byId("manageAdditionalAccessTab").refresh();
        	
        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });   
    }        
    
    this.doDeleteAdditionalAccess = function(parent_id,subUser_id,uCT1_id) {
        dojo.xhrPost({
            url: "/administration/administration-delete-additional-access/",
            postData: "parent_id=" + parent_id +"&subUser_id=" + subUser_id + "&uCT1_id=" + uCT1_id,
            load: function(response, ioArgs){
        	
	        	dijit.byId("manageAdditionalAccessTab").refresh();

        		errorHandler.show();
                return response;
            },
            error: function(response, ioArgs){
            	errorHandler.show();
                return response;
            },
            handleAs: "text"
        });     
    }
    
    var self = this;
}

var administration = new Administration();

dojo.addOnLoad(
  function(){
    administration.init();
  }
);



