﻿var FolderType = { Root:'root', Folder:'folder', File:'file', Page:'page', Url:'url', UserGroup:'usergroup', User:'user', Project:'project', AdmItem:'admitem', Message:'message', Byggekort:'byggekort', ToDoTask:'todotask' };
var ContentType = { Normal:'NRM', Listemappe:'LST', Bildegalleri:'BGL', Webside:'WPG', Notiser:'NTS', Sakslister:'ISL', Byggekort:'BGK', ToDo:'TDO', AdmItem:'ADM' };
var ContentTypeId = { Normal:1, Listemappe:2, Bildegalleri:3, Webside:4, Notiser:5, Sakslister:6 };
var FolderFrontPageType = { None:'none', Html:'html', File:'file', Url:'url' };
var PermissionType = { Read:'Read', Write:'Write', Alert:'AlertChanges' };
var SettingType = { Bool:'Bool', Int:'Int', Str:'Str' };
var SettingObjectType = { WebHotel:'WebHotel', ProjectWeb:'ProjectWeb', User:'User' };
var AjaxResponse = { Ok: 'OK', Error: 'ERROR', EmptyResult: 'EMPTY', NoResult: '' };
var ToDoActivityType = { WorkHours: 0, Comment: 1, Attachment: 2, TaskUpdate: 3, VerifyTask: 8, TakeResponsibility: 9 };
var NormalFolderFileSettings = { AllowFiles: 0, WarningWhenAddingFile: 1, DisallowFiles: 2 };
var SubfolderSettings = { AllowSubfoldersInNonNormalFolders: 0, WarningWhenAddingSubfolderToNonNormalFolder: 1, DisallowSubfoldersInNonNormalFolders: 2 };
// JsTrueFalse
var JsTrueString = 'true';
var JsFalseString = 'false';
// Error messages
var XmlHttpObjErrMsg = 'Error: HTTP Request Object could not be initiated';
// Misc
var EmptyGuid = '00000000-0000-0000-0000-000000000000';
var FolderIdPrefix = 'Fld';
var ProjectIdPrefix = 'Prj';
var ThumbnailSuffix = '_tn';
var ModulesFolderName = 'modules';
var SubMenuIdPrefix = 'Sub';
// QueryString keys
var QsWebHotelId = 'WebHotelId';
var QsProjectWebId = 'ProjectWebId';
var QsProjectWebFolder = 'ProjectWebFolder';
var QsProjectWebUrl = 'ProjectWebUrl';
var QsNewProjectWebId = 'NewProjectWebId';
var QsGroupId = 'GroupId';
var QsUserId = 'UserId';
var QsUserIndex = 'UserIndex';
var QsFolderId = 'FolderId';
var QsTopFolderId = 'TopFolderId';
var QsFolderRoot = 'FolderRoot';
var QsFileId = 'FileId';
var QsFileName = 'FileName';
var QsItemId = 'ItemId';
var QsItemType = 'ItemType';
var QsItemChecked = 'ItemChecked';
var QsItemUnchecked = 'ItemUnchecked';
var QsPageId = 'Page';
var QsPaneId = 'PaneId';
var QsPaneState = 'PaneState';
var QsParentId = 'ParentId';
var QsMessageId = 'MessageId';
var QsCultureId = 'CultureId';
var QsUrlId = 'UrlId';
var QsUrl = 'Url';
var QsEmail = 'Email';
var QsName = 'Name';
var QsIsFrontPageFile = 'IsFrontPageFile';
var QsKeepExistingTmpFiles = 'KeepExistingTmpFiles';
var QsStandaloneWindow = 'StandaloneWindow';
var QsFilterProperty = 'FilterProperty';
var QsFilterString = 'FilterString';
var QsFilterTextBoxId = 'FilterTextBoxId';
var QsDisplayMode = 'DisplayMode';
var QsReturnParams = 'ReturnParams';
var QsPermissionType = 'PermissionType';
var QsPermissionSet = 'PermissionSet';
var QsIsProjectWeb = 'IsProjectWeb';
var QsPropertyToUpdate = 'PropertyToUpdate';
var QsPropertyValue = 'PropertyValue';
var QsNoteId = 'NoteId';
var QsNoteToMoveId = 'NoteToMoveId';
var QsNoteToRestoreId = 'NoteToRestoreId';
var QsNoteToDeleteId = 'NoteToDeleteId';
var QsMoveFolderId = 'MoveFolderId';
var QsMoveDirection = 'MoveDirection';
var QsIsDeactivated = 'IsDeactivated';
var QsIsTempAttachment = 'IsTempAttachment';
var QsFieldId = 'FieldId';
var QsInContentIframe = 'InContentIframe';
var QsFieldsInContentIframe = 'FieldsInContentIframe';
var QsResourceName = 'ResourceName';
var QsOrderHardCopy = 'OrderHardCopy';
var QsCommentId = 'CommentId';
var QsOwnerId = 'OwnerId';
var QsOwnerType = 'OwnerType';
var QsCommentChangedFieldId = 'CommentChangedFieldId';
var QsCommentTextFieldId = 'CommentTextFieldId';
var QsImageUrlFieldId = 'ImageUrlFieldId';
var QsImageWidthFieldId = 'ImageWidthFieldId';
var QsImageHeightFieldId = 'ImageHeightFieldId';
var QsImagePreviewIconId = 'ImagePreviewIconId';
var QsImageFolderId = 'ImageFolderId';
var QsImageRemoveIconId = 'ImageRemoveIconId';
var QsColorFieldId = 'ColorFieldId';
var QsIsArchived = 'IsArchived';
var QsRecipientId = 'RecipientId';
var QsIsTempRecipient = 'IsTempRecipient';
var QsLoginId = 'LoginId';
var QsComIdEmail = 'EmailId';
var QsComIdPhone = 'PhoneId';
var QsComIdMobile = 'MobileId';
var QsComIdFax = 'FaxId';
var QsDateString = 'DateString';
var QsUIElementId = 'UIElementId';
var QsSortColumn = 'SortColumn';
var QsSortOrder = 'SortOrder';
var QsShowAll = 'ShowAll';
var QsProjectId = 'ProjectId';
var QsSourceFolderId = 'SourceFolderId';
var QsActiveContentId = 'ActiveContentId';
var QsActiveContentType = 'ActiveContentType';
var QsSelectAll = 'SelectAll';
var QsTemplateId = 'TemplateId';
var QsPrintCentralId = 'PrintCentralId';
var QsHardCopyRecipientId = 'HardCopyRecipientId';
var QsHardCopyRecipientName = 'HardCopyRecipientName';
var QsHardCopyRecipientAddress = 'HardCopyRecipientAddress';
var QsHardCopyRecipientCity = 'HardCopyRecipientCity';
var QsHardCopyRecipientEmail = 'HardCopyRecipientEmail';
var QsHardCopyRecipientPhone = 'HardCopyRecipientPhone';
var QsHardCopyRecipientMobile = 'HardCopyRecipientMobile';
var QsInvoiceRecipientId = 'InvoiceRecipientId';
var QsSendOrderCopyToRecipients = 'SendOrderCopyToRecipients';
var QsSendOrderCopyToInvoiceRecipient = 'SendOrderCopyToInvoiceRecipient';
var QsHardCopyOrderText = 'HardCopyOrderText';
var QsSilverlightMajorVersion = 'SilverlightMajorVersion';
var QsNumberOfNotes = 'NumberOfNotes';
var QsWidth = 'Width';
var QsTarget = 'Target';
var QsBackgroundColor = 'BackgroundColor';
var QsBorderColor = 'BorderColor';
var QsFontFamily = 'FontFamily';
var QsFontSize = 'FontSize';
var QsSetFieldFocus = 'SetFieldFocus';
var QsEditSource = 'EditSource';
var QsTaskId = 'TaskId';
var QsTaskCompleted = 'TaskCompleted';
var QsStartDate = 'StartDate';
var QsEndDate = 'EndDate';
var QsRegisterMode = 'RegisterMode';

function QString(key, value, addRandomNumber)
{
    var s = '?' + key.toString().replace(/&/g, '%26').replace(/\?/g, '%3f').replace(/=/g, '%3d').replace(/#/g, '%23');
    s += '=' + value.toString().replace(/&/g, '%26').replace(/\?/g, '%3f').replace(/=/g, '%3d').replace(/#/g, '%23');
    if (addRandomNumber)
    {
        s += '&RN=' + Math.random().toString();
    }
    this.qs = s;
    this.toString = function() { return this.qs; }
}

function QsPrm(key, value)
{
    this.Key = key.toString().replace(/&/g, '%26').replace(/\?/g, '%3f').replace(/=/g, '%3d').replace(/#/g, '%23');
    this.Value = value.toString().replace(/&/g, '%26').replace(/\?/g, '%3f').replace(/=/g, '%3d').replace(/#/g, '%23');
    this.QueryString = function(addRandomNumber)
    {
        var qs = '?' + this.Key + '=' + this.Value;
        if (addRandomNumber)
        {
            qs += '&RN=' + Math.random().toString();
        }
        return qs;
    }
    this.PostParam = function() { return this.Key + '=' + this.Value; }
}

function QsPrmCollection()
{
    this.QsParams = new Array();
    this.QueryString = function(addRandomNumber)
    {
        var qs = '?';
        if (this.QsParams.length > 0)
        {
            for (var i = 0; i < this.QsParams.length; i++)
            {
                qs += this.QsParams[i].Key + '=' + this.QsParams[i].Value;
                if (i < (this.QsParams.length - 1))
                {
                    qs += '&';
                }
            }
        }
        if (addRandomNumber)
        {
            qs += (this.QsParams.length > 0 ? '&' : '') + 'RN=' + Math.random().toString();
        }
        return qs;
    }
    this.PostParams = function() { return this.QueryString(false).replace(/\?/, ''); }
    this.Clear = function() { this.QsParams = new Array(); }
}
