using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sleis.Utility; using System.Web.Mvc; using System.ComponentModel; namespace Sleis.Models { public static class Constants { public const string GlobalMessageKey = "GlobalMessage"; public const string GlobalErrorMessageKey = "GlobalErrorMessage"; public const string ReturnUrlKey = "ReturnUrl"; public const string EmailFormatRegEx = @"^([\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+\.)*[\w\!\#$\%\&\'\*\+\-\/\=\?\^\`{\|\}\~]+@((((([a-zA-Z0-9]{1}[a-zA-Z0-9\-]{0,62}[a-zA-Z0-9]{1})|[a-zA-Z])\.)+[a-zA-Z]{2,6})|(\d{1,3}\.){3}\d{1,3}(\:\d{1,5})?)$"; public const string FormatErrorMessage = "The format is invalid."; public const string RequiredErrorMessage = "This field is required."; public const string InvalidNumericFormatErrorMessage = "Invalid numeric format."; public const string InvalidNumericValueErrorMessage = "Invalid numeric value."; public const string SavingDataErrorMessage = "Error while saving data. Please see logs for details."; public const string DeletingDataErrorMessage = "Error while deleting data. Please see logs for details."; public const string TabErrorMessage = "Validation error. Please correct issues on all highlighted tabs and then save your changes again."; public const string DecimalFormatRegEx = @"^[-]?\d+(\.\d+)?$"; public const string IntegerFormatRegEx = @"^?\d*\.?\d*$"; //Optional //public const string DataTableCount = "Showing out of records."; public const string DataTableCount = "showing ."; public const string DateRegEx = @"^(19|20)\d\d[- /.](0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])$"; public const string DateFormatErrorMessage = "Invalid date format."; public const string PageKey = "PageKey"; public const string EnableMonthlyThroughputTotals = "app.enable.monthly.throughput.totals"; public const string LastDocumentId = "LastDocumentId"; public const string EnableRegulatoryProgramIn = "app.enable.regulatory.program.in"; public const string EnableRegulatoryProgramInEmissionUnit = "emissionUnit"; public const string EnableRegulatoryProgramInUnitProcess = "unitProcess"; public const string UseEmissionUnitControlApproach = "app.use.emission.unit.control.approach"; // * duplicate ** public const string MonthlyThroughputTotalsEnabled = "app.enable.monthly-throughput"; public const string PageFieldsKey = "PageFields"; public const string IdentifierTypeKey = "IdentifierType"; public const string UserSubscriberAgreementMessage = "user.subscriber.agreement"; public const string AppHomeWelcomeTxt = "app.home.welcome.text"; public const string AppHomeDownloadTxt = "app.home.register.text"; public const string DownloadTxt = "app.downloadfroms.text"; public const string AppManagerHomeWelcomeTxt = "app.managerhome.welcome.text"; public const string UseProcessIsCbi = "app.use.process.is.cbi"; public const string NodeEndpointUrl = "node.endpoint.url"; public const string NodeEndpointUsername = "node.endpoint.username"; public const string NodeEndpointPassword = "node.endpoint.password"; public const string NodeOrganization = "node.organization"; public const string NodeType = "node.type"; public const string NodeAttachmentFolderPath = "node.attachment.folder.path"; public const string AppReportFacilityTooltip = "app.report.facility.tooltip"; public const string AppReportReleasepointsTooltip = "app.report.releasepoints.tooltip"; public const string AppReportControldevicesTooltip = "app.report.controldevices.tooltip"; public const string AppReportEmissionunitsTooltip = "app.report.emissionunits.tooltip"; public const string AppReportUnitprocessesTooltip = "app.report.unitprocesses.tooltip"; public const string AppReportProcessemissionsTooltip = "app.report.processemissions.tooltip"; public const string AppReportReportAttachmentsTooltip = "app.report.reportattachments.tooltip"; public const string AppAutocompleteResultsSize = "app.autocomplete.results.size"; public const string AppDataProvider = "data.provider"; public const string AppConnectionString = "data.connection"; public const string CanEditScc = "app.can.edit.scc"; public const string UserProfileInvalidMessage = "user.profile.invalid"; public const string EnableDetailedErrorMessages = "enable.detailed.error.message"; public const string PublicReleasePointCannotDeleteMessage = "public.releasepoint.cannot.delete.message"; public const string AgencyReleasePointCannotDeleteMessage = "agency.releasepoint.cannot.delete.message"; public const string AgencyControlDeviceCannotDeleteMessage = "agency.controldevice.cannot.delete.message"; public const string AgencyEmissionUnitCannotDeleteMessage = "agency.emissionunit.cannot.delete.message"; public const string AgencyUnitProcessCannotDeleteMessage = "agency.unitprocess.cannot.delete.message"; //SESSION KEYS public const string ToggleInfo = @"ToggleInfo"; public const string DefaultPageSize = "default.list.page.size"; public const string AppFipsStateCode = "app.fips.state.code"; public const string EisSubmissionId = "eis.submission.id"; public const string InvalidResetPasswordToken = "invalid.reset.password.token"; } public static class Lists { public static readonly string SleisSecQuestions = "SleisSecQuestions"; public static readonly string SleisSecQuestionNumber = "SleisSecQuestionNumber"; public static readonly string SleisUserTypeTypeListName = "SleisUserTypeTypes"; public static readonly object[] SleisUserTypeTypes = new object[] { SleisUserTypeType.Agency, SleisUserTypeType.Facility}; public static readonly string SleisUserStatusTypesName = "SleisUserStatusTypes"; public static readonly object[] SleisUserStatusTypes = new object[] { SleisUserStatusType.Active, SleisUserStatusType.Inactive, SleisUserStatusType.Locked //, SleisUserStatusType.Pending }; public static readonly string SleisUserContactTypesName = "SleisUserStatusTypes"; public static readonly object[] SleisUserContactTypes = new object[] { "", ContactMethodType.Other, ContactMethodType.Email, ContactMethodType.Fax, ContactMethodType.Phone, ContactMethodType.Mobile }; } public enum ValidationResultItemType { Undefined, Warning, Error } public enum FacilityContactType { Undefined, Compliance, Emissions, Permit } public enum ContactMethodType { Undefined, Other, Email, Fax, Phone, Mobile } public enum EventType { Undefined, Auth, Audit, Info, Error } public enum EventRecordType { Undefined, CFRMNumber, SubmissionId, ReportId } public enum SubmissionDocumentStatus { Undefined, Initiated, RepudiationRequested, Repudiated, Submitted } //used as emission status code filter in Process Emission data public enum EmissionUnitCode { OP, TS, PS } public enum SleisUserStatusType { //[Description("Undefined")] //Undefined, //[Description("Pending")] //Pending, [Description("Active")] Active, [Description("Locked")] Locked, [Description("Inactive")] Inactive, [Description("Deleted")] Deleted } public enum ReportStatus { [Description("Not Published")] NotPublished, [Description("Not Started")] NotStarted, [Description("In Process")] InProcess, [Description("Submitted")] Submitted, [Description("Being Amended")] BeingAmended, [Description("Under Review")] UnderReview, [Description("Completed")] Completed } public enum SleisUserTypeType { Undefined, Facility, Agency, System } public enum SleisViewType { Undefined, Public, Agency } [Flags] public enum AppUserRoleType { Undefined = 0, [Description("Viewer")] FacilityViewer = 2, [Description("Editor")] FacilityEditor = 4, [Description("Submitter")] FacilitySubmitter = 8, [Description("Administrator")] FacilityAdmin = 16, [Description("Viewer")] AgencyViewer = 32, [Description("Editor")] AgencyEditor = 64, [Description("Acceptor")] AgencyAcceptor = 128, [Description("Submitter")] AgencySubmitter = 256, [Description("Administrator")] AgencyAdmin = 512, Facility = FacilityViewer | FacilityEditor | FacilitySubmitter | FacilityAdmin, Agency = AgencyViewer | AgencyEditor | AgencyAcceptor | AgencySubmitter | AgencyAdmin } public enum CustomFieldEntityType { [Description("Undefined")] Undefined, [Description("Reporting Period")] ReportingPeriod, [Description("Unit Process")] UnitProcess, [Description("Emission Unit")] EmissionUnit, [Description("Control Device")] ControlDevice, [Description("Release Point")] ReleasePoint, [Description("Facility")] Facility, [Description("Process Emission")] ProcessEmission, [Description("Agency Facility")] AgencyFacility } public enum CustomFieldDataType { Undefined, Boolean, Numeric, String, List, Date } public enum CustomFieldDataStyleType { Undefined, Optional, Required, ReadOnly, Hidden } public enum EmissionsReportType { Facility, ReleasePoint, EmissionUnit } }