/**
 * Contains function for all XHR calls from application
 *
 * @author Interface
 * @created 10-20-2009
 * @version 1.0
 * 
*/

//Sends an HTTP request to a remote server
function handleXHRCalls(callURL, requestParams) {
	var isSessionCloseMsgDisplayed = false;
	var conn = new Ext.data.Connection();
	
	conn.timeout = custom_labels.Application_timeoutDuration;
	conn.request({
	    url: callURL,
	    params: requestParams,
	    callback: function(options, success, response) {
	        if (success) {
	            switch (requestParams.onAction) {

	                //Case for incident new plan action    
	                case "GET-INCIDENT-PLANS":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload incident store and activate the help text panel
	                        Ext.getCmp('incident-tab-grid').getStore().load();
	                        Ext.getCmp('incident-toolbar').show();
	                        Ext.getCmp('incident-card-tabs-panel').layout.setActiveItem('grid-container');
	                    }
	                    break;

	                //Case for incident new plan action    
	                case "GET-ENTIRE-INCIDENT-PLANS":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('incident-toolbar').hide();
	                        Ext.getCmp('incident-card-tabs-panel').layout.setActiveItem('center-view-all-incident-plan-panel');
	                        Ext.getCmp('center-view-all-incident-plan-panel').removeAll();

	                        var allplan = '';
	                        var planData = [];

	                        var planRecord = Ext.data.Record.create([
								 { name: 'ID' },
							     { name: 'Incident' },
							     { name: 'Plan' }
							 ]);

	                        var incidentRootNode = Ext.DomQuery.selectNode('IncidentActionEntirePlans', response.responseXML);
	                        var incidentNodeArr = Ext.DomQuery.select('IncidentActionEntirePlan', incidentRootNode);
	                        Ext.each(incidentNodeArr, function(record) {
	                            var id = Ext.DomQuery.selectValue('ID', record);
	                            var incident = Ext.DomQuery.selectValue('Incident', record);
	                            var plan = Ext.DomQuery.selectValue('Plan', record);
	                            var pRecord = new planRecord({
	                                ID: id,
	                                Incident: incident,
	                                Plan: plan
	                            });
	                            planData.push(pRecord.data);

	                            var iPlanName = new Ext.form.Label({
	                                hideLabel: true,
	                                text: incident
	                            });
	                            Ext.getCmp('center-view-all-incident-plan-panel').add(iPlanName);
	                            Ext.getCmp('center-view-all-incident-plan-panel').doLayout();

	                            var iPlanVal = new Ext.form.TextArea({
	                                autoCreate: true,
	                                hideLabel: true,
	                                fieldClass: 'x-form-text-without-border',
	                                //cls: 'x-form-text-without-border',									   
	                                width: '99%',
	                                grow: true,
	                                growMax: 700,
	                                readOnly: true,
	                                preventScrollbars: false,
	                                value: plan
	                            });

	                            Ext.getCmp('center-view-all-incident-plan-panel').add(iPlanVal);
	                            Ext.getCmp('center-view-all-incident-plan-panel').doLayout();

	                        });
	                    }
	                    break;

	                //Case for incident new plan action    
	                case "GET-SELECTED-INCIDENT-PLANS":
	                    if (parseXMLResult(response.responseXML)) {
	                        var incidentTitle = Ext.DomQuery.selectValue('Incident', response.responseXML);
	                        var incidentPlan = Ext.DomQuery.selectValue('Plan', response.responseXML);
	                        Ext.getCmp('open-plan-form-incident-name').setValue(incidentTitle);
	                        Ext.getCmp('open-plan-form-plan').setValue(incidentPlan);
	                    }
	                    break;

	                //Case for incident new plan action    
	                case "ADD-NEW-INCIDENT-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload incident store and activate the help text panel
	                        Ext.getCmp('incident-tab-grid').getStore().load();
	                        Ext.getCmp('incident-toolbar').show();
	                        Ext.getCmp('incident-card-tabs-panel').layout.setActiveItem('grid-container');

	                        // remove selected css for incident links
	                        if (Ext.getCmp('home-incident-links-panel').prevSelectedIncidentId) {
	                            setCssClassName("incidentleftlink" + Ext.getCmp('home-incident-links-panel').prevSelectedIncidentId, "leftpanellink");
	                        }

	                        //assign null to prevSelectedIncidentId
	                        Ext.getCmp('home-incident-links-panel').prevSelectedIncidentId = null;

	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.planAddSuccess'));
	                    }
	                    break;

	                //Case for incident edit plan action    
	                case "EDIT-INCIDENT-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload incident store and activate the help text panel
	                        Ext.getCmp('incident-tab-grid').getStore().load();
	                        Ext.getCmp('incident-card-tabs-panel').layout.setActiveItem('open-plan-form');
	                        Ext.getCmp('open-plan-form').setTitle(custom_labels.OpenPlanFormPanel_viewPlanPanelText);
	                        Ext.getCmp('open-plan-form').redrawPlanForm(Ext.getCmp('open-plan-form').selectedPlanId, true);

	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.planUpdateSuccess'));
	                    }
	                    break;

	                //Case for incident delete plan action    
	                case "DELETE-INCIDENT-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //assign null to prevSelectedIncidentId
	                        Ext.getCmp('home-incident-links-panel').prevSelectedIncidentId = null;
	                        //on action success reload incident store and activate the help text panel
	                        Ext.getCmp('incident-tab-grid').getStore().load();
	                        Ext.getCmp('incident-toolbar').show();
	                        Ext.getCmp('incident-card-tabs-panel').layout.setActiveItem('grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.planDeleteSuccess'));
	                    }
	                    break;

	                //Case for add building site plan action    
	                case "ADD-BUILDING-SITE-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload building store
	                        Ext.getCmp('building-panel-grid').getStore().load();
	                        Ext.getCmp('building-toolbar').show();
	                        //If add building feture disabled
	                        if (userPrincipal.getFeatures(lookup_codes.BUILDING_ID).getAdd() == lookup_codes.FEATURE_DISABLED) {
	                            Ext.getCmp('new-building').hide();
	                            Ext.getCmp('building-toolbar').hide();
	                        }
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('building-grid-container');
	                        // remove selected css for building links
	                        if (Ext.getCmp('home-building-links-panel').prevSelectedBuildingId) {
	                            setCssClassName("buildingleftlink" + Ext.getCmp('home-building-links-panel').prevSelectedBuildingId, "");
	                        }
	                        //assign null to prevSelectedBuildingId
	                        Ext.getCmp('home-building-links-panel').prevSelectedBuildingId = null;
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingAddSuccess'));
	                    }
	                    break;

	                //Case for edit building site plan action    
	                case "EDIT-BUILDING-SITE-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload building store
	                        Ext.getCmp('building-panel-grid').getStore().load();
	                        Ext.getCmp('building-toolbar').show();
	                        //If add building feture disabled
	                        if (userPrincipal.getFeatures(lookup_codes.BUILDING_ID).getAdd() == lookup_codes.FEATURE_DISABLED) {
	                            Ext.getCmp('new-building').hide();
	                            Ext.getCmp('building-toolbar').hide();
	                        }
	                        Ext.getCmp('open-building-plan-form').redrawBuildingPlanForm(Ext.getCmp('open-building-plan-form').selectedBuildingId, true);
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingUpdateSuccess'));
	                    }
	                    break;

	                //Case for delete building site plan action    
	                case "DELETE-BUILDING-SITE-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        //assign null to prevSelectedBuildingId
	                        Ext.getCmp('home-building-links-panel').prevSelectedBuildingId = null;
	                        //on action success reload building store
	                        Ext.getCmp('building-panel-grid').getStore().load();
	                        Ext.getCmp('building-toolbar').show();
	                        //If add building feture disabled
	                        if (userPrincipal.getFeatures(lookup_codes.BUILDING_ID).getAdd() == lookup_codes.FEATURE_DISABLED) {
	                            Ext.getCmp('new-building').hide();
	                            Ext.getCmp('building-toolbar').hide();
	                        }
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('building-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingDeleteSuccess'));
	                    }
	                    break;

	                //Case for get building site floor plan action    
	                case "GET-BUILDING-SITE-FLOOR-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('new-building-floor-form-floorTitle').setValue(Ext.DomQuery.selectValue('Title', response.responseXML));
	                        Ext.getCmp('new-building-floor-form-notes').setValue(Ext.DomQuery.selectValue('Notes', response.responseXML));
	                        Ext.getCmp('new-building-floor-form').floorFileType = Ext.DomQuery.selectValue('FileType', response.responseXML);
	                    }
	                    break;

	                //Case for edit building site floor plan action    
	                case "EDIT-BUILDING-SITE-FLOOR-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-building-plan-form').redrawBuildingPlanForm(Ext.getCmp('open-building-plan-form').selectedBuildingId, true);
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('open-building-plan-form');
	                        Ext.getCmp('open-building-plan-form-addFloor').close();
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingFloorUpdateSuccess'));
	                    }
	                    break;

	                //Case for delete building site floor plan action    
	                case "DELETE-BUILDING-SITE-FLOOR-PLAN":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-building-plan-form').redrawBuildingPlanForm(Ext.getCmp('open-building-plan-form').selectedBuildingId, true);
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('open-building-plan-form');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingFloorDeleteSuccess'));
	                    }
	                    break;

	                //Case for edit building site photo plan action    
	                case "EDIT-BUILDING-SITE-PHOTO":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-building-plan-form').redrawBuildingPlanForm(Ext.getCmp('open-building-plan-form').selectedBuildingId, true);
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('open-building-plan-form');
	                        Ext.getCmp('open-building-plan-form-openPhotoWindow').close();
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingPhotoUpdateSuccess'));
	                    }
	                    break;

	                //Case for edit building site photo plan action    
	                case "DELETE-BUILDING-SITE-PHOTO":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-building-plan-form').redrawBuildingPlanForm(Ext.getCmp('open-building-plan-form').selectedBuildingId, true);
	                        Ext.getCmp('building-card-tabs-panel').layout.setActiveItem('open-building-plan-form');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.buildingPhotoDeleteSuccess'));
	                    }
	                    break;

	                //Case for add new contact information    
	                case "ADD-CONTACT":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('contact-panel-grid').getStore().load();
	                        Ext.getCmp('contact-toolbar').show();
	                        Ext.getCmp('contact-card-tabs-panel').layout.setActiveItem('contact-panel-grid-container');
	                        // remove selected css for contact links 
	                        if (Ext.getCmp('home-contacts-links-panel').prevSelectedContactId) {
	                            setCssClassName("contactleftlink" + Ext.getCmp('home-contacts-links-panel').prevSelectedContactId, "");
	                        }
	                        //assign null to prevSelectedContactId
	                        Ext.getCmp('home-contacts-links-panel').prevSelectedContactId = null;
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactAddSuccess'));
	                    }
	                    break;

	                //Case for edit contact information    
	                case "EDIT-CONTACT":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('contact-panel-grid').getStore().load();
	                        Ext.getCmp('view-contact-panel').redrawContactPanel(Ext.getCmp('open-contact-form').selectedContactId);
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactUpdateSuccess'));
	                    }
	                    break;

	                //Case for delete contact information    
	                case "DELETE-CONTACT":
	                    if (parseXMLResult(response.responseXML)) {
	                        //assign null to prevSelectedContactId
	                        Ext.getCmp('home-contacts-links-panel').prevSelectedContactId = null;
	                        Ext.getCmp('contact-panel-grid').getStore().load();
	                        Ext.getCmp('contact-toolbar').show();
	                        //If add Contacts feture disabled
	                        if (userPrincipal.getFeatures(lookup_codes.CONTACTS_ID).getAdd() == lookup_codes.FEATURE_DISABLED) {
	                            Ext.getCmp('new-contact').hide();
	                            Ext.getCmp('contact-toolbar').hide();
	                        }
	                        Ext.getCmp('contact-card-tabs-panel').layout.setActiveItem('contact-panel-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactDeleteSuccess'));
	                    }
	                    break;

	                //Case for delete selected contact information    
	                case "DELETE-SELECTED-CONTACT-INFO":
	                    if (parseXMLResult(response.responseXML)) {
	                        //assign null to prevSelectedBuildingId
	                        Ext.getCmp('view-contact-panel').redrawContactPanel(Ext.getCmp('view-contact-panel').selectedContactId);
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactDeleteSuccess'));
	                    }
	                    break;

	                //Case for get selected contact information    
	                case "GET-SELECTED-CONTACT-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                        //load data in contactt info grid
	                        var contactDetailsNode = Ext.DomQuery.selectNode('ContactDetails', response.responseXML);
	                        Ext.getCmp('view-contact-panel-contactGridPanel').store.loadData(contactDetailsNode);

	                        var Notes = Ext.DomQuery.selectValue('Notes', response.responseXML);
	                        Ext.getCmp('view-contact-panel-notes').setValue(Notes);

	                        var firstName = Ext.DomQuery.selectValue('FirstName', response.responseXML);
	                        var lastName = Ext.DomQuery.selectValue('LastName', response.responseXML);
	                        var title = Ext.DomQuery.selectValue('Title', response.responseXML);
	                        Ext.getCmp('view-contact-panel').setTitle(firstName + ' ' + lastName + ' - ' + title);

	                        var photoURL = Ext.DomQuery.selectValue('PhotoURL', response.responseXML);

	                        Ext.getCmp('view-contact-panel-contact-photo-image').refreshImage(photoURL);

	                        Ext.getCmp('view-contact-panel').makeFieldReadOnly(Ext.getCmp('view-contact-panel-notes').getEl());
	                        // hide contact toolbar
	                        Ext.getCmp('contact-toolbar').hide();
	                        Ext.getCmp('contact-card-tabs-panel').layout.setActiveItem('view-contact-panel');
	                    }
	                    break;

	                //Case for get selected contact information for edit form    
	                case "GET-SELECTED-CONTACT-INFO":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-contact-form').setTitle(custom_labels.OpenContactForm_editTitle);
	                        Ext.getCmp('open-contact-form-firstName').setValue(Ext.DomQuery.selectValue('FirstName', response.responseXML));
	                        Ext.getCmp('open-contact-form-lastName').setValue(Ext.DomQuery.selectValue('LastName', response.responseXML));
	                        Ext.getCmp('open-contact-form-title').setValue(Ext.DomQuery.selectValue('Title', response.responseXML));
	                        Ext.getCmp('open-contact-form-order').setValue(Ext.DomQuery.selectValue('Order', response.responseXML));
	                        Ext.getCmp('open-contact-form-notes').setValue(Ext.DomQuery.selectValue('Notes', response.responseXML));

	                        //							Ext.getCmp('open-contact-form-remove-photo').setValue(false);
	                        Ext.getCmp('open-contact-form-remove-photo').reset();

	                        var photoURL = Ext.DomQuery.selectValue('PhotoURL', response.responseXML, '');
	                        if (photoURL != '') {
	                            //show photo
	                            Ext.getCmp('open-contact-form-display-photo-panel').show();
	                            Ext.getCmp('open-contact-form-photo-spacer').show();
	                            Ext.getCmp('open-contact-form-remove-photo-panel').show();
	                        } else {
	                            //hide photo
	                            Ext.getCmp('open-contact-form-display-photo-panel').hide();
	                            Ext.getCmp('open-contact-form-photo-spacer').hide();
	                            Ext.getCmp('open-contact-form-remove-photo-panel').hide();
	                        }

	                        Ext.getCmp('open-contact-form-contact-photo-image').refreshImage(photoURL);

	                        Ext.getCmp('open-contact-form-photo').setValue('');

	                        Ext.getCmp('contact-toolbar').hide();

	                        //hide show btns
	                        Ext.getCmp('contactSaveButton').hide();
	                        Ext.getCmp('contactEditButton').show();

	                        Ext.getCmp('contact-card-tabs-panel').layout.setActiveItem('open-contact-form');
	                    }
	                    break;

	                //Case for add new phone number     
	                case "ADD-NEW-PHONE-NUMBER":
	                    if (parseXMLResult(response.responseXML)) {
	                        //Reload contact details grid
	                        Ext.getCmp('view-contact-panel-contactGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CONTACTS_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CONTACTS_GET_SELECTED_PARAM_ACTION_VALUE,
	                                Number: requestParams.Number,
	                                Type: requestParams.Type,
	                                ContactID: requestParams.ContactID
	                            }
	                        });
	                        //Close popup window
	                        Ext.getCmp('contact-panel-openPhnnoFormWindow').close();
	                        //On phone number add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.phoneAddSuccess'));
	                    }
	                    break;

	                //Case for add new email     
	                case "ADD-NEW-EMAIL":
	                    if (parseXMLResult(response.responseXML)) {
	                        //Reload contact details grid
	                        Ext.getCmp('view-contact-panel-contactGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CONTACTS_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CONTACTS_GET_SELECTED_PARAM_ACTION_VALUE,
	                                Number: requestParams.Number,
	                                Type: requestParams.Type,
	                                ContactID: requestParams.ContactID
	                            }
	                        });
	                        //Close popup window
	                        Ext.getCmp('contact-panel-openEmailFormWindow').close();
	                        //On email add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.emailAddSuccess'));
	                    }
	                    break;

	                //Case for edit phone number     
	                case "EDIT-PHONE-NUMBER":
	                    if (parseXMLResult(response.responseXML)) {
	                        //Reload contact details grid
	                        Ext.getCmp('view-contact-panel-contactGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CONTACTS_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CONTACTS_GET_SELECTED_PARAM_ACTION_VALUE,
	                                Number: requestParams.Number,
	                                Type: requestParams.Type,
	                                ContactID: requestParams.ContactID
	                            }
	                        });
	                        //Close popup window
	                        Ext.getCmp('contact-panel-openPhnnoFormWindow').close();
	                        //On phone number add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.phoneEditSuccess'));
	                    }
	                    break;

	                //Case for edit email     
	                case "EDIT-EMAIL":
	                    if (parseXMLResult(response.responseXML)) {
	                        //Reload contact details grid
	                        Ext.getCmp('view-contact-panel-contactGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CONTACTS_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CONTACTS_GET_SELECTED_PARAM_ACTION_VALUE,
	                                Number: requestParams.Number,
	                                Type: requestParams.Type, ContactID: requestParams.ContactID
	                            }
	                        });
	                        //Close popup window
	                        Ext.getCmp('contact-panel-openEmailFormWindow').close();
	                        //On email add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.emailEditSuccess'));
	                    }
	                    break;

	                //Case for add contact address information    
	                case "ADD-CONTACTS-ADDRESS":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('view-contact-panel').redrawContactPanel(Ext.getCmp('view-contact-panel').selectedContactId);
	                        Ext.getCmp('contact-panel-openAddressFormWindow').close();
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactUpdateSuccess'));
	                    }
	                    break;

	                //Case for get selected contact address information    
	                case "GET-CONTACT-PHONE-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-phnno-form-phnno').setValue(Ext.DomQuery.selectValue('Number', response.responseXML));
	                        Ext.getCmp('open-phnno-form-phnno-ext').setValue(Ext.DomQuery.selectValue('Extension', response.responseXML));
	                        Ext.getCmp('open-phnno-form-type').setValue(Ext.DomQuery.selectValue('LocationType', response.responseXML));
	                    }
	                    break;

	                //Case for get selected contact address information    
	                case "GET-CONTACT-ADDRESS-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-address-form-address').setValue(Ext.DomQuery.selectValue('Address', response.responseXML));
	                        Ext.getCmp('open-address-form-city').setValue(Ext.DomQuery.selectValue('City', response.responseXML));
	                        Ext.getCmp('open-address-form-state').setValue(Ext.DomQuery.selectValue('State', response.responseXML));
	                        Ext.getCmp('open-address-form-zip').setValue(Ext.DomQuery.selectValue('ZIP', response.responseXML));
	                        Ext.getCmp('open-address-form-type').setValue(Ext.DomQuery.selectValue('LocationType', response.responseXML));
	                    }
	                    break;

	                //Case for manage category - add new category    
	                case "ADD-NEW-CATEGORY":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category grid
	                        Ext.getCmp('category-panel-grid').getStore().load();
	                        Ext.getCmp('category-card-tabs-panel').layout.setActiveItem('manage-category-grid-container');

	                        // remove selected css for manage category links 
	                        if (Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId) {
	                            setCssClassName("manageCategoryleftlink" + Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId, "");
	                        }
	                        Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId = null;

	                        Ext.getCmp('manage-category-toolbar').show(); //show category toolbar
	                        Ext.getCmp('manage-category-go-back-btn').hide(); //hide go back button from category toolbar
	                        Ext.getCmp('manage-category-go-back-btn-seprator').hide(); //hide go back button separator from category toolbar

	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryAddSuccess'));
	                    }
	                    break;

	                //Case for manage category - edit category    
	                case "EDIT-CATEGORY":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category grid
	                        Ext.getCmp('category-panel-grid').getStore().load();
	                        Ext.getCmp('view-manage-category-panel').redrawManageCategoryForm(Ext.getCmp('view-manage-category-panel').selectedCategoryId, true);
	                        Ext.getCmp('manage-category-toolbar').show(); //show category toolbar
	                        Ext.getCmp('manage-category-go-back-btn').show(); //show go back button from category toolbar
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryEditSuccess'));
	                    }
	                    break;

	                //Case for manage category - delete category    
	                case "DELETE-CATEGORY":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category grid
	                        Ext.getCmp('category-panel-grid').getStore().load();
	                        Ext.getCmp('category-card-tabs-panel').layout.setActiveItem('manage-category-grid-container');
	                        // remove selected css for manage category links 
	                        if (Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId) {
	                            setCssClassName("manageCategoryleftlink" + Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId, "");
	                        }
	                        Ext.getCmp('home-manage-categories-links-panel').prevSelectedCategoryId = null;

	                        Ext.getCmp('manage-category-toolbar').show(); //show category toolbar
	                        Ext.getCmp('manage-category-go-back-btn').hide(); //hide go back button from category toolbar
	                        Ext.getCmp('manage-category-go-back-btn-seprator').hide(); //hide go back button separator from category toolbar

	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryDeleteSuccess'));
	                    }
	                    break;

	                //Case for manage category - add new link    
	                case "ADD-NEW-CATEGORY-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category link grid
	                        Ext.getCmp('view-manage-category-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CATEGORY_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CATEGORY_LINK_GRID_PARAM_ACTION_VALUE,
	                                CategoryID: requestParams.CategoryID
	                            }
	                        });
	                        Ext.getCmp('view-manage-category-card-tabs-panel').layout.setActiveItem('view-manage-category-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryLinkAddSuccess'));
	                    }
	                    break;

	                //Case for manage category - edit link    
	                case "EDIT-CATEGORY-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category link grid
	                        Ext.getCmp('view-manage-category-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CATEGORY_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CATEGORY_LINK_GRID_PARAM_ACTION_VALUE,
	                                CategoryID: requestParams.CategoryID
	                            }
	                        });
	                        Ext.getCmp('view-manage-category-card-tabs-panel').layout.setActiveItem('view-manage-category-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryLinkEditSuccess'));
	                    }
	                    break;

	                //Case for manage category - delete link    
	                case "DELETE-CATEGORY-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category link grid
	                        Ext.getCmp('view-manage-category-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CATEGORY_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CATEGORY_LINK_GRID_PARAM_ACTION_VALUE,
	                                CategoryID: Ext.getCmp('view-manage-category-panel').selectedCategoryId
	                            }
	                        });
	                        Ext.getCmp('view-manage-category-card-tabs-panel').layout.setActiveItem('view-manage-category-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryLinkDeleteSuccess'));
	                    }
	                    break;

	                //Case for manage category - edit file    
	                case "EDIT-CATEGORY-FILE":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category file grid
	                        Ext.getCmp('view-manage-category-panel-fileGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CATEGORY_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CATEGORY_FILE_GRID_PARAM_ACTION_VALUE,
	                                CategoryID: Ext.getCmp('view-manage-category-panel').selectedCategoryId
	                            }
	                        });
	                        Ext.getCmp('view-manage-category-card-tabs-panel').layout.setActiveItem('view-manage-category-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryFileEditSuccess'));
	                    }
	                    break;

	                //Case for manage category - delete link    
	                case "DELETE-CATEGORY-FILE":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload category file grid
	                        Ext.getCmp('view-manage-category-panel-fileGridPanel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.CATEGORY_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.CATEGORY_FILE_GRID_PARAM_ACTION_VALUE,
	                                CategoryID: Ext.getCmp('view-manage-category-panel').selectedCategoryId
	                            }
	                        });
	                        Ext.getCmp('view-manage-category-card-tabs-panel').layout.setActiveItem('view-manage-category-grid-container');
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.categoryFileDeleteSuccess'));
	                    }
	                    break;

	                //Case for add new thread action     
	                case "ADD-NEW-THREAD":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload message store
	                        Ext.getCmp('message-grid-panel').getStore().load();
	                        Ext.getCmp('new-thread-popup').close();

	                        //On new thread add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('thread.add.success'));
	                    }
	                    break;

	                //Case for add new thread post action     
	                case "ADD-NEW-THREAD-POST":
	                    if (parseXMLResult(response.responseXML)) {
	                        // reload thread grid store
	                        Ext.getCmp('thread-grid-panel').getStore().load({
	                            params: {
	                                Feature: lookup_codes.MSGBOARD_GRID_PARAM_FEATURE_VALUE,
	                                Action: lookup_codes.MSGBOARD_THRDS_POST_GRID_PARAM_ACTION_VALUE,
	                                MessageThreadID: requestParams.MessageThreadID
	                            }
	                        });
	                        // reload message grid store
	                        Ext.getCmp('message-grid-panel').getStore().load();
	                        Ext.getCmp('post-thread-window').close();
	                    }
	                    break;

	                //Case for add new thread post action     
	                case "DELETE-THREAD":
	                    if (parseXMLResult(response.responseXML)) {
	                        // reload message grid store
	                        Ext.getCmp('message-grid-panel').getStore().load();
	                        if (Ext.getCmp('open-thread-popup') != null) {
	                            Ext.getCmp('open-thread-popup').close();
	                        }
	                        //On thread close success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('thread.close.success'));
	                    }
	                    break;

	                //Case for error information     
	                case "ERROR-DETAILS":
	                    //On thread close success
	                    showSlidingMessageBox.msg('Message', custom_labels.ErrorDialog_appErrorSubmitted);
	                    //close app error window
	                    Ext.getCmp('error-dialog-popup').close();
	                    break;

	                //Case for add new user     
	                case "ADD-USER":
	                    if (parseXMLResult(response.responseXML)) {
	                        // reload user grid store
	                        Ext.getCmp('manage-users-panel-grid').getStore().load();
	                        Ext.getCmp('users-toolbar').show();
	                        Ext.getCmp('users-card-tabs-panel').layout.setActiveItem('manage-users-grid-container');
	                        //remove selected css
	                        if (Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId) {
	                            setCssClassName("manageUserleftlink" + Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId, "leftpanellink");
	                        }
	                        Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId = null;
	                        //On success user added
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.userAddSuccess'));
	                    }
	                    break;

	                //Case for get user details     
	                case "GET-USER-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('open-user-form-firstName').setValue(Ext.DomQuery.selectValue('FirstName', response.responseXML));
	                        Ext.getCmp('open-user-form-lastName').setValue(Ext.DomQuery.selectValue('LastName', response.responseXML));
	                        Ext.getCmp('open-user-form-userName').setValue(Ext.DomQuery.selectValue('UserName', response.responseXML));
	                        Ext.getCmp('open-user-form-password').setValue(lookup_codes.DEFAULT_PASSWORD_VALUE);
	                        Ext.getCmp('open-user-form-roleType').setValue(Ext.DomQuery.selectValue('RoleID', response.responseXML));
	                        Ext.getCmp('open-user-form-type').setValue(Ext.getCmp('open-user-form-roleType').getRawValue());
	                        
	                        var frm = Ext.getCmp('open-user-form');
	                        
	                        if(Ext.DomQuery.selectValue('RoleID', response.responseXML) == 1){
	                        	Ext.getCmp('open-user-form-type').setValue(Ext.DomQuery.selectValue('RoleName', response.responseXML));
	                        	
	                        	Ext.getCmp('open-user-form-type').el.up('.x-form-item').setDisplayed(true);
								frm.makeFieldReadOnly(Ext.getCmp('open-user-form-type').getEl());
								Ext.getCmp('open-user-form-roleType').el.up('.x-form-item').setDisplayed(false);
								
//	                        	Ext.getCmp('open-user-form-roleType').setValue(Ext.DomQuery.selectValue('RoleName', response.responseXML));
//	                        	Ext.getCmp('open-user-form-editBtn').disable();
	                        } else {
//	                        	Ext.getCmp('open-user-form-editBtn').enable();
	                        	
//	                        	Ext.getCmp('open-user-form-roleType').el.up('.x-form-item').setDisplayed(true);
//								Ext.getCmp('open-user-form-type').el.up('.x-form-item').setDisplayed(false);
	                        }
	                    }
	                    break;

	                //Case for edit user information     
	                case "EDIT-USER":
	                    if (parseXMLResult(response.responseXML)) {
	                        // reload user grid store
	                        Ext.getCmp('manage-users-panel-grid').getStore().load();
	                        Ext.getCmp('open-user-form').redrawOpenUsersForm(requestParams.UserID, true);
	                        //On success user added
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.userEditSuccess'));
	                    }
	                    break;

	                //Case for delete user     
	                case "DELETE-USER":
	                    if (parseXMLResult(response.responseXML)) {
	                        // reload user grid store
	                        Ext.getCmp('manage-users-panel-grid').getStore().load();
	                        Ext.getCmp('users-toolbar').show();
	                        Ext.getCmp('users-card-tabs-panel').layout.setActiveItem('manage-users-grid-container');
	                        //remove selected css
	                        if (Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId) {
	                            setCssClassName("manageUserleftlink" + Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId, "leftpanellink");
	                        }
	                        Ext.getCmp('home-manage-user-links-panel').prevSelectedUserId = null;
	                        //On success user added
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.userDeleteSuccess'));
	                    }
	                    break;

	                //Case for get user features list and set user principal object    
	                case "GET-USER-FEATURE":
	                    if (parseXMLResult(response.responseXML)) {
	                        //set user principal object
	                        var user = Ext.DomQuery.selectNode('User', response.responseXML);
	                        userPrincipal.accountId = Ext.DomQuery.selectValue('AccountID', user);
	                        userPrincipal.firstName = Ext.DomQuery.selectValue('FirstName', user);
	                        userPrincipal.lastName = Ext.DomQuery.selectValue('LastName', user);
	                        userPrincipal.userName = Ext.DomQuery.selectValue('UserName', user);

	                        var featureData = [];
	                        var featuresRootNode = Ext.DomQuery.selectNode('Features', response.responseXML);
	                        var featureNodeArr = Ext.DomQuery.select('Feature', featuresRootNode);
	                        Ext.each(featureNodeArr, function(feature) {
	                            var objFeature = new Ron.Feature();
	                            objFeature.setId(Ext.DomQuery.selectValue('ID', feature));
	                            objFeature.setName(Ext.DomQuery.selectValue('Name', feature));
	                            objFeature.setView(Ext.DomQuery.selectValue('View', feature));
	                            objFeature.setEdit(Ext.DomQuery.selectValue('Edit', feature));
	                            objFeature.setDelete(Ext.DomQuery.selectValue('Delete', feature));
	                            objFeature.setAdd(Ext.DomQuery.selectValue('Add', feature));
	                            featureData.push(objFeature);
	                        });
	                        userPrincipal.setFeatures(featureData);
	                        //used to hide functionality on user type
	                        hideUserFunctionality();
	                    }
	                    break;

	                //Case for getting account details    
	                case "GET-ACCOUNT-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                        //set user principal object
	                        var accountDetails = Ext.DomQuery.selectNode('AccountDetails', response.responseXML);
	                        userAccountDetails.Id = Ext.DomQuery.selectValue('ID', accountDetails);
	                        userAccountDetails.Name = Ext.DomQuery.selectValue('Name', accountDetails);
	                        userAccountDetails.Address = Ext.DomQuery.selectValue('Address', accountDetails);
	                        userAccountDetails.IsDemoAccount = Ext.DomQuery.selectValue('IsDemoAccount', accountDetails);
	                        userAccountDetails.AccountType = Ext.DomQuery.selectValue('AccountType', accountDetails);
	                        setIncidentCommandPanel(userAccountDetails.AccountType);
	                    }
	                    break;

	                //Case for getting active IC in public session    
	                case "GET-ACTIVE-IC-PUBLIC":
	                    if (parseXMLResult(response.responseXML)) {
	                        var publicICID = Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML, '');
	                        if (publicICID == '') {
	                            Ext.getCmp('incident-communication-tab').publicICID = 0;
	                        }
	                        Ext.getCmp('incident-communication-tab').publicICID = publicICID;

	                        if (Ext.getCmp('incident-communication-tab').publicICID != 0) {

	                            Ext.getCmp('east-panel').expand();
	                            Ext.Msg.alert('Active Incident', Ext.DomQuery.selectValue('Reason', response.responseXML));

	                            addChatMsg(lookup_codes.IC_TYPE_PUBLIC, Ext.DomQuery.selectValue('Reason', response.responseXML), false, true);
	                            loadICMsgs(lookup_codes.IC_TYPE_PUBLIC);
	                            Ext.getCmp('public-session-panel').enable();
	                            Ext.getCmp('restricted-session-panel').enable();
	                            Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').enable();

	                            if (Ext.getCmp('restricted-session-panel').collapsed) {
	                                startHighLighter(lookup_codes.IC_TYPE_RESTRICTED);
	                            }
	                            startICTimerFunction();
	                            stopICCheckTimerFunction();
	                        } else {
	                            Ext.getCmp('east-panel').collapse();
	                            startCheckICTimerFunction();
	                        }
	                    }
	                    break;

	                //Case for getting active IC in restricted session    
	                case "GET-ACTIVE-IC-RESTICTED":
	                    if (parseXMLResult(response.responseXML)) {
	                        var restrictedICID = Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML, '');
	                        if (restrictedICID == '') {
	                            Ext.getCmp('incident-communication-tab').restrictedICID = 0;
	                        }
	                        Ext.getCmp('incident-communication-tab').restrictedICID = restrictedICID;

	                        if (Ext.getCmp('incident-communication-tab').restrictedICID != 0) {

	                            Ext.getCmp('east-panel').expand();

	                            addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, Ext.DomQuery.selectValue('Reason', response.responseXML), false, true);
	                            loadICMsgs(lookup_codes.IC_TYPE_RESTRICTED);
	                            Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').enable();


	                            startICTimerFunction();
	                        }
	                    }
	                    break;

	                //Case for getting msgs in public session    
	                case "GET-ACTIVE-IC-MSGS-PUBLIC":
	                    if (parseXMLResult(response.responseXML)) {
	                        var publicICMsgID = 0;
	                        var ICMsgData = [];
	                        var ICMsgRootNode = Ext.DomQuery.selectNode('IncidentCommunicationMsgs', response.responseXML);
	                        var ICMsgNodeArr = Ext.DomQuery.select('IncidentCommunicationMsg', ICMsgRootNode);

	                        //load all msgs in respective session
	                        Ext.each(ICMsgNodeArr, function(ICMsg) {
	                            publicICMsgID = Ext.DomQuery.selectValue('ID', ICMsg, '');
	                            if (publicICMsgID != '') {
	                                
	                                if (Ext.DomQuery.selectValue('ID', ICMsg) != 0) {

	                                    if (Ext.getCmp('public-session-panel').collapsed) {
	                                        startHighLighter(lookup_codes.IC_TYPE_PUBLIC);
	                                    }
	                                    if(publicICMsgID > Ext.getCmp('incident-communication-tab').publicICMsgID){
	                                    	
	                                    	addChatMsg(lookup_codes.IC_TYPE_PUBLIC, Ext.DomQuery.selectValue('UserName', ICMsg) + ' : ', true, false);
	                                    	addChatMsg(lookup_codes.IC_TYPE_PUBLIC, Ext.DomQuery.selectValue('Msg', ICMsg), false, true);
	                                    }
	                                    Ext.getCmp('incident-communication-tab').publicICMsgID = Ext.DomQuery.selectValue('ID', ICMsg);
	                                } else {
	                                    //Set active IC ID i.e. 0 = No active IC
	                                    Ext.getCmp('public-session-panel').getForm().reset();
	                                    removeChildrenFromNode(lookup_codes.IC_TYPE_PUBLIC);
	                                    stopHighLighter(lookup_codes.IC_TYPE_PUBLIC);
	                                    Ext.getCmp('incident-communication-tab').publicICID = 0;
	                                    if (Ext.DomQuery.selectValue('UserName', ICMsg) != userPrincipal.userName) {
	                                        if (!isSessionCloseMsgDisplayed) {
	                                            Ext.Msg.alert('Session Closed', 'This session has been closed by ' + Ext.DomQuery.selectValue('UserName', ICMsg));
	                                        }
	                                    }
	                                    stopICTimerFunction();
	                                    deactivateICPanel();
	                                    
	                                    startCheckICTimerFunction();
	                                }
	                            } else {
	                            }
	                        });
	                    }
	                    break;

	                //Case for getting msgs in restricted session    
	                case "GET-ACTIVE-IC-MSGS-RESTRICTED":
	                    if (parseXMLResult(response.responseXML)) {
	                        var restrictedICMsgID = 0;
	                        var ICMsgData = [];
	                        var ICMsgRootNode = Ext.DomQuery.selectNode('IncidentCommunicationMsgs', response.responseXML);
	                        var ICMsgNodeArr = Ext.DomQuery.select('IncidentCommunicationMsg', ICMsgRootNode);

	                        //load all msgs in respective session
	                        Ext.each(ICMsgNodeArr, function(ICMsg) {
	                            restrictedICMsgID = Ext.DomQuery.selectValue('ID', ICMsg, '');
	                            if (restrictedICMsgID != '') {
	                                
	                                if (Ext.DomQuery.selectValue('ID', ICMsg) != 0) {
	                                    if (Ext.getCmp('restricted-session-panel').collapsed) {
	                                        startHighLighter(lookup_codes.IC_TYPE_RESTRICTED);
	                                    }
	                                    if(restrictedICMsgID > Ext.getCmp('incident-communication-tab').restrictedICMsgID){
		                                    addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, Ext.DomQuery.selectValue('UserName', ICMsg) + ' : ', true, false);
		                                    addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, Ext.DomQuery.selectValue('Msg', ICMsg), false, true);
	                                    }
	                                    Ext.getCmp('incident-communication-tab').restrictedICMsgID = Ext.DomQuery.selectValue('ID', ICMsg);
	                                } else {
	                                    //Set active IC ID i.e. 0 = No active IC
	                                    Ext.getCmp('restricted-session-panel').getForm().reset();
	                                    removeChildrenFromNode(lookup_codes.IC_TYPE_RESTRICTED);
	                                    stopHighLighter(lookup_codes.IC_TYPE_RESTRICTED);
	                                    Ext.getCmp('incident-communication-tab').restrictedICID = 0;
	                                    if (Ext.DomQuery.selectValue('UserName', ICMsg) != userPrincipal.userName) {
	                                        if (!isSessionCloseMsgDisplayed) {
	                                            Ext.Msg.alert('Session Closed', 'This session has been closed by ' + Ext.DomQuery.selectValue('UserName', ICMsg));
	                                        }
	                                    }
	                                    stopICTimerFunction();
	                                    deactivateICPanel();
	                                }
	                            }
	                        });
	                    }
	                    break;

	                //Case for adding msg in public session    
	                case "ADD-IC-MSG-PUBLIC":
	                    if (parseXMLResult(response.responseXML)) {
	                        var publicICMsgID = 0;
	                        publicICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML, '')
	                        if (publicICMsgID != '') {
	                            Ext.getCmp('incident-communication-tab').publicICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML);
	                            if (Ext.getCmp('incident-communication-tab').publicICMsgID == 0) {
	                                Ext.getCmp('incident-communication-tab').publicICID = 0;
	                            } else {
	                                Ext.getCmp('public-session-panel-msgToSend-textField').reset();
	                                addChatMsg(lookup_codes.IC_TYPE_PUBLIC, userPrincipal.firstName + ' ' + userPrincipal.lastName + " : ", true, false);
	                                addChatMsg(lookup_codes.IC_TYPE_PUBLIC, requestParams.ICMsg, false, true);
	                                
	                                stopICCheckTimerFunction();
	                            }
	                        }
	                    }
	                    break;

	                //Case for adding msg in restricted session    
	                case "ADD-IC-MSG-RESTRICTED":
	                    if (parseXMLResult(response.responseXML)) {
	                        var restrictedICMsgID = 0;
	                        restrictedICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML, '')
	                        if (restrictedICMsgID != '') {
	                            Ext.getCmp('incident-communication-tab').restrictedICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML);
	                            if (Ext.getCmp('incident-communication-tab').restrictedICMsgID == 0) {
	                                Ext.getCmp('incident-communication-tab').restrictedICID = 0;
	                            } else {
	                                Ext.getCmp('restricted-session-panel-msgToSend-textField').reset();
	                                addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, userPrincipal.firstName + ' ' + userPrincipal.lastName + " : ", true, false);
	                                addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, requestParams.ICMsg, false, true);
	                            }
	                        }
	                    }
	                    break;

	                //Case for adding new IC in public session    
	                case "ADD-IC-PUBLIC":
	                    if (parseXMLResult(response.responseXML)) {
	                        if (Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML) != '') {
	                            Ext.getCmp('incident-communication-tab').publicICID = Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML);
	                        }
	                        if (Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML) != '') {
	                            Ext.getCmp('incident-communication-tab').publicICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML);
	                        }

	                        Ext.getCmp('public-session-panel').getForm().reset();

	                        if (Ext.getCmp('incident-communication-tab').publicICID != 0) {
	                            //Add incident reason and description as msgs in session

	                            addChatMsg(lookup_codes.IC_TYPE_PUBLIC, requestParams.Reason, false, true);
	                            addChatMsg(lookup_codes.IC_TYPE_PUBLIC, userPrincipal.firstName + ' ' + userPrincipal.lastName + ' : ', true, false);
	                            addChatMsg(lookup_codes.IC_TYPE_PUBLIC, requestParams.ICDescription, false, true);

	                            Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').enable();
								stopICCheckTimerFunction();
	                            startICTimerFunction();
	                        } else {
	                            Ext.getCmp('east-panel').collapse();
	                            Ext.Msg.alert('Incident Already Active', 'There is already an incident activated. Please login again to view Incident.');
	                        }
	                    }
	                    break;

	                //Case for adding new IC in restricted session    
	                case "ADD-IC-RESTRICTED":
	                    if (parseXMLResult(response.responseXML)) {
	                        if (Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML) != '') {
	                            Ext.getCmp('incident-communication-tab').restrictedICID = Ext.DomQuery.selectValue('IncidentCommunicationID', response.responseXML);
	                        }
	                        if (Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML) != '') {
	                            //		                		Ext.getCmp('incident-communication-tab').restrictedICMsgID = Ext.DomQuery.selectValue('IncidentCommunicationMsgID', response.responseXML);
	                            Ext.getCmp('incident-communication-tab').restrictedICMsgID = 0;
	                        }

	                        Ext.getCmp('restricted-session-panel').getForm().reset();

	                        if (Ext.getCmp('incident-communication-tab').restrictedICID != 0) {
	                            //Add incident reason and description as msgs in session

	                            addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, requestParams.Reason, false, true);
	                            addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, userPrincipal.firstName + ' ' + userPrincipal.lastName + ' : ', true, false);
	                            addChatMsg(lookup_codes.IC_TYPE_RESTRICTED, requestParams.ICDescription, false, true);

	                            Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').enable();

	                            startICTimerFunction();
	                        } else {
	                            Ext.getCmp('east-panel').collapse();
	                            Ext.Msg.alert('Incident Already Active', 'There is already an incident activated. Please login again to view Incident.');
	                        }
	                    }
	                    break;

	                //Case for closing public session    
	                case "DELETE-IC-PUBLIC":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').disable();
	                        Ext.getCmp('public-session-panel').disable();
	                        Ext.getCmp('restricted-session-panel').disable();
	                        Ext.getCmp('east-panel').collapse();
	                        Ext.getCmp('public-session-panel').getForm().reset();
	                        Ext.getCmp('incident-communication-tab').publicICID = 0;
	                        Ext.getCmp('incident-communication-tab').publicICMsgID = 0;
	                        stopHighLighter(lookup_codes.IC_TYPE_PUBLIC);

	                        Ext.getCmp('incident-communication-tab').restrictedICID = 0;
	                        Ext.getCmp('incident-communication-tab').restrictedICMsgID = 0;
	                        stopHighLighter(lookup_codes.IC_TYPE_RESTRICTED);

	                        stopICTimerFunction();
	                        
	                        startCheckICTimerFunction();
	                    }
	                    break;

	                //Case for closing restricted session    
	                case "DELETE-IC-RESTRICTED":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').disable();
	                        Ext.getCmp('restricted-session-panel').disable();
	                        Ext.getCmp('east-panel').collapse();
	                        Ext.getCmp('restricted-session-panel').getForm().reset();
	                        Ext.getCmp('incident-communication-tab').restrictedICID = 0;
	                        Ext.getCmp('incident-communication-tab').restrictedICMsgID = 0;
	                        stopHighLighter(lookup_codes.IC_TYPE_RESTRICTED);
	                        stopICTimerFunction();
	                    }
	                    break;

	                //Case for add new external link     
	                case "ADD-NEW-EXTERNAL-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload external link store
	                        Ext.getCmp('external-link-panel-grid').getStore().load();
	                        Ext.getCmp('external-link-open-popup-window').close();

	                        //On new external link add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('extLink.add.success'));
	                    }
	                    break;

	                //Case for edit an external link     
	                case "EDIT-EXTERNAL-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload external link store
	                        Ext.getCmp('external-link-panel-grid').getStore().load();
	                        Ext.getCmp('external-link-open-popup-window').close();

	                        //On edit external link success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('extLink.edit.success'));
	                    }
	                    break;

	                //Case for delete external links     
	                case "DELETE-SELECTED-EXTERNAL-LINKS":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload external link store
	                        Ext.getCmp('external-link-panel-grid').getStore().load();

	                        //On delete external links success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('extLink.delete.success'));
	                    }
	                    break;

	                //Case for add new other resource     
	                case "ADD-NEW-OTHER-RESOURCE":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload other resource store
	                        Ext.getCmp('other-resources-panel-grid').getStore().load();

	                        //On new other resource add success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResource.add.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-toolbar-go-back-btn').hide();
	                        Ext.getCmp('other-resources-toolbar-go-back-btn-seprator').hide();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('other-resources-grid-container');
	                    }
	                    break;

	                //Case for edit an other resource     
	                case "EDIT-OTHER-RESOURCES":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload other resource store
	                        Ext.getCmp('other-resources-panel-grid').getStore().load();

	                        //On edit other resource success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResource.edit.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        //		                    Ext.getCmp('other-resources-toolbar-go-back-btn').hide();
	                        //				    		Ext.getCmp('other-resources-toolbar-go-back-btn-seprator').hide();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');

	                        //		                    var resoruceName = Ext.getCmp('other-resources-panel-grid').getStore().getById(selectedResourceId).get('Name');
	                        Ext.getCmp('view-other-resources-panel').setTitle(requestParams.Name);
	                    }
	                    break;

	                //Case for delete other resources     
	                case "DELETE-SELECTED-RESOURCE":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload other resource store
	                        Ext.getCmp('other-resources-panel-grid').getStore().load();

	                        if (Ext.getCmp('home-other-resources-links-panel').prevSelectedResourceId) {
	                            setCssClassName("otherresourceleftlink" + Ext.getCmp('home-other-resources-links-panel').prevSelectedResourceId, "");
	                        }
	                        Ext.getCmp('home-other-resources-links-panel').prevSelectedResourceId = null;

	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResource.delete.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-toolbar-go-back-btn').hide();
	                        Ext.getCmp('other-resources-toolbar-go-back-btn-seprator').hide();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('other-resources-grid-container');
	                    }
	                    break;

	                //Case for add new resource link     
	                case "ADD-NEW-RESOURCE-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('view-other-resources-panel').setTitle(Ext.getCmp('view-other-resources-panel').selectedResourceName);

	                        //on action success reload other resource store
	                        // load store for link
	                        Ext.getCmp('view-other-resources-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: window.lookup_codes.OTHER_RESOURCES_GRID_PARAM_FEATURE_VALUE,
	                                Action: window.lookup_codes.OTHER_RESOURCES_GET_RESOURCE_LINKS_PARAM_ACTION_VALUE,
	                                ResourceID: Ext.getCmp('view-other-resources-panel').selectedResourceId
	                            }
	                        });

	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResourcelink.add.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');
	                        Ext.getCmp('view-other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-grid-container');
	                    }
	                    break;

	                //Case for edit resource link     
	                case "EDIT-RESOURCE-LINK":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('view-other-resources-panel').setTitle(Ext.getCmp('view-other-resources-panel').selectedResourceName);

	                        //on action success reload other resource store
	                        // load store for link
	                        Ext.getCmp('view-other-resources-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: window.lookup_codes.OTHER_RESOURCES_GRID_PARAM_FEATURE_VALUE,
	                                Action: window.lookup_codes.OTHER_RESOURCES_GET_RESOURCE_LINKS_PARAM_ACTION_VALUE,
	                                ResourceID: Ext.getCmp('view-other-resources-panel').selectedResourceId
	                            }
	                        });

	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResourcelink.edit.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');
	                        Ext.getCmp('view-other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-grid-container');
	                    }
	                    break;

	                //Case for edit resource file     
	                case "EDIT-RESOURCE-FILE":
	                    if (parseXMLResult(response.responseXML)) {
	                        Ext.getCmp('view-other-resources-panel').setTitle(Ext.getCmp('view-other-resources-panel').selectedResourceName);

	                        //on action success reload other resource store
	                        // load store for file
	                        Ext.getCmp('view-other-resources-panel-fileGridPanel').getStore().load({
	                            params: {
	                                Feature: window.lookup_codes.OTHER_RESOURCES_GRID_PARAM_FEATURE_VALUE,
	                                Action: window.lookup_codes.OTHER_RESOURCES_GET_RESOURCE_FILES_PARAM_ACTION_VALUE,
	                                ResourceID: Ext.getCmp('view-other-resources-panel').selectedResourceId
	                            }
	                        });


	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResourcefile.edit.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');
	                        Ext.getCmp('view-other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-grid-container');
	                    }
	                    break;

	                //Case for edit resource file     
	                case "DELETE-RESOURCE-FILES":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload other resource store
	                        // load store for file
	                        Ext.getCmp('view-other-resources-panel-fileGridPanel').getStore().load({
	                            params: {
	                                Feature: window.lookup_codes.OTHER_RESOURCES_GRID_PARAM_FEATURE_VALUE,
	                                Action: window.lookup_codes.OTHER_RESOURCES_GET_RESOURCE_FILES_PARAM_ACTION_VALUE,
	                                ResourceID: Ext.getCmp('view-other-resources-panel').selectedResourceId
	                            }
	                        });


	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResourcefile.delete.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');
	                        Ext.getCmp('view-other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-grid-container');
	                    }
	                    break;

	                //Case for edit resource link     
	                case "DELETE-RESOURCE-LINKS":
	                    if (parseXMLResult(response.responseXML)) {
	                        //on action success reload other resource store
	                        // load store for link
	                        Ext.getCmp('view-other-resources-panel-linksGridPanel').getStore().load({
	                            params: {
	                                Feature: window.lookup_codes.OTHER_RESOURCES_GRID_PARAM_FEATURE_VALUE,
	                                Action: window.lookup_codes.OTHER_RESOURCES_GET_RESOURCE_LINKS_PARAM_ACTION_VALUE,
	                                ResourceID: Ext.getCmp('view-other-resources-panel').selectedResourceId
	                            }
	                        });

	                        //On delete other resources success
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('otherResourcelink.delete.success'));

	                        Ext.getCmp('other-resources-toolbar').show();
	                        Ext.getCmp('other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-panel');
	                        Ext.getCmp('view-other-resources-card-tabs-panel').layout.setActiveItem('view-other-resources-grid-container');
	                    }
	                    break;

	                //Case for get viewer open status  
	                case "GET-VIEWER-ADMIN-TAB-STATUS":
	                    if (parseXMLResult(response.responseXML)) {
	                        var isViewerAdminTabOpen = Ext.DomQuery.selectValue('IsViewerAdminTabOpen', response.responseXML);
	                        if (isViewerAdminTabOpen == 'True') {
	                            Ext.Msg.alert('Message', 'There is already an image opened in edit. Please try later.');

	                        } else if (isViewerAdminTabOpen == 'False') {
	                            openImageInEditMode(requestParams.fileName, requestParams.typeID, requestParams.type, requestParams.accountID, requestParams.title, requestParams.imageID);
	                        }
	                    }
	                    break;

	                //Case for open viewer admin tab     
	                case "OPEN-VIEWER-ADMIN-TAB":
	                    if (parseXMLResult(response.responseXML)) {
	                        window.opener.userPrincipal.IsEditMode = 'YES';
	                    }
	                    break;

	                //Case for get viewer image details     
	                case "GET-VIEWER-IMAGE-DETAILS":
	                    if (parseXMLResult(response.responseXML)) {
	                    	var fileName = requestParams.FileName;
	                    	var isSinglePageImage = false;

  	        				var fileExt = fileName.substring(fileName.lastIndexOf(".") + 1);
  	        				if ((fileExt.toUpperCase() == 'PDF') || (fileExt.toUpperCase() == 'TIF') || (fileExt.toUpperCase() == 'TIFF')) {
  	            				isSinglePageImage = false;
  	        				} else {
  	            				isSinglePageImage = true;
  	        				}
  	        				if(isSinglePageImage){
		                        var imgPath = Ext.DomQuery.selectValue('ViewImageRelPath', response.responseXML);
		                        //Load image viewer
		                        var viewerItemId = requestParams.imageID + '-' + requestParams.TypeID + '-' + requestParams.Type + '-viewer-tab-panel';
		                        
		                        //Calculation for height
		                        var viewrHeight = Ext.getCmp('card-tabs-panel').getInnerHeight();
		                        viewrHeight -= 35;
		                        
		                        if (Ext.getCmp(viewerItemId)) {
		                            Ext.getCmp('card-tabs-panel').activate(viewerItemId);
		                            //call to refresh image
		                            Ext.getCmp(viewerItemId).refreshImage(imgPath);
		                            Ext.getCmp(viewerItemId).imagePath = imgPath;
		                        } else {
		                            Ext.getCmp('card-tabs-panel').add({
		                                id: viewerItemId,
		                                xtype: 'imageviewer',
		                                closable: true,
		                                border: false,
		                                title: '<span class="ViewerTab">' + requestParams.title + '</span>',
		                                width: 780,
		                                height: viewrHeight,
		                                fileName: requestParams.FileName,
		                                typeID: requestParams.TypeID,
		                                type: requestParams.Type,
		                                accountID: requestParams.accountID,
		                                imageID: requestParams.imageID,
		                                imageTitle: requestParams.title,
		                                showZoomer: true,
		                                viewerCss: 'viewer-small-screen',
		                                imagePath: imgPath,
		                                isFullScreen: false,
		                                isActivate: false,
		                                listeners: {
		                                    activate: function() {
		                                        //Jquery Viewer
		                                        if(!this.isActivate){
		                                        	$(document).ready(function(){
												        $("#"+ viewerItemId + "-viewer").iviewer({
												             src: imgPath,
												             ui_disabled:true,
												             initCallback: function(){
												               Ext.getCmp(viewerItemId).jViewer = this;
												             }
												        });
												    });
												    this.isActivate = true;
		                                        }
		                                    }
		                                }
		                            }).show();
		                        }
  	        				}
	                    }
	                    break;

	                //Case for open viewer admin tab 
	                case "CLOSE-VIEWER-ADMIN-TAB":
	                    if (parseXMLResult(response.responseXML)) {
	                        userPrincipal.IsEditMode = 'NO';
	                        var decodedImageTitle = decodeURI(requestParams.title);
	                        var handlerRequestParams = {};
	                        handlerRequestParams.onAction = 'GET-VIEWER-IMAGE-DETAILS';
	                        handlerRequestParams.Feature = lookup_codes.ATALASOFT_VIEWER_FEATURE_VALUE;
	                        handlerRequestParams.Action = lookup_codes.ATALASOFT_VIEWER_IMAGE_VIEW_PARAM_ACTION_VALUE;
	                        handlerRequestParams.FileName = requestParams.FileName;
	                        handlerRequestParams.TypeID = requestParams.TypeID;
	                        handlerRequestParams.Type = requestParams.Type;
	                        handlerRequestParams.accountID = requestParams.accountID;
	                        handlerRequestParams.title = decodedImageTitle;
	                        handlerRequestParams.imageID = requestParams.imageID;

	                        // XHR call to load image viewer
	                        handleXHRCalls(custom_labels.HANDLER_URL, handlerRequestParams);
	                    }
                    break;
                    
                    //Case for updating contact alert notification checkbox matrix 
	                case "UPDATE-CONTACT-ALERT-NOTIFICATION-MATRIX":
	                    if (parseXMLResult(response.responseXML)) {
	                    	//reload contacts grid
	                        Ext.getCmp('contact-panel-grid').getStore().load();
	                        
	                        Ext.getCmp('save-contact').disable();
	                        
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactNotificationMatrixEditSuccess'));
	                    }
                    break;
                    
                    //Case for updating contact details alert notification checkbox matrix 
	                case "UPDATE-CONTACT-DETAILS-ALERT-NOTIFICATION-MATRIX":
	                    if (parseXMLResult(response.responseXML)) {
	                    	//reload contacts grid
	                        Ext.getCmp('view-contact-panel').redrawContactPanel(Ext.getCmp('view-contact-panel').selectedContactId);
	                        
	                        Ext.getCmp('save-contact-info').disable();
	                        
	                        // On success message
	                        showSlidingMessageBox.msg('Message', custom_labels.ht.get('user.success.contactDetailsNotificationMatrixEditSuccess'));
	                    }
                    break;
                    
                    //Case for creating new account 
	                case "CREATE-ACCOUNT":
	                    if (parseXMLResult(response.responseXML)) {
	                    	var isAccountCreated = Ext.DomQuery.selectValue('AccountCreated', response.responseXML, 'False');
	                        if (isAccountCreated == 'True') {
	                        	Ext.getCmp('create-account-form').getForm().reset();
	                        	Ext.getCmp('account-card-tabs-panel').layout.setActiveItem('account-grid-container-panel');
	                            Ext.Msg.alert('Success', 'Account ' + requestParams.AccountName + ' created successfully.');
	                            Ext.getCmp('account-grid-panel').store.reload({
			                		params: { 
			                			Action: window.lookup_codes.ACCOUNT_MANAGEMENT_GET_ACCOUNT_LIST,
			                			IsLoginPage: false
			                		}
			                	});
	
	                        } else if (isAccountCreated == 'False') {
	                            Ext.Msg.alert('Failed', 'Account with name "' + requestParams.AccountName + '" already exists.');
	                        }
	                    }
                    break;
                    
                    //Case for updating account details 
	                case "EDIT-ACCOUNT":
	                    if (parseXMLResult(response.responseXML)) {
	                    	
	                    	var isAccountEdited = Ext.DomQuery.selectValue('AccountEdited', response.responseXML, 'False');
	                        if (isAccountEdited == 'True') {
	                        	Ext.getCmp('edit-account-form').getForm().reset();
	                        	Ext.getCmp('account-card-tabs-panel').layout.setActiveItem('account-grid-container-panel');
	                            Ext.Msg.alert('Success', 'Account ' + requestParams.AccountName + ' edited successfully.');
	                            Ext.getCmp('account-grid-panel').store.reload({
			                		params: { 
			                			Action: window.lookup_codes.ACCOUNT_MANAGEMENT_GET_ACCOUNT_LIST,
			                			IsLoginPage: false
			                		}
			                	});
	                        } else if (isAccountEdited == 'False') {
	                            Ext.Msg.alert('Failed', 'Account with name "' + requestParams.AccountName + '" not found.');
	                        }
	                    }
                    break;
                    
                    //Case for creating new account 
	                case "GET-ALL-SITE-ADMIN-USER":
	                    if (parseXMLResult(response.responseXML)) {
	                    	var firstName = Ext.DomQuery.selectValue('FirstName', response.responseXML);
	                    	var lastName = Ext.DomQuery.selectValue('LastName', response.responseXML);
	                    	var userName = Ext.DomQuery.selectValue('UserName', response.responseXML);
	                    	var userID = Ext.DomQuery.selectValue('ID', response.responseXML);
	                    	
	                        if(userName){
	                        	Ext.getCmp('edit-account-form-default-admin-username').getEl().dom.readOnly = true;
	                        	Ext.getCmp('edit-account-form-default-admin-username').setValue(userName);
	                        	Ext.getCmp('edit-account-form-default-admin-firstname').setValue(firstName);
	                        	Ext.getCmp('edit-account-form-default-admin-lastname').setValue(lastName);
	                        	Ext.getCmp('edit-account-form-default-admin-lastname').selectedUserID = userID;
	                        	Ext.getCmp('edit-account-form-default-admin-password').setValue(lookup_codes.DEFAULT_PASSWORD_VALUE);
	                        } else {
	                        	Ext.getCmp('edit-account-form-default-admin-username').getEl().dom.readOnly = false;
	                        	Ext.getCmp('edit-account-form-default-admin-lastname').selectedUserID = null;
	                        }
	                        
	                        Ext.getCmp('account-card-tabs-panel').layout.setActiveItem('edit-account-form');
	                        
	                    }
                    break;
                    
                    //Case for creating new account 
	                case "UPDATE-ALL-SITE-ADMIN-USER":
	                    if (parseXMLResult(response.responseXML)) {
	                    }
                    break;
                    
                    //Case for getting incident communication log  
	                case "GET-IC-LOG":
	                    if (parseXMLResult(response.responseXML)) {
	                        var logData = [];
	                        var logRecordType = Ext.data.Record.create([
								 { name: 'UserName' },
							     { name: 'PostedTime' },
							     { name: 'Msg' }
							 ]);
	                        var logRootNode = Ext.DomQuery.selectNode('IncidentCommunicationLogs', response.responseXML);
	                        var logNodeArr = Ext.DomQuery.select('IncidentCommunicationLog', logRootNode);
	                        if(logNodeArr.length > 0){
		                        Ext.each(logNodeArr, function(record) {
		                            var userName = Ext.DomQuery.selectValue('UserName', record);
		                            var postedTime = Ext.DomQuery.selectValue('PostedTime', record);
		                            var msg = Ext.DomQuery.selectValue('Msg', record);
		                            var pRecord = new logRecordType({
		                                UserName: userName,
		                                PostedTime: postedTime,
		                                Msg: msg
		                            });
		                            logData.push(pRecord.data);
		                        });
		                        
		                        Ext.getCmp('view-ic-log-panel-form-view-log-panel').tpl.overwrite(Ext.getCmp('view-ic-log-panel-form-view-log-panel').body, {logs:logData});
		                        //Enable download button
		                        Ext.getCmp('view-ic-log-popup-window-download-button').enable();
	                        } else {
	                        	var logPanel = Ext.getCmp('view-ic-log-panel-form-view-log-panel');
	                        	logPanel.body.update(custom_labels.ViewICLogPanel_noLog_html);
	                        	//disable download button
	                        	Ext.getCmp('view-ic-log-popup-window-download-button').disable();
	                        }
	                    }
                    break;
	            }
	        }
	    }
	});
}

/**
 * hideUserFunctionality : - used to hide functionality on user type
 * view, edit, delete and add permissions
 */
function hideUserFunctionality() {	
	if(userPrincipal.Features) {
		//Start Incident					
		if(userPrincipal.getFeatures(lookup_codes.INCIDENT_ID).getView() == lookup_codes.FEATURE_DISABLED){		
			Ext.getCmp('home-incident-links-panel').hide();
			Ext.getCmp('incident-tab').hide();
			document.getElementById('imgIncident').style.display = 'none';
		}
		// load incident store on condition feture enabled
		if(userPrincipal.getFeatures(lookup_codes.INCIDENT_ID).getView() == lookup_codes.FEATURE_ENABLED) {
	    	Ext.getCmp('incident-tab-grid').getStore().load();
	    }
	    //If add incident feture disabled
		if(userPrincipal.getFeatures(lookup_codes.INCIDENT_ID).getAdd() == lookup_codes.FEATURE_DISABLED) {
	    	Ext.getCmp('new-plan').hide();
	    	Ext.getCmp('new-incident-plan-seprator').hide();
	    }
	    //Incident End
	
	    //Building    						
		if(userPrincipal.getFeatures(lookup_codes.BUILDING_ID).getView() == lookup_codes.FEATURE_DISABLED){								
			Ext.getCmp('home-building-links-panel').hide();
			document.getElementById('imgBuilding').style.display = 'none';
		}	
	    
	    //Contacts				
		if(userPrincipal.getFeatures(lookup_codes.CONTACTS_ID).getView() == lookup_codes.FEATURE_DISABLED){								
			Ext.getCmp('home-contacts-links-panel').hide();
			document.getElementById('imgContacts').style.display = 'none';
		}
		//External link
		if(userPrincipal.getFeatures(lookup_codes.EXTERNAL_LINKS_ID).getView() == lookup_codes.FEATURE_DISABLED){
			Ext.getCmp('home-external-links-panel').hide();		
		}
		
		//Category		
		if(userPrincipal.getFeatures(lookup_codes.CATEGORIES_ID).getView() == lookup_codes.FEATURE_DISABLED){
			Ext.getCmp('home-manage-categories-links-panel').hide();
			document.getElementById('imgCategories').style.display = 'none';
		}
		//Manage User
		if(userPrincipal.getFeatures(lookup_codes.MANAGE_USERS_ID).getView() == lookup_codes.FEATURE_DISABLED){
			Ext.getCmp('home-manage-user-links-panel').hide();
			document.getElementById('imgManageUsers').style.display = 'none';
		}
		
		
		//Incident Communication/Command
//	    if(userPrincipal.getFeatures(lookup_codes.INCIDENT_COMMAND_PROTOCOL_ID).getView() == lookup_codes.FEATURE_DISABLED){
//			Ext.getCmp('restricted-session-panel').hide();		
//		}
//		
//		if(userPrincipal.getFeatures(lookup_codes.INCIDENT_COMMAND_PROTOCOL_ID).getEdit() == lookup_codes.FEATURE_DISABLED){
//			Ext.getCmp('restricted-session-panel').hide();
//			Ext.getCmp('east-panel').doLayout();
//		}
		
		if(userPrincipal.getFeatures(lookup_codes.MESSAGE_BOARD_ID).getEdit() == lookup_codes.FEATURE_DISABLED){
			Ext.getCmp('restricted-session-panel').hide();
			Ext.getCmp('east-panel').doLayout();
		}
		
		//If not Incident Commander user(Not allowed to close session)
		if(userPrincipal.getFeatures(lookup_codes.INCIDENT_COMMAND_PROTOCOL_ID).getDelete() == lookup_codes.FEATURE_DISABLED){
			Ext.getCmp('incident-communication-panel-toolBar-closeSessionBtn').hide();		
			Ext.getCmp('incident-communication-panel-toolBar-viewLogBtn-separator').hide();
		}
	}
	Ext.getCmp('west-panel').doLayout();
}
           
