{"version":3,"sources":["Areas/TypeScript/ajax-helper.ts","Areas/TypeScript/button-utilities.ts","Areas/TypeScript/constants.ts","Areas/TypeScript/dialog.ts","Areas/TypeScript/form-crud.ts","Areas/TypeScript/form-lookup.ts","Areas/TypeScript/reports.ts","Areas/TypeScript/tabs.ts","Areas/TypeScript/update-operations.ts","Areas/TypeScript/user-lookup.ts","Areas/TypeScript/utilities.ts","Areas/TypeScript/custom/goto.ts","Areas/TypeScript/grid/column-grid.ts","Areas/TypeScript/grid/download-zip.ts","Areas/TypeScript/grid/edit-batch-button-configuration.ts","Areas/TypeScript/grid/edit-buttons-builder.ts","Areas/TypeScript/grid/export-grid.ts","Areas/TypeScript/grid/filter-builder.ts","Areas/TypeScript/grid/filter.ts","Areas/TypeScript/grid/grid-edit-buttons.ts","Areas/TypeScript/grid/grid-utilities.ts","Areas/TypeScript/grid/reset-layout.ts","Areas/TypeScript/grid/toolbar.ts","Areas/TypeScript/tree-list/column-grid.ts","Areas/TypeScript/tree-list/reset-layout.ts","Areas/TypeScript/tree-list/toolbar.ts","Areas/Attachment/Views/Attachment/attachment-upload.ts","Areas/Dialog/Views/FilterBuilder/dialog-filter-builder.ts","Areas/Maintenance/Views/Shared/maintenance-shared.ts","Areas/Maintenance/Views/Shared/maintenance-tabs.ts","Areas/Requests/Views/List/request-list.ts","Areas/Requests/Views/Shared/requests-crud.ts","Areas/Requests/Views/Shared/requests-goto.ts"],"names":[],"mappings":"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","file":"compiled.js","sourcesContent":["namespace Areas {\r\n \"use strict\";\r\n\r\n export enum ContentType { Json, Form }\r\n\r\n export function sendRequest(url: string, data: string, method: string,\r\n callback: (any) => void = null, contentType: ContentType = ContentType.Json) : JQueryXHR {\r\n\r\n const errorMessage = \"Error in request - Contact IS department\";\r\n\r\n let content = \"application/json\";\r\n if (contentType === ContentType.Form) {\r\n content = \"application/x-www-form-urlencoded; charset=utf-8\";\r\n }\r\n const defaultTimeOut = 4000;\r\n const redirectTimeOut = 2000;\r\n\r\n const toastrOptions = { timeOut: defaultTimeOut, positionClass: \"toast-bottom-full-width\", showMethod: \"show\" };\r\n\r\n toastr.info(\"Processing...\", \"\", toastrOptions);\r\n\r\n return $.ajax({\r\n url: url,\r\n xhrFields: {\r\n withCredentials: true\r\n },\r\n method: method,\r\n contentType: content,\r\n data: data,\r\n success: (response: any) => {\r\n \r\n if (method === \"DELETE\") {\r\n toastr.warning(response.msg, \"\", toastrOptions);\r\n } else {\r\n toastr.success(response.msg, \"\", toastrOptions);\r\n }\r\n\r\n if (callback) {\r\n callback(response.data);\r\n }\r\n\r\n if (response.url) {\r\n setTimeout(() => { window.location.href = response.url; }, redirectTimeOut);\r\n }\r\n \r\n },\r\n error: (response) => {\r\n if (response.responseText) {\r\n toastr.error(response.responseText, \"Error\", toastrOptions);\r\n } else {\r\n toastr.error(errorMessage, \"Error\", toastrOptions);\r\n }\r\n }\r\n });\r\n }\r\n\r\n}\r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n export function showButton(id: string) {\r\n const button: DevExpress.ui.dxButton = $(`#${id}`).dxButton(\"instance\");\r\n\r\n if (button) {\r\n button.option(\"visible\", true);\r\n }\r\n }\r\n\r\n export function hideButton(id: string) {\r\n const button: DevExpress.ui.dxButton = $(`#${id}`).dxButton(\"instance\");\r\n\r\n if (button) {\r\n button.option(\"visible\", false);\r\n }\r\n }\r\n\r\n export function enableButton(id: string) {\r\n const button: DevExpress.ui.dxButton = $(`#${id}`).dxButton(\"instance\");\r\n\r\n if (button) {\r\n button.option(\"disabled\", false);\r\n }\r\n }\r\n\r\n export function disableButton(id: string) {\r\n const button: DevExpress.ui.dxButton = $(`#${id}`).dxButton(\"instance\");\r\n\r\n if (button) {\r\n button.option(\"disabled\", true);\r\n }\r\n }\r\n\r\n}","namespace Areas.Constants {\r\n \"use strict\";\r\n\r\n export class RequestsStatus {\r\n public static readonly deleted = \"DELETED\";\r\n public static readonly completed = \"Completed\";\r\n public static readonly draft = \"Draft\";\r\n public static readonly inProcess = \"InProcess\";\r\n public static readonly submitted = \"Submitted\";\r\n }\r\n\r\n export const requestsEditableStatuses: string[] = [RequestsStatus.draft];\r\n export const requestsReviewableStatuses: string[] = [RequestsStatus.draft, RequestsStatus.inProcess, RequestsStatus.submitted];\r\n}\r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n export enum DialogResult { Ok, Cancel } \r\n\r\n export abstract class BaseDialog {\r\n readonly cancelButtonId: string = \"CancelDialog\";\r\n readonly okButtonId: string = \"OkDialog\";\r\n \r\n readonly url: string;\r\n readonly popupId: string;\r\n\r\n protected rootElementId: string;\r\n protected dialogName: string;\r\n protected popup: DevExpress.ui.dxPopup;\r\n protected parameters: any;\r\n\r\n protected closeHandler: (dialogResult: DialogResult, data: any) => void;\r\n protected extraInitialization: () => void;\r\n \r\n constructor(dialogName: string, closeHandler: (dialogResult: DialogResult, data: any) => void, \r\n parameters: any = null, extraInitialization: ()=> void = null, rootElementId: string = \"dialog\") {\r\n this.rootElementId = rootElementId;\r\n this.dialogName = dialogName;\r\n this.closeHandler = closeHandler;\r\n this.extraInitialization = extraInitialization;\r\n this.url = `/Dialog/${this.dialogName}/Index`;\r\n this.popupId = `#${this.dialogName}Popup`;\r\n this.parameters = parameters;\r\n\r\n this.initialize();\r\n }\r\n\r\n private initialize() {\r\n $(`#${this.rootElementId}`).load(this.url, (response, status) => {\r\n \r\n $(`#${this.rootElementId}`).html(response);\r\n \r\n this.popup = $(this.popupId).dxPopup(\"instance\");\r\n\r\n this.popup.show();\r\n\r\n var cancelButton = $(`#${this.dialogName}${this.cancelButtonId}`).dxButton(\"instance\");\r\n if (cancelButton) {\r\n cancelButton.on({click: this.cancel});\r\n }\r\n\r\n var okButton = $(`#${this.dialogName}${this.okButtonId}`).dxButton(\"instance\");\r\n if (okButton) {\r\n okButton.on({click: this.ok});\r\n }\r\n \r\n if (this.extraInitialization) {\r\n this.extraInitialization();\r\n }\r\n }); \r\n }\r\n\r\n protected cancel = (e: any) => {\r\n this.close(DialogResult.Cancel, null);\r\n } \r\n\r\n protected abstract ok = (e: any): void => {};\r\n\r\n public close(dialogResult: DialogResult, data: any) {\r\n this.popup.hide();\r\n this.closeHandler(dialogResult, data);\r\n this.clear(); \r\n }\r\n\r\n private clear() {\r\n $(`#${this.rootElementId}`).empty();\r\n } \r\n } \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export class FormCrudOperations {\r\n\r\n form: DevExpress.ui.dxForm;\r\n area: string;\r\n getMoreData: (any) => void;\r\n\r\n constructor(area: string, getMoreData?: (any) => void) {\r\n const formId = `#${area}Form`;\r\n this.form = $(formId).dxForm(\"instance\");\r\n this.area = area;\r\n\r\n if (getMoreData) {\r\n this.getMoreData = getMoreData;\r\n }\r\n }\r\n\r\n insertRecord() {\r\n const newData: any = this.form.option(\"formData\");\r\n\r\n if (this.getMoreData) {\r\n this.getMoreData(newData);\r\n }\r\n\r\n const result: any = this.form.validate();\r\n\r\n if (result.isValid) {\r\n sendRequest(`/${this.area}/Create/Post`, JSON.stringify(newData), \"POST\");\r\n }\r\n else {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n \r\n }\r\n }\r\n\r\n updateRecord() {\r\n const newData: any = this.form.option(\"formData\");\r\n\r\n if (this.getMoreData) {\r\n this.getMoreData(newData);\r\n }\r\n\r\n const result: any = this.form.validate();\r\n const keyId: any = this.form.option(\"KeyId\");\r\n\r\n if (result.isValid && keyId != null) {\r\n sendRequest(`/${this.area}/Edit/Put/${keyId}`, JSON.stringify(newData), \"PUT\");\r\n } else {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n\r\n return;\r\n }\r\n }\r\n\r\n deleteRecord() {\r\n const verifyVoid = window.confirm(\"Are you sure you would like to VOID this record?\");\r\n\r\n if (verifyVoid) {\r\n const keyId: any = this.form.option(\"KeyId\");\r\n if (keyId != null) {\r\n sendRequest(`/${this.area}/Edit/Delete/${keyId}`, \"\", \"DELETE\");\r\n }\r\n }\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n export function lookupActiveTemplate(getItemText: (any) => string) {\r\n return (itemData: any, itemIndex: any, itemElement: any) => {\r\n\r\n const text = getItemText(itemData);\r\n\r\n if (itemData.isActive) {\r\n itemElement.append(\"
\" + text + \"
\");\r\n } else {\r\n itemElement.append(\"
\" + text + \"\" +\r\n \" - Disabled
\").closest(\".dx-list-item\").css(\"pointer-events\", \"none\");\r\n }\r\n }\r\n }\r\n}\r\n\r\n\r\n \r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n declare var settings: any;\r\n const saveUrl = \"/Requests/Save\";\r\n const reportUrl = \"/Home/Index/\";\r\n const mergeExport = \"/DocumentExport/\";\r\n const merge = \"/Merge/Document/\";\r\n const mergeSection = \"/Merge/Section/\";\r\n const editMergeSection = \"/Section/Index/\";\r\n\r\n //example of a button that fires reportFromForm OnClick\r\n //export function reportFromForm() {\r\n // var form = $('#ProjectInfoUpdateForm').dxForm('instance');\r\n\r\n // Areas.gotoReport(\r\n // \"ProjectInitiationReport\",\r\n // () => { return form.option(\"ProjectInfoId\"); },\r\n // () => { return form.option(\"UserId\") }\r\n // );\r\n //}\r\n \r\n export function gotoReport(reportName: string, getParameters: () => any, getUserId: () => any) {\r\n var parameters = getParameters();\r\n var userId = getUserId();\r\n\r\n if (isNotEmpty(parameters) && isNotEmpty(userId)) {\r\n\r\n var data = JSON.stringify(\r\n {\r\n \"ReportName\": reportName,\r\n \"Parameters\": parameters,\r\n \"UserId\": userId\r\n });\r\n\r\n requestReport(data);\r\n }\r\n }\r\n\r\n function userInfo(): string {\r\n return `/${settings.user.userId}/${settings.user.userName}`;\r\n }\r\n\r\n function requestReport(data: string) {\r\n const errorMessage = \"Error in request - Contact IS department\";\r\n\r\n const method = \"POST\";\r\n var content: string = \"application/x-www-form-urlencoded; charset=utf-8\";\r\n\r\n var saveReportUrl = settings.reportServer + saveUrl;\r\n\r\n $.ajax({\r\n url: saveReportUrl,\r\n method: method,\r\n contentType: content,\r\n crossDomain: true,\r\n data: data,\r\n success: (response) => {\r\n if (response.errormsg) {\r\n DevExpress.ui.notify(response.errormsg, \"error\", 2000);\r\n } else {\r\n let messageType: string = \"success\";\r\n\r\n DevExpress.ui.notify(response.msg, messageType, 2000);\r\n openReport(response.id);\r\n }\r\n },\r\n error: () => {\r\n DevExpress.ui.notify(errorMessage, \"error\", 2000);\r\n }\r\n });\r\n }\r\n\r\n function openReport(id: any) {\r\n const url = settings.reportServer + reportUrl + id;\r\n window.open(url);\r\n }\r\n\r\n}\r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n export class Tab {\r\n id: number;\r\n url: string;\r\n\r\n constructor(id: number, url: string) {\r\n this.id = id;\r\n this.url = url;\r\n }\r\n }\r\n export function createTabsWithSameActionAndDifferentAreas(action: string, controllersWithArea: string[]): Array {\r\n return controllersWithArea.map((value, index) => new Tab(index, `/${value}/${action}`));\r\n }\r\n\r\n\r\n export function createTabsWithSameAction(area: string, action: string, controllers: string[]): Array {\r\n return controllers.map((value, index) => new Tab(index, `/${area}/${value}/${action}`));\r\n }\r\n\r\n export function createTabsWithSameController(area: string, actions: string[], controller: string): Array {\r\n return actions.map((value, index) => new Tab(index, `/${area}/${controller}/${value}`));\r\n }\r\n\r\n export function tabInitialized(tabItems: Tab[]) {\r\n return tabInitializedBase(tabItems, i => new Tab(i.id, i.url));\r\n } \r\n\r\n export function tabItemClick(params: any) {\r\n window.location.href = params.itemData.url;\r\n } \r\n\r\n export function tabWithIdInitialized(tabItems: Tab[]) {\r\n return tabInitializedBase(tabItems, (i, tabControl) => new Tab(i.id, `${i.url}/${tabControl.option(\"id\")}`));\r\n }\r\n\r\n export function tabWithIdItemClick(params: any) {\r\n const url = params.itemData.url + \"/\" + params.component.option(\"id\");\r\n window.location.href = url;\r\n } \r\n \r\n function tabInitializedBase(tabItems: Tab[], transform: (t: Tab, tabControl: DevExpress.ui.dxTabs) => Tab) {\r\n return (params: any) => {\r\n const tabControl: DevExpress.ui.dxTabs = params.component;\r\n const currentUrl = window.location.pathname;\r\n\r\n matchTabWithExactUrl(tabItems, transform, tabControl, currentUrl);\r\n selectParentTab(tabControl);\r\n }\r\n }\r\n\r\n function selectParentTab(tabControl: DevExpress.ui.dxTabs) {\r\n const parentTabId = tabControl.option(\"parentTabId\");\r\n const parentSelectedIndex = tabControl.option(\"parentSelectedIndex\");\r\n\r\n if (isNotEmpty(parentTabId) && isNotEmpty(parentSelectedIndex)) {\r\n const parentTab: DevExpress.ui.dxTabs = $(`#${parentTabId}`).dxTabs(\"instance\");\r\n\r\n if (parentTab) {\r\n parentTab.option(\"selectedIndex\", parentSelectedIndex);\r\n }\r\n }\r\n }\r\n \r\n function matchTabWithExactUrl(tabItems: Tab[], transform: (t: Tab, tabControl: DevExpress.ui.dxTabs) => Tab,\r\n tabControl:DevExpress.ui.dxTabs, currentUrl: string) {\r\n\r\n const selectedTab = tabItems\r\n .map(i => transform(i, tabControl))\r\n .filter((element) => currentUrl === element.url);\r\n\r\n if (selectedTab.length === 1) {\r\n tabControl.option(\"selectedIndex\", selectedTab[0].id);\r\n }\r\n } \r\n \r\n}\r\n","namespace Areas {\r\n \"use strict\";\r\n\r\n export class UpdateOperations {\r\n\r\n form: DevExpress.ui.dxForm;\r\n url: string;\r\n keyId: number;\r\n getMoreData: (any) => void;\r\n\r\n constructor(formName: string, url: string, getMoreData?: (any) => void) {\r\n const formId = `#${formName}`;\r\n this.form = $(formId).dxForm(\"instance\");\r\n this.keyId = this.form.option(\"KeyId\");\r\n this.url = `${url}/${this.keyId}`;\r\n\r\n if (getMoreData) {\r\n this.getMoreData = getMoreData;\r\n }\r\n }\r\n\r\n \r\n updateRecord(callback: () => void = null) {\r\n const newData: any = this.form.option(\"formData\");\r\n \r\n if (this.getMoreData) {\r\n this.getMoreData(newData);\r\n }\r\n\r\n const result: any = this.form.validate();\r\n console.log(result);\r\n if ($('#result').length > 0) {\r\n if (result.isValid) {\r\n sendRequest(this.url, JSON.stringify(newData), \"PUT\", callback);\r\n } else {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n }\r\n } else {\r\n sendRequest(this.url, JSON.stringify(newData), \"PUT\", callback);\r\n }\r\n\r\n \r\n }\r\n\r\n \r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export class Selected {\r\n user: any;\r\n } \r\n //grid user lookup\r\n export function userValueChanged(selected: Selected) {\r\n return (rowData, value) => {\r\n if (value === undefined || value === null) {\r\n rowData.userId = null;\r\n rowData.userEmail = null;\r\n rowData.userName = null;\r\n return;\r\n }\r\n\r\n if (!selected.user.isActive) {\r\n DevExpress.ui.notify(\"The record cannot be updated. The user you selected has been disabled!\", \"error\", 3000);\r\n return;\r\n }\r\n\r\n rowData.userId = selected.user.userId;\r\n rowData.userEmail = selected.user.email;\r\n rowData.userName = selected.user.displayName;\r\n }\r\n }\r\n\r\n export function lookupEditTemplate(loadUrl: string, selected: Selected) {\r\n return (cellElement, cellInfo) => {\r\n var storeConfiguration = {\r\n \"loadParams\": {},\r\n \"key\": \"userId\",\r\n \"loadUrl\": loadUrl,\r\n \"insertUrl\": \"\",\r\n \"updateUrl\": \"\",\r\n \"deleteUrl\": \"\"\r\n };\r\n\r\n var store = DevExpress.data.AspNet.createStore(storeConfiguration);\r\n\r\n const dataSource = new DevExpress.data.DataSource({\r\n store: store\r\n });\r\n\r\n var div = document.createElement(\"div\");\r\n cellElement.get(0).appendChild(div);\r\n $(div).dxLookup({\r\n dataSource: dataSource,\r\n valueExpr: \"userId\",\r\n displayExpr: \"displayName\",\r\n value: cellInfo.data.userId,\r\n popupWidth: 500,\r\n searchExpr: [\"displayName\", \"email\"],\r\n\r\n\r\n onSelectionChanged(e) {\r\n selected.user = e.selectedItem;\r\n },\r\n\r\n onValueChanged(e) {\r\n cellInfo.setValue(e.value);\r\n }\r\n });\r\n\r\n $(div).dxLookup(\"instance\").option(\"itemTemplate\", customTemplate);\r\n }\r\n }\r\n\r\n export function lookupCellTemplate(cellElement: any, cellInfo: any) {\r\n cellElement.text(cellInfo.data.displayName);\r\n }\r\n\r\n function customTemplate(itemData: any, itemIndex: any, itemElement: any) {\r\n if (itemData.isActive) {\r\n itemElement.append(`
${itemData.displayName}${itemData.email}
`);\r\n } else {\r\n itemElement.append(`
${itemData.displayName}${itemData.email} - Disabled
`);\r\n }\r\n }\r\n\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export interface IDictionary {\r\n [index: string]: string;\r\n }\r\n\r\n export function updateQueryStringParameter(uri: any, key: any, value: any) {\r\n const re = new RegExp(`([?&])${key}=.*?(&|$)`, \"i\");\r\n const separator = uri.indexOf(\"?\") !== -1 ? \"&\" : \"?\";\r\n if (uri.match(re)) {\r\n return uri.replace(re, `$1${key}=${value}$2`);\r\n } else {\r\n return uri + separator + key + \"=\" + value;\r\n }\r\n }\r\n\r\n export function removeQueryStringParameter(url: string, parameter: string) {\r\n //prefer to use l.search if you have a location/link object\r\n const urlparts = url.split(\"?\");\r\n if (urlparts.length >= 2) {\r\n\r\n const prefix = encodeURIComponent(parameter) + \"=\";\r\n const pars = urlparts[1].split(/[&;]/g);\r\n\r\n //reverse iteration as may be destructive\r\n for (let i = pars.length; i-- > 0;) {\r\n //idiom for string.startsWith\r\n if (pars[i].lastIndexOf(prefix, 0) !== -1) {\r\n pars.splice(i, 1);\r\n }\r\n }\r\n\r\n url = urlparts[0] + (pars.length > 0 ? `?${pars.join(\"&\")}` : \"\");\r\n return url;\r\n } else {\r\n return url;\r\n }\r\n }\r\n\r\n export function getQueryStringParameter(uri: any, key: any) {\r\n const re = new RegExp(\"([?&])start=(.*?)(&|$)\", \"i\");\r\n if (uri.match(re)) {\r\n return uri.match(re)[2];\r\n }\r\n\r\n return \"\";\r\n }\r\n\r\n export function isNotEmpty(variable: any) {\r\n return variable !== undefined && variable != null && variable !== \"\";\r\n }\r\n\r\n export function isEmpty(variable: any) {\r\n return !isNotEmpty(variable);\r\n }\r\n\r\n export function trimTextBoxValue(e: any) {\r\n var textBox = e.component as DevExpress.ui.dxTextBox;\r\n textBox.option(\"value\", $.trim(e.value));\r\n }\r\n\r\n export function partition(items, n) {\r\n var result = _.groupBy(items, function(item, i) {\r\n return Math.floor(i % n);\r\n });\r\n return _.values(result);\r\n }\r\n\r\n export function clone(object: any) {\r\n const json = JSON.stringify(object);\r\n return JSON.parse(json);\r\n } \r\n \r\n export function elementIdExists(elementId: string) : boolean {\r\n return Boolean($(`#${elementId}`).length);\r\n }\r\n\r\n\r\n\r\n export function goToEdit() {\r\n location.href = location.href.replace(\"/View\", \"/Edit\");\r\n } \r\n\r\n export function goToView() {\r\n location.href = location.href.replace(\"/Edit\", \"/View\");\r\n } \r\n\r\n export function reloadPage() {\r\n location.href = location.href;\r\n } \r\n\r\n export function onContentReadySelectFirstRow(e: any) {\r\n e.component.selectRowsByIndexes([0], false);\r\n }\r\n\r\n export function onGridSelectionChanged(e: any) {\r\n const rowSelected = e.selectedRowsData.length === 1;\r\n\r\n if (rowSelected) {\r\n enableButton(\"EditButton\");\r\n } else {\r\n disableButton(\"EditButton\");\r\n }\r\n }\r\n\r\n export function clearSelectBoxSelection(e: any) {\r\n const selectBox = e.component as DevExpress.ui.dxSelectBox;\r\n selectBox.reset();\r\n } \r\n\r\n export function formatDateTime(date: Date): string {\r\n return formatDate(date) + \" \" + formatTime(date);\r\n }\r\n\r\n export function isIE11() {\r\n return !!navigator.userAgent.match(/Trident.*rv\\:11\\./);\r\n }\r\n\r\n function formatDate(date: Date): string {\r\n const month = (\"0\" + (date.getMonth() + 1)).slice(-2);\r\n const year = date.getFullYear();\r\n\r\n const day = (\"0\" + date.getDate()).slice(-2);\r\n\r\n const formattedDate = `${month}/${day}/${year}`;\r\n return formattedDate;\r\n }\r\n\r\n function formatTime(date: Date): string {\r\n let hours = date.getHours();\r\n const ampm = hours >= 12 ? \"PM\" : \"AM\";\r\n hours = hours % 12;\r\n hours = hours ? hours : 12;\r\n const minutes = (\"0\" + date.getMinutes()).slice(-2);\r\n const formattedTime = hours + \":\" + minutes + \" \" + ampm;\r\n return formattedTime;\r\n } \r\n \r\n export function FormatDateForUpload(date: Date) {\r\n\r\n if (date == null) return null;\r\n\r\n const year = date.getFullYear();\r\n const month = date.getMonth() + 1;\r\n const day = date.getDate();\r\n\r\n return year + \"-\" + month + \"-\" + day;\r\n } \r\n\r\n export function getNextSaturdayDate() {\r\n return getNextSaturdayFromDate(new Date());\r\n }\r\n\r\n export function getNextSaturdayFromDate(date: Date) {\r\n const momentDate = moment(date);\r\n\r\n if (momentDate.isoWeekday() === 7) {\r\n return momentDate.add(6, \"day\");\r\n }\r\n\r\n return momentDate.endOf(\"isoWeek\").subtract(1, \"day\");\r\n }\r\n\r\n export function getPreviousSundayDate() {\r\n return getPreviousSundayFromDate(new Date());\r\n }\r\n\r\n export function getPreviousSundayFromDate(date: Date) {\r\n const momentDate = moment(date);\r\n\r\n if (momentDate.isoWeekday() === 7) {\r\n return momentDate;\r\n }\r\n\r\n return momentDate.startOf(\"isoWeek\").subtract(1, \"day\");\r\n }\r\n\r\n export function getForm(formName: string) : DevExpress.ui.dxForm {\r\n return $(`#${formName}`).dxForm(\"instance\");\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function gotoContract(id: string) {\r\n gotoSelected(\"ContractGrid\", \"/Contract/GeneralInfo/View/\");\r\n }\r\n\r\n\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n const columnChooserButtonName = \"columnChooserButton\";\r\n\r\n export function addColumnChooser(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n \r\n addButtonToToolbar(e.toolbarOptions, {\r\n elementAttr: { id: columnChooserButtonName, \"class\": \"dx-datagrid-column-chooser-button\" },\r\n text: \"Columns\",\r\n hint: \"Choose columns to show/hide\",\r\n type: \"normal\",\r\n icon: \"column-chooser\",\r\n onClick: showColumnChooser(grid)\r\n }, \"after\");\r\n\r\n } \r\n \r\n function showColumnChooser(grid: DevExpress.ui.dxDataGrid) {\r\n return (e: any) => {\r\n grid.showColumnChooser();\r\n }\r\n } \r\n \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n const downloadZipButtonName = \"downloadZipButton\";\r\n\r\n export function addDownloadZip(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n\r\n grid.on(\"selectionChanged\", toggleDownloadZipButton);\r\n\r\n addButtonToToolbar(e.toolbarOptions, {\r\n elementAttr: { id: downloadZipButtonName },\r\n text: \"Download Zip\",\r\n type: \"normal\",\r\n icon: \"arrowdown\",\r\n disabled: true,\r\n onClick: downloadZip(grid)\r\n }, \"before\"); \r\n } \r\n \r\n export function toggleDownloadZipButton(e: any) {\r\n if (e.selectedRowKeys.length) {\r\n Areas.enableButton(downloadZipButtonName);\r\n } else {\r\n Areas.disableButton(downloadZipButtonName);\r\n }\r\n }\r\n\r\n function downloadZip(dataGrid: DevExpress.ui.dxDataGrid) {\r\n return (e: any) => {\r\n const selectedIds = getSelectedIds(dataGrid);\r\n let url = `/File/Get/AttachmentZip?ids=${selectedIds}`; \r\n \r\n location.href = url; \r\n }\r\n }\r\n \r\n function getSelectedIds(dataGrid: DevExpress.ui.dxDataGrid) : string {\r\n return dataGrid.getSelectedRowsData().map(d => d.attachmentId).join(',');\r\n } \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export class EditBatchButtonConfiguration {\r\n private readonly toolbarOptions: any;\r\n\r\n constructor(toolbarOptions: any) {\r\n this.toolbarOptions = toolbarOptions;\r\n }\r\n\r\n configureBatchEditButtons() {\r\n const saveBtnItem = this.toolbarOptions.items.find(item => item.name === \"saveButton\");\r\n \r\n if (saveBtnItem) {\r\n saveBtnItem.showText = \"always\";\r\n saveBtnItem.options.icon = \"save\";\r\n saveBtnItem.options.type = \"success\";\r\n saveBtnItem.options.text = \"Save\";\r\n }\r\n \r\n const revertBtnItem = this.toolbarOptions.items.find(item => item.name === \"revertButton\");\r\n \r\n if (revertBtnItem) {\r\n revertBtnItem.showText = \"always\";\r\n revertBtnItem.options.icon = \"revert\";\r\n revertBtnItem.options.type = \"default\";\r\n revertBtnItem.options.elementAttr = { class: \"cancel\" };\r\n revertBtnItem.options.text = \"Cancel\"; \r\n }\r\n \r\n const addBtnItem = this.toolbarOptions.items.find(item => item.name === \"addRowButton\");\r\n \r\n if (addBtnItem) {\r\n addBtnItem.showText = \"always\";\r\n addBtnItem.options.icon = \"plus\";\r\n addBtnItem.options.type = \"default\";\r\n addBtnItem.options.elementAttr = { class: \"add\" };\r\n addBtnItem.options.text = \"Add\"; \r\n } \r\n }\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n enum GridMode { Normal, Edit } \r\n\r\n export class EditButtonsBuilder {\r\n private readonly addButtonName = \"addButton_\"+ new DevExpress.data.Guid().toString();\r\n private readonly editButtonName = \"editButton_\"+ new DevExpress.data.Guid().toString();\r\n private readonly deleteButtonName = \"deleteButton_\"+ new DevExpress.data.Guid().toString(); \r\n private readonly saveButtonName = \"saveButton_\"+ new DevExpress.data.Guid().toString(); \r\n private readonly cancelButtonName = \"cancelButton_\"+ new DevExpress.data.Guid().toString(); \r\n\r\n private readonly grid: DevExpress.ui.dxDataGrid;\r\n private readonly toolbarOptions: any;\r\n private gridMode: GridMode = GridMode.Normal;\r\n\r\n constructor(grid: DevExpress.ui.dxDataGrid, toolbarOptions: any) {\r\n this.grid = grid;\r\n this.toolbarOptions = toolbarOptions;\r\n }\r\n\r\n addButtons(buttonOptions: Array) {\r\n \r\n let shouldAddSaveButton: boolean = false;\r\n let trackGridSelection: boolean = false;\r\n \r\n if (_.contains(buttonOptions, \"add\")) {\r\n this.addAddButton();\r\n shouldAddSaveButton = true;\r\n } \r\n \r\n if (_.contains(buttonOptions, \"edit\")) {\r\n this.addEditButton();\r\n shouldAddSaveButton = true;\r\n trackGridSelection = true;\r\n }\r\n \r\n if (_.contains(buttonOptions, \"delete\")) {\r\n this.addDeleteButton();\r\n shouldAddSaveButton = true;\r\n trackGridSelection = true;\r\n } \r\n \r\n if (shouldAddSaveButton) {\r\n this.addSaveButton();\r\n this.addCancelButton();\r\n }\r\n \r\n if (trackGridSelection) {\r\n this.addTrackGridSelection();\r\n }\r\n } \r\n\r\n private addTrackGridSelection() {\r\n this.grid.on(\"selectionChanged\", this.onSelectionChanged());\r\n }\r\n \r\n private onSelectionChanged () {\r\n return (e: any) => {\r\n const enableEditAndDelete = e.selectedRowKeys.length === 1;\r\n \r\n if (enableEditAndDelete) {\r\n Areas.enableButton(this.editButtonName);\r\n Areas.enableButton(this.deleteButtonName); \r\n } else {\r\n Areas.disableButton(this.editButtonName);\r\n Areas.disableButton(this.deleteButtonName); \r\n }\r\n }\r\n }\r\n\r\n private addSaveButton() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.saveButtonName, class: \"green\" },\r\n text: \"Save\",\r\n hint: \"Save changes\",\r\n icon: \"save\",\r\n visible: false,\r\n onClick: this.saveRow()\r\n });\r\n } \r\n \r\n private addCancelButton() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.cancelButtonName, class: \"lightgold\" },\r\n text: \"Cancel\",\r\n hint: \"Cancel changes\",\r\n icon: \"revert\",\r\n visible: false,\r\n onClick: this.cancelEdit()\r\n });\r\n } \r\n \r\n private addAddButton() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.addButtonName, class: \"lightblue\" },\r\n text: \"Add\",\r\n hint: \"Add new record\",\r\n icon: \"plus\",\r\n onClick: this.addRow()\r\n }); \r\n } \r\n \r\n private addEditButton() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.editButtonName, class: \"lightgreen\" },\r\n text: \"Edit\",\r\n hint: \"Edit selected record\",\r\n icon: \"edit\",\r\n disabled: true,\r\n onClick: this.editRow()\r\n }); \r\n } \r\n \r\n private addDeleteButton() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.deleteButtonName, class: \"red\" },\r\n text: \"Delete\",\r\n hint: \"Delete selected record\",\r\n icon: \"remove\",\r\n disabled: true,\r\n onClick: this.deleteRow()\r\n }); \r\n } \r\n \r\n private editRow() {\r\n return (e: any) => {\r\n const rowKeys = this.grid.getSelectedRowKeys();\r\n \r\n if (rowKeys[0] == null) {\r\n DevExpress.ui.notify(\"Please make a selection first!\", \"warning\", 2000);\r\n return;\r\n }\r\n \r\n const rowIndex = this.grid.getRowIndexByKey(rowKeys[0]);\r\n \r\n if (rowIndex > -1) {\r\n this.grid.editRow(rowIndex);\r\n \r\n this.gridMode = GridMode.Edit;\r\n this.setButtonsVisibility();\r\n }\r\n \r\n }\r\n }\r\n \r\n private deleteRow() {\r\n return (e: any) => {\r\n const rowKeys = this.grid.getSelectedRowKeys();\r\n \r\n if (rowKeys[0] == null) {\r\n DevExpress.ui.notify(\"Please make a selection first!\", \"warning\", 2000);\r\n return;\r\n }\r\n \r\n const rowIndex = this.grid.getRowIndexByKey(rowKeys[0]);\r\n \r\n if (rowIndex > -1) {\r\n this.grid.deleteRow(rowIndex);\r\n }\r\n }\r\n } \r\n \r\n private saveRow() {\r\n return (e: any) => {\r\n this.grid.saveEditData()\r\n .done(() => {\r\n const unsavedData = this.grid.hasEditData();\r\n if (!unsavedData) {\r\n this.gridMode = GridMode.Normal;\r\n this.setButtonsVisibility();\r\n }\r\n });\r\n }\r\n } \r\n \r\n private addRow() {\r\n return (e: any) => {\r\n this.gridMode = GridMode.Edit;\r\n this.setButtonsVisibility();\r\n this.grid.addRow(); \r\n }\r\n } \r\n \r\n private cancelEdit() {\r\n return (e: any) => {\r\n this.gridMode = GridMode.Normal;\r\n this.setButtonsVisibility();\r\n this.grid.cancelEditData();\r\n }\r\n } \r\n \r\n private setButtonsVisibility() {\r\n if (this.gridMode === GridMode.Normal) {\r\n Areas.showButton(this.addButtonName);\r\n Areas.showButton(this.editButtonName);\r\n Areas.showButton(this.deleteButtonName);\r\n Areas.hideButton(this.saveButtonName);\r\n Areas.hideButton(this.cancelButtonName);\r\n } else {\r\n Areas.hideButton(this.addButtonName);\r\n Areas.hideButton(this.editButtonName);\r\n Areas.hideButton(this.deleteButtonName);\r\n Areas.showButton(this.saveButtonName);\r\n Areas.showButton(this.cancelButtonName); \r\n }\r\n }\r\n\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n const exportButtonName = \"exportButton\";\r\n\r\n export function addExport(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n \r\n addButtonToToolbar(e.toolbarOptions, {\r\n elementAttr: { id: exportButtonName, \"class\": \"dx-datagrid-export-button\" },\r\n text: \"Export\",\r\n hint: \"Export all rows to Excel\",\r\n type: \"normal\",\r\n icon: \"export-excel-button\",\r\n onClick: exportData(grid)\r\n }, \"after\");\r\n\r\n grid.on(\"exporting\", onExporting);\r\n \r\n } \r\n \r\n function exportData(grid: DevExpress.ui.dxDataGrid) {\r\n return (e: any) => {\r\n grid.exportToExcel(false);\r\n }\r\n }\r\n\r\n function onExporting (e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n\r\n e.fileName = grid.option(\"gridName\");\r\n } \r\n \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export class FilterBuilder {\r\n filterValue: any;\r\n readonly filterButtonName = \"filterButton_\" + new DevExpress.data.Guid().toString();\r\n readonly clearFilterButtonName = \"clearFilterButton_\"+ new DevExpress.data.Guid().toString();\r\n\r\n readonly grid: DevExpress.ui.dxDataGrid;\r\n private readonly toolbarOptions: any;\r\n\r\n constructor(grid: DevExpress.ui.dxDataGrid, toolbarOptions: any) {\r\n this.grid = grid;\r\n this.toolbarOptions = toolbarOptions;\r\n }\r\n\r\n addButtons() {\r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.filterButtonName },\r\n text: \"Advanced Filter\",\r\n hint: \"Create an advanced filter\",\r\n type: \"normal\",\r\n icon: \"filter\",\r\n onClick: this.showFilterDialog()\r\n }, \"after\"); \r\n \r\n addButtonToToolbar(this.toolbarOptions, {\r\n elementAttr: { id: this.clearFilterButtonName },\r\n text: \"Clear Filter\",\r\n hint: \"Clear the filter\",\r\n type: \"normal\",\r\n disabled: true,\r\n onClick: this.clearFilter()\r\n }, \"after\"); \r\n }\r\n\r\n private showFilterDialog() {\r\n return (e: any) => {\r\n let fields = this.getFields();\r\n\r\n const parameters = {\r\n filterValue: this.filterValue,\r\n fields: fields\r\n };\r\n\r\n const dialog = new Areas.Dialogs.FilterBuilder.FilterBuilderDialog(this.filterBuilderClosed(this), parameters);\r\n }\r\n }\r\n\r\n private getFields(): any {\r\n let fields = [];\r\n\r\n for (let i = 0; i < this.grid.columnCount(); i++) {\r\n const columnOption = this.grid.columnOption(i);\r\n\r\n if (columnOption.dataField) {\r\n fields.push(this.buildField(columnOption));\r\n }\r\n }\r\n\r\n return fields;\r\n }\r\n\r\n private buildField(columnOption: any): any {\r\n if (columnOption.displayField) {\r\n return {\r\n dataField: columnOption.displayField,\r\n dataType: \"string\",\r\n caption: columnOption.caption,\r\n format: columnOption.format\r\n };\r\n }\r\n\r\n return {\r\n dataField: columnOption.dataField,\r\n dataType: columnOption.dataType,\r\n caption: columnOption.caption,\r\n format: columnOption.format\r\n };\r\n }\r\n\r\n private clearFilter() {\r\n return (e: any) => {\r\n this.grid.clearFilter();\r\n this.filterValue = null;\r\n e.component.option(\"disabled\", true);\r\n $(`#${this.filterButtonName}`).dxButton(\"instance\").option(\"type\", \"default\");\r\n };\r\n }\r\n\r\n private filterBuilderClosed (filterBuilder: FilterBuilder) {\r\n return (result: Areas.DialogResult, data: any) => {\r\n if (result === DialogResult.Cancel) return;\r\n\r\n filterBuilder.filterValue = data.filter;\r\n\r\n filterBuilder.grid.filter(data.filter);\r\n\r\n $(`#${filterBuilder.filterButtonName}`).dxButton(\"instance\")\r\n .option(\"type\", data.filter ? \"success\" : \"default\");\r\n\r\n $(`#${filterBuilder.clearFilterButtonName}`).dxButton(\"instance\")\r\n .option(\"disabled\", !data.filter);\r\n }\r\n }\r\n } \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function addFilterBuilder(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n\r\n let filterBuilder = new FilterBuilder(grid, e.toolbarOptions);\r\n filterBuilder.addButtons();\r\n }\r\n\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function addEditingButtons(e: any, buttonOptions: Array) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n\r\n const editButtonsBuilder = new EditButtonsBuilder(grid, e.toolbarOptions);\r\n editButtonsBuilder.addButtons(buttonOptions);\r\n } \r\n\r\n export function addEditBatchButton(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n const editBatchButtonConfiguration = new EditBatchButtonConfiguration(e.toolbarOptions);\r\n editBatchButtonConfiguration.configureBatchEditButtons();\r\n }\r\n \r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function buildCellContent(cellElement: any, getData: () => string, contentTemplate: string) {\r\n const data = getData();\r\n const re = /{placeholder}/gi;\r\n const content = contentTemplate.replace(re, data);\r\n cellElement.html(content);\r\n }\r\n\r\n export function gotoSelected(gridName: string, url: string) {\r\n const dataGrid = $(`#${gridName}`).dxDataGrid(\"instance\");\r\n const dataId = dataGrid.getSelectedRowKeys()[0];\r\n if (dataId != null) {\r\n location.href = url + dataId;\r\n }\r\n else {\r\n DevExpress.ui.notify(\"You need to select a row first!\", \"warning\", 2000);\r\n }\r\n }\r\n\r\n export function refreshGrid(id: string) {\r\n $(`#${id}`).dxDataGrid(\"instance\").refresh();\r\n } \r\n \r\n export function refreshData(dataGrid: DevExpress.ui.dxDataGrid) {\r\n dataGrid.refresh();\r\n dataGrid.deselectRows(dataGrid.getSelectedRowKeys());\r\n } \r\n \r\n export function getGrid(gridName: string) : DevExpress.ui.dxDataGrid {\r\n return $(`#${gridName}`).dxDataGrid(\"instance\");\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function addResetLayout(e: any) {\r\n const grid: DevExpress.ui.dxDataGrid = e.component;\r\n\r\n addButtonToToolbar(e.toolbarOptions, {\r\n text: \"Reset Layout\",\r\n hint: \"Reset grid layout\",\r\n type: \"normal\",\r\n icon: \"revert\",\r\n onClick: reset(grid)\r\n }, \"after\");\r\n }\r\n\r\n function reset(grid: DevExpress.ui.dxDataGrid) {\r\n return (e: any) => {\r\n grid.state({});\r\n }\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function addButtonsToToolbar(buttonOptions: Array, addOtherButtons: (e: any) => void = null) {\r\n return (e: any) => {\r\n if (_.contains(buttonOptions, \"export\")) {\r\n addExport(e);\r\n } \r\n\r\n if (_.contains(buttonOptions, \"columnChooser\")) {\r\n addColumnChooser(e); \r\n }\r\n\r\n if (_.contains(buttonOptions, \"resetLayout\")) {\r\n addResetLayout(e);\r\n }\r\n\r\n if (_.contains(buttonOptions, \"filterBuilder\")) {\r\n addFilterBuilder(e);\r\n }\r\n\r\n if (_.contains(buttonOptions, \"downloadZip\")) {\r\n addDownloadZip(e);\r\n } \r\n \r\n const editing = e.component.option(\"editing\");\r\n\r\n if (editing.mode === \"batch\") {\r\n addEditBatchButton(e);\r\n } else {\r\n addEditingButtons(e, buttonOptions);\r\n }\r\n\r\n if (addOtherButtons) {\r\n addOtherButtons(e);\r\n }\r\n }\r\n }\r\n\r\n export function addButtonToToolbar(toolbarOptions: any, options: any, location: string = \"center\") {\r\n toolbarOptions.items.push({\r\n location: location,\r\n locateInMenu: \"auto\", \r\n widget: \"dxButton\",\r\n options: options\r\n }); \r\n } \r\n\r\n}","namespace Areas.TreeList {\r\n \"use strict\";\r\n\r\n const columnChooserButtonName = \"columnChooserButton\";\r\n\r\n export function addColumnChooser(e: any) {\r\n const treeList: DevExpress.ui.dxTreeList = e.component;\r\n \r\n addButtonToToolbar(e.toolbarOptions, {\r\n elementAttr: { id: columnChooserButtonName, \"class\": \"dx-datagrid-column-chooser-button\" },\r\n text: \"Columns\",\r\n hint: \"Choose columns to show/hide\",\r\n type: \"normal\",\r\n icon: \"column-chooser\",\r\n onClick: showColumnChooser(treeList)\r\n }, \"after\");\r\n\r\n } \r\n \r\n function showColumnChooser(treeList: DevExpress.ui.dxTreeList) {\r\n return (e: any) => {\r\n treeList.showColumnChooser();\r\n }\r\n } \r\n \r\n}","namespace Areas.TreeList {\r\n \"use strict\";\r\n\r\n export function addResetLayout(e: any) {\r\n const treeList: DevExpress.ui.dxTreeList = e.component;\r\n\r\n addButtonToToolbar(e.toolbarOptions, {\r\n text: \"Reset Layout\",\r\n hint: \"Reset grid layout\",\r\n type: \"normal\",\r\n icon: \"revert\",\r\n onClick: reset(treeList)\r\n }, \"after\");\r\n }\r\n\r\n function reset(treeList: DevExpress.ui.dxTreeList) {\r\n return (e: any) => {\r\n treeList.state({});\r\n }\r\n }\r\n}","namespace Areas {\r\n \"use strict\";\r\n\r\n export function addButtonsToTreeListToolbar(buttonOptions: Array, addOtherButtons: (e: any) => void = null) {\r\n return (e: any) => {\r\n if (_.contains(buttonOptions, \"columnChooser\")) {\r\n TreeList.addColumnChooser(e); \r\n }\r\n\r\n if (isIE11()) {\r\n disableStateStoring(e);\r\n } \r\n \r\n if (_.contains(buttonOptions, \"resetLayout\")) {\r\n TreeList.addResetLayout(e);\r\n }\r\n \r\n }\r\n }\r\n\r\n function disableStateStoring(e: any) {\r\n const grid: DevExpress.ui.dxTreeList = e.component;\r\n grid.option('stateStoring.enabled', false);\r\n }\r\n}","namespace Areas.Attachment {\r\n \"use strict\";\r\n\r\n export function onValueChanged(e) {\r\n var newValue = e.value;\r\n if (newValue != e.previousValue) {\r\n var uploader = $(\"#fileUploaderControl\").dxFileUploader(\"instance\");\r\n var url = uploader.option(\"uploadUrl\");\r\n url = updateQueryStringParameter(url, \"fileDescription\", newValue);\r\n console.log(url);\r\n uploader.option(\"uploadUrl\", url);\r\n }\r\n }\r\n\r\n export function onUploadError(e) {\r\n DevExpress.ui.notify(e.error.responseText, \"error\", 2000);\r\n }\r\n\r\n export function addIconImage(cellElement, cellInfo) {\r\n var iconSource = cellInfo.data.icon;\r\n var img = \"\";\r\n cellElement.height(30);\r\n cellElement.html(img);\r\n }\r\n\r\n export function downloadAttachmentLink(cellElement: any, cellInfo: any) {\r\n buildCellContent(cellElement,\r\n () => { return cellInfo.data.attachmentId; },\r\n \"Download\");\r\n } \r\n\r\n export function refreshGridAfterUpload(e) {\r\n var uploadGrid = $(\"#attachmentDataGrid\").dxDataGrid(\"instance\");\r\n uploadGrid.refresh();\r\n }\r\n\r\n export function onCellPrepared(e) {\r\n\r\n if (e.rowType === \"data\" && e.column.command === \"edit\") {\r\n if (e.data.isReadOnly) {\r\n e.cellElement.empty();\r\n }\r\n }\r\n } \r\n\r\n } ","namespace Areas.Dialogs.FilterBuilder {\r\n \"use strict\";\r\n\r\n export class FilterBuilderDialog extends Areas.BaseDialog {\r\n\r\n constructor(closeHandler: (dialogResult: DialogResult, data: any) => void, parameters: any = null) {\r\n super(\"FilterBuilder\", closeHandler, parameters, () => {\r\n const filterBuilder = $(`#${this.dialogName}Control`).dxFilterBuilder({\r\n fields: parameters.fields,\r\n value: parameters.filterValue\r\n });\r\n\r\n });\r\n }\r\n\r\n protected ok = (e: any) => {\r\n\r\n const filterBuilder = $(`#${this.dialogName}Control`).dxFilterBuilder('instance');\r\n const data = {\r\n gridName: this.parameters.gridName,\r\n filter: filterBuilder.option(\"value\")\r\n };\r\n\r\n this.close(DialogResult.Ok, data);\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n","namespace Areas.Maintenance {\r\n \"use strict\";\r\n\r\n var selected: Selected = new Selected();\r\n\r\n export function onUserIDValueChanged(rowData, value) {\r\n return userValueChanged(selected)(rowData, value);\r\n }\r\n\r\n export function userAuthorizedLookupEditTemplate(cellElement, cellInfo) {\r\n return lookupEditTemplate(\"/Maintenance/AuthorizedUser/Users\", selected)(cellElement, cellInfo);\r\n }\r\n\r\n export function userLookupEditTemplate(cellElement, cellInfo) {\r\n return lookupEditTemplate(\"/Maintenance/SystemUsers/Users\", selected)(cellElement, cellInfo);\r\n }\r\n\r\n export function userLookupCellTemplate(cellElement, cellInfo) {\r\n return lookupCellTemplate(cellElement, cellInfo);\r\n }\r\n\r\n export function disableColumnEdit(columnName: string) {\r\n return function (e: any) {\r\n if (e.rowType !== \"data\" || !e.row.isEditing)\r\n return;\r\n if (e.column.dataField === columnName && !e.row.isNewRow)\r\n e.cellElement.find('input').prop('readonly', true);\r\n }\r\n } \r\n\r\n}\r\n\r\n\r\n\r\n","namespace Areas.Maintenance.List {\r\n \"use strict\";\r\n\r\n var systemMaintenanceTabItems = Areas.createTabsWithSameAction(\"Maintenance\", \"List\",\r\n [\"AuthorizedUser\",\"SystemUsers\", \"SystemConfigSettings\", \"SystemProcessEmails\"])\r\n\r\n export function systemMaintenanceTabInitialized(params: any) {\r\n return Areas.tabInitialized(systemMaintenanceTabItems)(params);\r\n }\r\n}","namespace Areas.Requests.List {\r\n \"use strict\";\r\n\r\n export function viewLink(cellElement, cellInfo) {\r\n\r\n buildCellContent(cellElement,\r\n () => { return cellInfo.key; },\r\n \"View\");\r\n }\r\n\r\n //export function showCreate() {\r\n // var dialog = new Areas.Dialogs.CreateRequest.CreateEicDialog(() => { });\r\n //}\r\n\r\n export function create() {\r\n location.href = \"/Requests/Create/Index\";\r\n }\r\n\r\n export function view() {\r\n gotoSelected(\"RequestGrid\", \"/Requests/View/Index/\");\r\n }\r\n\r\n export function edit() {\r\n gotoSelected(\"RequestGrid\", \"/Requests/Edit/Index/\");\r\n }\r\n\r\n export function review() {\r\n gotoSelected(\"RequestGrid\", \"/Requests/Review/Index/\");\r\n }\r\n\r\n export function onGridSelectionChanged(e) {\r\n const rowSelected = e.selectedRowsData.length === 1;\r\n\r\n let dataGrid = $('#RequestGrid').dxDataGrid('instance');\r\n let isGeneralUser = dataGrid.option(\"isGeneralUser\");\r\n\r\n if (rowSelected) {\r\n const status: string = e.selectedRowsData[0].statusLk;\r\n\r\n if (isGeneralUser && status != \"Draft\") {\r\n disableButton(\"EditButton\");\r\n } else {\r\n enableButton(\"EditButton\");\r\n }\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n function isEditable(status: string): boolean {\r\n return Constants.requestsEditableStatuses.indexOf(status) > -1;\r\n }\r\n\r\n function isReviewable(status: string): boolean {\r\n return Constants.requestsReviewableStatuses.indexOf(status) > -1;\r\n }\r\n\r\n var tabItems = Areas.createTabsWithSameController(\"Requests\", [\"InProcess\", \"Completed\", \"Deleted\"], \"List\");\r\n\r\n export function tabInitialized(params: any) {\r\n return Areas.tabInitialized(tabItems)(params);\r\n }\r\n}\r\n","namespace Areas.Requests {\r\n \"use strict\";\r\n\r\n\r\n //\r\n //CRUD functions\r\n //\r\n\r\n\r\n\r\n var formCrudOps: FormCrudOperations;\r\n $(() => { init(); });\r\n\r\n function init() {\r\n\r\n formCrudOps = new FormCrudOperations(\"Requests\");\r\n\r\n }\r\n\r\n\r\n export function insertRecord(e: any) {\r\n formCrudOps.insertRecord();\r\n }\r\n\r\n export function updateRecord(e: any) {\r\n formCrudOps.updateRecord();\r\n }\r\n\r\n export function insertRecordThenEdit(e: any) {\r\n const form = $(\"#RequestsForm\").dxForm(\"instance\");\r\n const result = form.validate();\r\n if (!result.isValid) {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n }\r\n\r\n let formData = form.option(\"formData\");\r\n formData.StatusLk = \"Draft\";\r\n form.option(\"formData\", formData);\r\n\r\n sendRequest(`/Requests/Edit/InsertRequestThenEdit/`, JSON.stringify(formData), \"POST\");\r\n\r\n }\r\n\r\n\r\n export function submitRecord(e: any) {\r\n\r\n const form = $(\"#RequestsForm\").dxForm(\"instance\");\r\n const result = form.validate();\r\n if (!result.isValid) {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n\r\n }\r\n\r\n const verifySubmit = window.confirm(\"Are you sure you would like to SUBMIT this record?\");\r\n\r\n if (verifySubmit) {\r\n const keyId: any = form.option(\"KeyId\");\r\n\r\n let formData = form.option(\"formData\");\r\n formData.StatusLk = \"Submitted\";\r\n form.option(\"formData\", formData);\r\n\r\n\r\n if (keyId != null) {\r\n sendRequest(`/Requests/Edit/SubmitRequest/${keyId}/`, JSON.stringify(formData), \"PUT\");\r\n }\r\n }\r\n }\r\n\r\n export function insertSubmitRecord(e: any) {\r\n const form = $(\"#RequestsForm\").dxForm(\"instance\");\r\n const result = form.validate();\r\n if (!result.isValid) {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n }\r\n\r\n const verifySubmit = window.confirm(\"Are you sure you would like to SUBMIT this record?\");\r\n\r\n if (verifySubmit) {\r\n \r\n let formData = form.option(\"formData\");\r\n formData.StatusLk = \"Submitted\";\r\n form.option(\"formData\", formData);\r\n\r\n sendRequest(`/Requests/Edit/InsertSubmitRequest/`, JSON.stringify(formData), \"POST\");\r\n \r\n }\r\n }\r\n\r\n export function voidRecordFromReview() {\r\n const verifyVoid = window.confirm(\"Are you sure you would like to VOID this record?\");\r\n\r\n if (verifyVoid) {\r\n\r\n SaveReviewData(\"Void\", \"/Requests/Edit/VoidRequest\")\r\n }\r\n }\r\n\r\n export function voidRecord() {\r\n const verifyVoid = window.confirm(\"Are you sure you would like to VOID this record?\");\r\n\r\n if (verifyVoid) {\r\n const form = $(\"#RequestsForm\").dxForm(\"instance\");\r\n const keyId: any = form.option(\"KeyId\");\r\n\r\n let formData = form.option(\"formData\");\r\n formData.StatusLk = \"Void\";\r\n form.option(\"formData\", formData);\r\n\r\n\r\n if (keyId != null) {\r\n sendRequest(`/Requests/Edit/VoidRequest/${keyId}/`, JSON.stringify(formData), \"PUT\");\r\n }\r\n }\r\n }\r\n\r\n export function updateReviewRecord() {\r\n\r\n SaveReviewData(\"Under Review\", \"/Requests/Review/UpdateRequest\");\r\n\r\n }\r\n\r\n function SaveReviewData(StatusLk: String, baseUrl: String) {\r\n\r\n const form = $(\"#ReviewForm\").dxForm(\"instance\");\r\n const keyId: any = form.option(\"KeyId\");\r\n\r\n const result = form.validate();\r\n if (!result.isValid) {\r\n const verifyError = window.alert(\"Invalid field value! Scroll through form for red error(s). Click on Red ! to see full error message\");\r\n return;\r\n }\r\n\r\n let formData = form.option(\"formData\");\r\n formData.StatusLk = StatusLk;\r\n form.option(\"formData\", formData);\r\n\r\n if (formData.IsActive == false) {\r\n const verifyInActivate = window.confirm(\"Are you sure you would like to Inactivate this record?\");\r\n\r\n if (!verifyInActivate) {\r\n\r\n return;\r\n }\r\n\r\n }\r\n \r\n const formRequests = $(\"#RequestsForm\").dxForm(\"instance\");\r\n \r\n let requestData = formRequests.option(\"formData\");\r\n\r\n requestData.SubmittedBy = formData.SubmittedBy;\r\n requestData.SubmittedDateTime = formData.SubmittedDateTime;\r\n requestData.StatusLk = formData.StatusLk;\r\n requestData.AssignedTo = formData.AssignedTo;\r\n requestData.AssignedBy = formData.AssignedBy;\r\n requestData.AssignedDateTime = formData.AssignedDateTime;\r\n requestData.ReviewerComment = formData.ReviewerComment;\r\n requestData.IsTimeSensitive = formData.IsTimeSensitive;\r\n requestData.IsActive = formData.IsActive;\r\n\r\n let requestUrl = `${baseUrl}/${keyId}/`;\r\n \r\n if (keyId != null) {\r\n sendRequest(`${requestUrl}`, JSON.stringify(requestData), \"PUT\");\r\n }\r\n\r\n\r\n \r\n }\r\n\r\n export function approveRecord(e: any) {\r\n const verifyApprove = window.confirm(\"Are you sure you would like to COMPLETE this record?\");\r\n\r\n if (verifyApprove) {\r\n\r\n SaveReviewData(\"Completed\", \"/Requests/Review/ApproveRequest\");\r\n }\r\n }\r\n\r\n export function returnRecordToRequestor(e: any) {\r\n const verifyReturn = window.confirm(\"Are you sure you would like to Return this request?\");\r\n\r\n if (verifyReturn) {\r\n\r\n SaveReviewData(\"Draft\", \"/Requests/Review/ReturnRequest\");\r\n\r\n }\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n\r\n\r\n","namespace Areas.Requests {\r\n \"use strict\";\r\n\r\n\r\n export function goBack() {\r\n window.history.back();\r\n }\r\n\r\n\r\n export function gotoListFromForm() {\r\n\r\n var linkInfo = \"/Requests/List/Index/\";\r\n location.href = linkInfo;\r\n }\r\n\r\n export function gotoEditFromForm() {\r\n var keyId: any = $('#RequestsForm').dxForm('instance').option('KeyId');\r\n if (keyId != null) {\r\n var linkInfo = \"/Requests/Edit/Index/\" + keyId.toString() + \"\";\r\n location.href = linkInfo;\r\n }\r\n else {\r\n DevExpress.ui.notify(\"Record not selected!\", \"warning\", 2000);\r\n }\r\n }\r\n\r\n export function gotoViewFromForm() {\r\n var keyId: any = $('#RequestsForm').dxForm('instance').option('KeyId');\r\n if (keyId != null) {\r\n var linkInfo = \"/Requests/View/Index/\" + keyId.toString() + \"\";\r\n location.href = linkInfo;\r\n }\r\n else {\r\n DevExpress.ui.notify(\"Record not selected!\", \"warning\", 2000);\r\n }\r\n }\r\n\r\n\r\n export function gotoCreate(e) {\r\n\r\n var linkInfo = \"/Requests/Create/Index/\";\r\n location.href = linkInfo;\r\n\r\n }\r\n\r\n\r\n\r\n export function gotoEdit() {\r\n var dataGrid = $('#RequestGrid').dxDataGrid('instance');\r\n var dataId = dataGrid.getSelectedRowKeys()[0];\r\n if (dataId != null) {\r\n var linkInfo = \"/Requests/Edit/Index/\" + dataId.toString() + \"\";\r\n location.href = linkInfo;\r\n }\r\n else {\r\n DevExpress.ui.notify(\"You need to select a row first!\", \"warning\", 2000);\r\n }\r\n }\r\n\r\n export function gotoView() {\r\n var dataGrid = $('#RequestGrid').dxDataGrid('instance');\r\n var dataId = dataGrid.getSelectedRowKeys()[0];\r\n if (dataId != null) {\r\n var linkInfo = \"/Requests/View/Index/\" + dataId.toString() + \"\";\r\n location.href = linkInfo;\r\n }\r\n else {\r\n DevExpress.ui.notify(\"You need to select a row first!\", \"warning\", 2000);\r\n }\r\n }\r\n\r\n export function viewLink(cellElement, cellInfo) {\r\n var fieldData = cellInfo.data.observationId;\r\n var linkInfo = \"View\"\r\n cellElement.html(linkInfo);\r\n }\r\n\r\n\r\n\r\n\r\n}\r\n"]}