﻿// ------------------------------------------------------------------------------------------------ //
// Spintech it ltd. Copyright 2009                       //
// ------------------------------------------------------------------------------------------------ //
var spinZoneManager = new Object


// ------------------------------------------------------------------------------------------------ //
// Generick Functions
// ------------------------------------------------------------------------------------------------ //
// Ajax request
function InitiateAjaxRequest(arguments) {    
    window["ctl00_ContentPlaceHolder1_RadAjaxManager1"].AjaxRequest(arguments);
}

// Screen Position
function f_clientWidth() {
    return f_filterResults(
		            window.innerWidth ? window.innerWidth : 0,
		            document.documentElement ? document.documentElement.clientWidth : 0,
		            document.body ? document.body.clientWidth : 0
	            );
}
function f_clientHeight() {
    return f_filterResults(
		            window.innerHeight ? window.innerHeight : 0,
		            document.documentElement ? document.documentElement.clientHeight : 0,
		            document.body ? document.body.clientHeight : 0
	            );
}
function f_scrollLeft() {
    return f_filterResults(
		            window.pageXOffset ? window.pageXOffset : 0,
		            document.documentElement ? document.documentElement.scrollLeft : 0,
		            document.body ? document.body.scrollLeft : 0
	            );
}
function f_scrollTop() {
    return f_filterResults(
		            window.pageYOffset ? window.pageYOffset : 0,
		            document.documentElement ? document.documentElement.scrollTop : 0,
		            document.body ? document.body.scrollTop : 0
	            );
}
function f_filterResults(n_win, n_docel, n_body) {
    var n_result = n_win ? n_win : 0;
    if (n_docel && (!n_result || (n_result > n_docel)))
        n_result = n_docel;
    return n_body && (!n_result || (n_result > n_body)) ? n_body : n_result;
}


// ------------------------------------------------------------------------------------------------ //
// Master Pages
// ------------------------------------------------------------------------------------------------ //
//Edit master page details
function sysEditMasterDetails(MasterID) {

    spinZoneManager.MasterID = MasterID;

    var s = "edt_masterdetails.aspx?masterid=" + MasterID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(530,260);
    oWindow.SetTitle("Master Page Details");
    oWindow.OnClientClose = "sysEditMasterDetailsCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
    
}
function sysEditMasterDetailsCallBack(radWindow, args) {

    var s = "masterchanged?" + spinZoneManager.MasterID;
    InitiateAjaxRequest(s);
}
// List pages for master ID
function sysListPagesForMaster(MasterID) {

    var s = "listpagesformaster?" + MasterID;
    InitiateAjaxRequest(s);
}
// Edit Master Content
function sysEditMasterContent(url) {
    var newWindow = window.open(url, '_editpage');
    newWindow.focus();
    return false;
}
//Delete Master Page
function sysDeleteMaster(MasterID) {

    spinZoneManager.MasterID = MasterID;

    var s = "sys_delete.aspx?id=" + MasterID + "&type=M";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete Master Page");

    oWindow.OnClientClose = "sysEditMasterDetailsCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);

}

// ------------------------------------------------------------------------------------------------ //
// Page Details
// ------------------------------------------------------------------------------------------------ //


function resizeContentArea(editor) {
    if (editor.InitialHeight == -1) {
        editor.InitialHeight = editor.Document.body.clientHeight;
    }

    var ie = document.all ? true : false;
    var oDoc = editor.Document;
    var targetHeight = ie ? oDoc.body.scrollHeight : oDoc.documentElement.scrollHeight;

    if (targetHeight > editor.InitialHeight) {
        var theIFrame = document.getElementById("RadEContentIframe" + editor.Id);
        theIFrame.style.height = parseInt(targetHeight) + "px";
        if (!ie) editor.SetSize(editor.GetWidth(), targetHeight); //FireFox bug, TD does not decrease height  

    }
}

function attachResizeEvents(editor) {

    var iframe = document.getElementById("RadEContentIframe" + editor.Id);
    iframe.allowTransparency = true;

    editor.InitialHeight = -1;

    editor.GetContentArea().style.overflow = "hidden";
    editor.Document.body.scroll = "no";

    var resizeFnRef = function anon() { resizeContentArea(editor) };
    editor.AttachEventHandler("RADEVENT_SEL_CHANGED", resizeFnRef)
    editor.AttachEventHandler("keydown", resizeFnRef)
    resizeFnRef();
}

//Edit Page Details
function sysEditPageDetails(PageID,EditURL,MasterID) {

    spinZoneManager.MasterID = MasterID;

    var s = EditURL + "?id=" + PageID + "&masterid=" + MasterID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(550, 600);
    oWindow.SetTitle("Page Details");
    oWindow.OnClientClose = "sysEditPageDetailsCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);

}
function sysEditPageDetailsCallBack(radWindow, args) {

    var s = "pagechanged?" + spinZoneManager.MasterID;
    InitiateAjaxRequest(s);
}
// Edit Page SEO
function sysEditPageSEO(PageID) {

    spinZoneManager.PageID = PageID;

    var s = "edt_pageseo.aspx?id=" + PageID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(400, 400);
    oWindow.SetTitle("Page SEO Details");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);

}
//Edit page content
function sysEditPageContent(url) {
    var newWindow = window.open(url, '_editpage');
    newWindow.focus();
    return false;
}

//Delete Page
function sysDeletePage(PageID, MasterID) {

    spinZoneManager.MasterID = MasterID;
    
    var s = "sys_delete.aspx?id=" + PageID + "&type=P";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete Page");

    oWindow.OnClientClose = "sysEditPageDetailsCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);

}


// ------------------------------------------------------------------------------------------------ //
// Menues
// ------------------------------------------------------------------------------------------------ //
// Edit Menu Details
function sysEditMenuDetails(RootID) {

    spinZoneManager.RootID = RootID;

    var s = "edt_menudetails.aspx?id=" + RootID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(685, 540);
    oWindow.SetTitle("Menu Details");
    oWindow.OnClientClose = "sysEditMenuDetailsCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 685;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
function sysEditMenuDetailsCallBack(radWindow, args) {

    var s = "menuchanged?" + spinZoneManager.RootID;
    InitiateAjaxRequest(s);
}



// ------------------------------------------------------------------------------------------------ //
// Documents
// ------------------------------------------------------------------------------------------------ //
// Show documents for a particular category
function sysListDocsForCategory(CategoryID) {

    var s = "listdocsforcategory?" + CategoryID;
    InitiateAjaxRequest(s);
}
// Edit document details
function sysEditDocument(DocID,CategoryID) {

    spinZoneManager.DocID = DocID;
    spinZoneManager.CategoryID = CategoryID;

    var s = "edt_docdetails.aspx?docid=" + DocID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(520,360 );
    oWindow.SetTitle("Document Details");
    oWindow.OnClientClose = "sysEditDocumentCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
function sysEditDocumentCallBack(radWindow, args) {

    var s = "listdocsforcategory?" + spinZoneManager.CategoryID;
    InitiateAjaxRequest(s);
}
function sysUploadFile(CategoryID) {

    spinZoneManager.CategoryID = CategoryID;

    var s = "sys_upload.aspx";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(520, 360);
    oWindow.SetTitle("Document Upload");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}


//Delete User
function sysDeleteDocument(DocID, CategoryID) {

    spinZoneManager.CategoryID = CategoryID;
    
    var s = "sys_delete.aspx?id=" + DocID + "&type=D";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete Document");

    oWindow.OnClientClose = "sysEditDocumentCallBack";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}


// ------------------------------------------------------------------------------------------------ //
// User Management
// ------------------------------------------------------------------------------------------------ //
//List Users
function sysListUsers() {
    var s = "listusers?all";
    InitiateAjaxRequest(s);
}
//User Roles
function sysEditUserRoles(UserName) {
    var s = "edt_userroles.aspx?username=" + UserName; 
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(510, 550);
    oWindow.SetTitle("User Roles");
    oWindow.OnClientClose = "sysListUsers";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//New User
function sysNewUser() {
    var s = "sys_newuser.aspx";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(420, 430);
    oWindow.SetTitle("Create New User");
    oWindow.OnClientClose = "sysListUsers";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//Reset User Password
function sysResetPass(UserName) {
    var s = "sys_resetpass.aspx?username=" + UserName;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(510, 360);
    oWindow.SetTitle("Reset User Password");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//Delete User
function sysDeleteUser(UserName) {

    var s = "sys_delete.aspx?id=" + UserName + "&type=U";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete User");

    oWindow.OnClientClose = "sysListUsers";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//Reset User Password
function sysImportUsers() {
    var s = "sys_uploadusers.aspx" ;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(510, 480);
    oWindow.SetTitle("Upload Users");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}


// ------------------------------------------------------------------------------------------------ //
// OPTIONAL CAM MODULE
// ------------------------------------------------------------------------------------------------ //
//List Cam Modules
function sysListCamModules() {
    var s = "listcammodules?all";
    InitiateAjaxRequest(s);
}
//Edit Module Details
function sysEditCamModule(ModuleID) {
    var s = "edt_cammoduledetails.aspx?moduleid=" + ModuleID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(680, 550);
    oWindow.SetTitle("Module Details");
    oWindow.OnClientClose = "sysListCamModules";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//Delete Module
function sysDeleteCamModule(ModuleID) {

    var s = "sys_delete.aspx?id=" + ModuleID + "&type=CamModule";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete Module");

    oWindow.OnClientClose = "sysListCamModules";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//List Cam COmpanies
function sysListCamCompanies() {
    var s = "listcamcompanies?all";
    InitiateAjaxRequest(s);
}
//Edit Company Details
function sysEditCamCompany(CompanyID) {
    var s = "edt_camcompanydetails.aspx?companyid=" + CompanyID;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(510, 460);
    oWindow.SetTitle("Company Details");
    oWindow.OnClientClose = "sysListCamCompanies";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
//Delete Company
function sysDeleteCamCompany(CompanyID) {

    var s = "sys_delete.aspx?id=" + CompanyID + "&type=CamCompany";
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(470, 250);
    oWindow.SetTitle("Delete Company");

    oWindow.OnClientClose = "sysListCamCompanies";

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}


//User Companies
function sysEditUserCompanies(UserName) {
    var s = "edt_camusercomps.aspx?username=" + UserName;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(500, 530);
    oWindow.SetTitle("User Companies");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}

//User Modules
function sysEditUserModules(UserName) {
    var s = "edt_camusermodules.aspx?username=" + UserName;
    var oWindow = window.radopen(s, "spinDialog");

    oWindow.SetSize(500, 530);
    oWindow.SetTitle("User Modules");

    var oTop = f_scrollTop();
    oTop = oTop + 50;
    var oLeft = f_clientWidth();
    oLeft = oLeft - 620;
    oLeft = oLeft / 2;
    oWindow.MoveTo(oLeft, oTop);
}
