{"version":3,"sources":["scripts/app.js"],"names":["fZipcode","zip","toString","length","slice","fPhone","input","value","trim","replace","match","areaCode","number","country","substr","substring","NewAcctController","$rootScope","$state","$window","passwordStrength","confirmEmailChg","dataService","loginService","contactInfo","datesService","webSessionStorage","userAcctEmails","errorEmailNotification","protectURL","$log","validateEmail","emValidate","confirmEmail","vm","data","email","bReadyToSaveEmail","validatePW","password","confirmPW","sPasswordStrength","bReadyToSavePW","alert","validateUserName","un","userName","indexOf","bReadyToSaveUsername","saveNewPersonRecord","fn","firstName","toLowerCase","fName","toUpperCase","ln","lastName","lName","sRawDataString","info","peoSave","then","result","RESULTCODE","idx","RESULTREASON","iEntityID","Number","saveContactEmail","sEmailContent","error4","emailSendError","savePersonalEmail","saveUserAccount","pwExpires","s15mosFromToday","sSaveString","usersSave","len","iUserID","sDatabaseID","proSaveMain","sProID","saveProProcessRecord","sendNewUserAcctEmail","dStepExpires","s6mosFromToday","sDbToday","todayToDbString","proSaveProcess","proSaveInitData","proGetForm","defs","i","ITEMNAME","ITEMID","proSaveFormData","results","sendSelfInitUAEmail","login","loginReturn","SECUSERLOGIN","RESULT","secReturnReset","user","RETURNCODE","location","go","reload","USERENTITYID","sCurForm","this","bReadyToSave","imgMCBanner","image","getStoredData","sPWClass","sSaveSuccessMsg","cancelChanges","checkPWStrength","pwReturn","getPWStrength","strength","confirmReadyToSave","item","enterKeyHandler","$event","keyCode","saveNewAccount","NavBarController","headerService","$scope","modalService","version","lclURL","statsURL","minFinURL","appBarColor","headerIcon","getHeaderIcon","isCollapsed","loggedIn","myApps","sCustomerName","customer","name","$on","goHome","goToAbout","goToApp","app","bPasswordExpired","okAlert","sFn","sPath","goToChgPW","goToHelpDesk","logOff","logout","ModalController","$uibModalInstance","modType","title","alertMsg","$sce","sTitle","sAlertMsg","trustAsHtml","cancel","dismiss","LoginController","custData","appValidationService","setCustService","custDataDev","logInUser","sUsername","sPassword","sExp","PASSWORDEXPIRES","dPasswordExpires","Date","dToday","permission","validateAccess","updateSelCust","sDataSource","DatabaseID","j","push","DataSource","selConf","custDB","sMaintenanceMsg","angular","isDefined","libGetMaintenanceMsg","msg","SETTINGVALUE","fromDataSource","setDataSource","forgotPassword_clickHandler","sendForgottenPassword","onFocus","$broadcast","selectConference","setCustomer","validateUserLogin","HelpDeskController","helpDeskService","validatorService","bReadyToSubmit","iIssueID","sUserEmail","sProblem","sUserFullName","USERID","USEREMAIL","USERFULLNAME","helpHdInitiateIssue","ISSUEID","sError","confirmReadyToSubmit","emailIsValid","submitHD","helpHdSaveIssue","ConfSelController","Confs","helpLoadCustomers","DATABASEID","splice","unshift","CUSTOMERNAME","setStoredData","DATABASENAME","cmdContinue_clickHandler","setAppBarColor","CIPeoResultsController","$stateParams","arrUserChurch","UserChurchFNs","bHidePrimary","iPastorID","peopleResults","selEntityID","sFirstName","sLastName","sNoResults_msg","sEmail","peoGetByEmail","ENTITYID","sFirstname","peoGetForChurch","loadContactInfo","person","sPersonName","PERSONNAME","sPersonFullName","CIPeoFindController","getPeoResults","search","sMissingEmail_msg","sMissingNames_msg","searchForAPerson","clear","CIPeoDisplayController","Addresses","Emails","Phones","addrGetAll","STOPDATE","dStop","dNow","ADDR1","ADDR2","CITY","STATE","ZIP","phGetAll","PRIVACY","PHONENUMBER","emGetAll","EMAIL","CIChResultsController","churchResults","selChurchID","sChurchName","chLoadAll","church","ENTITYNAME","CIChFindController","getChResults","searchForAChurch","clearResults","CIChDisplayController","ChgPasswordController","confirmPWChg","oldPW","validatePassword","confirmPassword","newPW","saveNewEmail","sNewEmail","saveNewPassword","USERNAME","usersChangePassword","saveChanges","runBlock","$location","$http","searchObject","sRetCodeToDelete","ReturnCode","secReturnLogin","PASSWORD","conf","fromDatabaseID","$inject","module","run","store","sessionStorage","factory","sKey","getItem","sData","setItem","removeItem","isValid","filter","RegExp","phoneIsValid","phone","numOnlyPattern","valPhone","String","numOnlyPh","service","emailValidator","mcWebCFC","sUserName","sFrom","sReplyTo","returnURL","params","method","sEmailAddr","sSubject","post","dataSource","CustomerName","databaseID","referRefEmail","getEmailContent","sApplicant","sReferralUserName","sReferralName","sReturnCode","sRefURLLink","sProRefsURL","iStrength","reLowerCase","reUpperCase","reNumber","reSymbol","class","$uibModal","openOKAlert","open","animation","size","templateUrl","controller","bindToController","controllerAs","keyboard","backdrop","backdropClass","resolve","openResultAlert","sz","resultAlert","authServiceCFC","username","sApp","iMinutes","bFnOnly","setUserInfo","RESULTS","secDeleteReturnCode","retCode","secGetReturnCode","iMin","sParams","err","resetCode","iNewMinutes","setUserApplications","arrData","FN","ProRefApp","ProRef","SECGETRETURNCODE","USERGETCHURCHFUNCTIONS","sReturnType","id","sProb","UserID","sForm","sVersion","custName","alt","error1","sFormProc","retCodeKey","error2","curProID","Applicant","error3","iSaveKey","resultReason","calStrToDbDateStr","sCal","dCal","mm","getMonth","dd","getDate","sDbDate","getFullYear","currentYear","today","yr","get19thBirthDate","bDay","s19thBDay","dt","jsDateStrToCalendarStr","dtStr","sCalDate","jsDateStrToDbDateStr","s1yrFromToday","todayToCalString","sCalToday","proJsCFC","resetReturnCode","emailSendCustom","last","first","sIncludeLockedApps","bSearchFromBeginning","sFormName","sFormType","sCustomEmailText","usersGetOne","iPersonalEmailType","params1","emTypes","arrTypes","EMAILTYPE","EMAILTYPEID","sConfirmEmail","strEmail","sNewPW","sConfirmPW","strPW","notReadyToSave","sOldPW","str","apps","perm","dirEnterKey","attrs","$apply","$eval","event","preventDefault","directive","config","$httpProvider","defaults","headers","transformRequest","param","obj","fullSubName","subName","subValue","innerObj","query","Array","Object","isUndefined","encodeURIComponent","isObject","routerConfig","$stateProvider","$urlRouterProvider","state","url","parent","otherwise","constant","$templateCache","put"],"mappings":"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","file":"scripts/app-b7dc1f7475.js","sourcesContent":["(function() {\n\t'use strict';\n\n\tangular\n\t\t.module('mcweb', ['ui.bootstrap', 'ui.router', 'ngSanitize'])\n\t\t.run(runBlock);\n\t\t\n\tfunction runBlock($location, dataService, webSessionStorage, $state, headerService, $log,\n\t\tloginService, $http, $rootScope, custData, custDataDev, appValidationService,\n\t\tsetCustService, modalService, lclURL, minFinURL, protectURL, statsURL, $window) {\n\t\tvar sDatabaseID = \"\";\n\t\tvar sDataSource = \"\";\n\t\tvar searchObject = $location.search();\n\t\tvar sRetCodeToDelete = \"\";\n\n// searchObject.conf = \"NWTX-DEV\";\t\t//TESTING\t\t\n\n\t\tif (searchObject.ReturnCode) {\n\t\t\tsRetCodeToDelete = searchObject.ReturnCode; }\n\t\telse if (webSessionStorage.getStoredData('sReturnCode') != null) {\n\t\t\t/* if \"Refresh\" occurs, this allows login so as not to force\n\t\t\t\tuser to manually login again: */\n\t\t\tsRetCodeToDelete = webSessionStorage.getStoredData('sReturnCode');\n\t\t}\n\t\t\n\t\t//Login with ReturnCode ==> LoginService calls SecDeleteReturnCode immediately after login\n\t\tif (sRetCodeToDelete != \"\") {\n\t\t\tloginService.secReturnLogin(sRetCodeToDelete)\n\t\t\t.then(function (data) {\n\t\t\t\tif (data[0].DATABASEID != \"\") {\n\t\t\t\t\tsDataSource = data[0].DATABASEID;\n\t\t\t\t\tsetCustService.fromDataSource(sDataSource);\n\t\t\t\t\n\t\t\t\t\tif (data[0].USERID != \"\") {\t\n\t\t\t\t\t\tloginService.login(data[0].USERNAME, data[0].PASSWORD)\n\t\t\t\t\t\t.then(function(loginReturn) {\n\t\t\t\t\t\t\tif (loginReturn[0].SECUSERLOGIN[0].RESULT == \"Success\") {\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t/* Determine landing page... */\n\t\t\t\t\t\t\t\tvar permission = appValidationService.validateAccess();\n\t\t\t\t\t\t\t\tif (permission == \"Valid\") {\n\t\t\t\t\t\t\t\t\t$rootScope.sCurForm = 'Contact Information';\n\t\t\t\t\t\t\t\t\t$state.go('contactInfo');\n\t\t\t\t\t\t\t\t} else if (permission == \"MultApps\") {\n\t\t\t\t\t\t\t\t\t$state.go('selApp');\n\t\t\t\t\t\t\t\t} else if (permission != \"Denied\") { \n\t\t\t\t\t\t\t\t\tvar sPath = \"\";\n\t\t\t\t\t\t\t\t\tswitch(permission) {\n\t\t\t\t\t\t\t\t\t\tcase \"ChLeaders\": sPath = lclURL; break;\n\t\t\t\t\t\t\t\t\t\tcase \"MinFin\": sPath = minFinURL; break;\n\t\t\t\t\t\t\t\t\t\tcase \"ProRef\":\n\t\t\t\t\t\t\t\t\t\tcase \"LCAMgmt\": sPath = protectURL; break;\n\t\t\t\t\t\t\t\t\t\tcase \"Statistics\": sPath = statsURL; break;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (sPath != \"\") {\n\t\t\t\t\t\t\t\t\t\tloginService.secReturnReset(loginService.user.RETURNCODE, 1)\n\t\t\t\t\t\t\t\t\t\t.then(function(result) {\n\t\t\t\t\t\t\t\t\t\t\tif (result[0].RESULT == \"Success\") {\n\t\t\t\t\t\t\t\t\t\t\t\t$window.location.replace(sPath+\"?ReturnCode=\" +\n\t\t\t\t\t\t\t\t\t\t\t\t\tloginService.user.RETURNCODE);\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t$rootScope.sCurForm = 'Login';\n\t\t\t\t\t\t\t\t\t$state.go('login'); \n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\t\n\t\t\t\t\t\t});\n\t\t\t\t\t} else if (data[0].USERNAME == \"Expired\") {\n\t\t\t\t\t\tmodalService.okAlert(\"Expired\", \n\t\t\t\t\t\t\t\"Your session login has expired.

\" +\n\t\t\t\t\t\t\t\"Please log in again to continue.\");\n\t\t\t\t\t\t$state.go('login');\t\n\t\t\t\t\t}\n\t\t\t\t}\t\n\t\t\t});\n\t\t}\n\t\t\n\t\t// Login page with Conference identified:\n\t\telse {\n\t\t\tif (searchObject.conf) {\n\t\t\t\tsDatabaseID = searchObject.conf;\n\t\t\t\tsetCustService.fromDatabaseID(sDatabaseID);\n\t\t\t} else { \n\t\t\t\twebSessionStorage.setStoredData('sDataSource', \"HelpFalcon\");\n\t\t\t}\n\t\t}\n\t}\n\t\n})();\n\n(function () {\n 'use strict';\n \n angular\n .module('mcweb')\n .factory('webSessionStorage', webSessionStorage);\n \n function webSessionStorage($window) {\n var store = $window.sessionStorage;\n var factory = {};\n \n factory.getStoredData = function (sKey) {\n return store.getItem(sKey);\n };\n \n factory.setStoredData = function (sKey, sData) {\n if (sData) {\n store.setItem(sKey, sData);\n } \n else {\n store.removeItem(sKey);\n }\n };\n \n return factory;\n\t}\n \n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('validatorService', validatorService);\n\n\tvalidatorService.$inject = [];\t\n\n function validatorService() {\n\t\tvar service = {\n\t\t\temailIsValid: emailIsValid,\n\t\t\tphoneIsValid: phoneIsValid\n\t\t};\n\t\t\n\t\treturn service;\n\t\t\n\t\tfunction emailIsValid(sEmail) {\n\t\t\tvar isValid = false;\n\t\t\tvar filter = new RegExp(/^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/);\n\n\t\t\tif (sEmail.search(filter) == -1) {\n\t\t\t\treturn isValid = false;\n\t\t\t} else { isValid = true; }\n\t\t\t\n\t\t\treturn isValid;\n\t\t}\n\t\t\n\t\tfunction phoneIsValid(phone) {\n\t\t\tvar isValid = false;\n\t\t\tvar numOnlyPattern = /[^0-9]/g;\n\t\t\tvar valPhone = String(phone);\n\t\t\tvar numOnlyPh = valPhone.replace(numOnlyPattern,'');\n\t\t\t\n\t\t\tif (String(numOnlyPh).length == 10) { return true; }\n\t\t\t\n\t\t\treturn isValid;\n\t\t\n\t\t}\n\t\t\t\t\n\t}\n})();\t \n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('emailValidator', emailValidator);\n\n\tfunction emailValidator() {\n\t\tvar factory = {\n\t\t\tvalidateEmail: validateEmail\n\t\t};\n\t\t\n\t\treturn factory;\n\t\t\n\t\tfunction validateEmail(sEmail) {\n\t\t\tvar filter = new RegExp(/^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/);\n\t\t\t\t\n\t\t\t\tif (sEmail.search(filter) == -1) {\n\t\t\t\t\treturn false;\n\t\t\t\t} else {\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t}\t\t\n\t}\n\n})();\t \n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('userAcctEmails', userAcctEmails);\n\t\n\tuserAcctEmails.$inject = ['$http','webSessionStorage','$rootScope','protectURL','mcWebCFC'];\n\n\tfunction userAcctEmails($http, webSessionStorage, $rootScope, protectURL, mcWebCFC) {\n\t\tvar factory = {\n\t\t\tsendSelfInitUAEmail: sendSelfInitUAEmail\n\t\t};\n\t\t\n\t\treturn factory;\n\t\t\n\t\t\n\t\tfunction sendSelfInitUAEmail(sUserName, sEmail) {\n\t\t\tvar sDatabaseID = webSessionStorage.getStoredData(\"sDatabaseID\");\n\t\t\tvar sEmailContent = \"\";\n\t\t\tvar sFrom = \"\";\n\t\t\tvar sReplyTo = \"\";\n\t\t\tvar returnURL = protectURL + \"?conf=\" + sDatabaseID;\n\t\t\t\n\t\t\tsEmailContent = \"Your MissionConnect account has been initialized.

\" +\n\t\t\t\t\"For your records, the secure website address is:
\" +\n\t\t\t\t\"\" + returnURL + \n\t\t\t\t\"

\" +\n\t\t\t\t\"Your Username is: \" + sUserName + \"

\" +\n\t\t\t\t\"Please store your Username and Password in a safe place for future reference.

\" +\n\t\t\t\t\"If you forget your password, you can have it sent to this email address by \" +\n\t\t\t\t\"clicking the "Forgot Password?" button on the login page.

\" +\n\t\t\t\t\"Login tips:
\" +\n\t\t\t\t\"Type your username and password in. Do not use a copy and paste method, as that sometimes \" +\n\t\t\t\t\"includes additional data that does not display, but will cause it not to work.
\" +\n\t\t\t\t\"Both the username and password are case sensitive. Capital letters should be entered \" +\n\t\t\t\t\"as capitalized, etc.\";\n\t\t\t\t\n\t\t\tswitch (sDatabaseID) {\n\t\t\t\tcase \"MC\":\n\t\t\t\t\tsReplyTo = \"eromero@mccurdy.org\";\n\t\t\t\t\tsFrom = \"McCurdy Ministries Volunteer Screening <\" + sReplyTo + \">\";\n\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tsReplyTo = \"testing@greatspirit.com\";\n\t\t\t\t\tsFrom = \"MCWebApps Testing <\" + sReplyTo + \">\";\n\t\t\t\tbreak;\t\n\t\t\t}\t\n\t\t\t\n\t\t\tvar params = {\n\t\t\t\tmethod: \"EmailSendCustom\",\n\t\t\t\tsEmailAddr: sEmail,\n\t\t\t\tsFrom: sFrom,\n\t\t\t\tsReplyTo: sReplyTo,\n\t\t\t\tsSubject: \"Account Information\",\n\t\t\t\tsEmailContent: sEmailContent\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function (result) {\n\t\t\t\treturn result.data;\n\t\t\t});\n\t\t}\n\t\t\n\t}\n})();\n(function() {\n 'use strict';\n \n\tangular\n .module('mcweb')\n .factory('setCustService', setCustService);\n\n\tsetCustService.$inject = ['custData','custDataDev','webSessionStorage','headerService',\n\t\t'$rootScope'];\t\n\n function setCustService(custData, custDataDev, webSessionStorage, headerService,\n\t\t$rootScope) {\n\t\tvar service = {\n\t\t\tfromDataSource: fromDataSource,\n\t\t\tfromDatabaseID: fromDatabaseID\n\t\t};\n\t\treturn service;\n\t\t\t\t\n\t\tfunction fromDataSource(dataSource) {\n\t\t\twebSessionStorage.setStoredData('sDataSource', dataSource);\n\n\t\t\tif (dataSource.slice(-3) == \"Dev\" || dataSource == \"FalconVideos\") {\n\t\t\t\tfor (var i=0; i
A reference for \" +\n\t\t\t\t\t\tsApplicant + \" has been referred to you by \" +\n\t\t\t\t\t\t$rootScope.user.USERFULLNAME + \" for completion. This is to \" +\n\t\t\t\t\t\t\"fulfill a requirement in the process for Safe Sanctuaries \" +\n\t\t\t\t\t\t\"Certification.

\";\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\tsEmailContent += \"We now have a CONVENIENT NEW WAY for you to manage your \" +\n\t\t\t\t\t\t\"reference requests. You may now login to your Safe Sanctuaries \" +\n\t\t\t\t\t\t\"account online and complete all of your waiting pastoral reference \" +\n\t\t\t\t\t\t\"requests at once. No more losing the request email among all the \" +\n\t\t\t\t\t\t\"other emails in your Inbox. \" +\n\t\t\t\t\t\t\"This will also now work from your tablet, smart phone, or other \" +\n\t\t\t\t\t\t\"devices.\";\n\t\t\t\t\t\t\n\t\t\t\t\tif (sReferralUserName != \"\") {\n\t\t\t\t\t\tsEmailContent += \"Just click the link below from within that device. \" +\n\t\t\t\t\t\t\"Click now to give it a try!

\" +\n\t\t\t\t\t\t\"Your UserName is: \" + sReferralUserName +\n\t\t\t\t\t\t\"
\" + \n\t\t\t\t\t\t\tsProRefsURL + \"

OR\"; }\n\t\t\t\t\telse {\n\t\t\t\t\t\tsEmailContent += \"

However, it appears you do not have an \" +\n\t\t\t\t\t\t\t\"active MissionConnect (Safe Sanctuaries) online account, which \" +\n\t\t\t\t\t\t\t\"is required to use this feature. If you receive frequent \" +\n\t\t\t\t\t\t\t\"reference requests, and would like an account, please contact \" +\n\t\t\t\t\t\t\t\"the MO Safe Sanctuaries office.\";\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tsEmailContent += \"

If you prefer, and you are on a computer, you \" +\n\t\t\t\t\t\t\"may click the following link to go directly to the reference for \" +\n\t\t\t\t\t\tsApplicant + \". This link will not work from mobile devices.
\" +\n\t\t\t\t\t\t\"\" + sRefURLLink + \n\t\t\t\t\t\t\"

\" +\n\t\t\t\t\t\t\"Please try to complete this reference within 2 weeks.\"; \n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\t\n\t\t\t\treturn sEmailContent;\n\t\t}\n\t}\n\n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('passwordStrength', passwordStrength);\n\n\tfunction passwordStrength() {\n\t\tvar reLowerCase = new RegExp(/([a-z]+)/);\n\t\tvar reUpperCase = new RegExp(/([A-Z]+)/);\n\t\tvar reNumber = new RegExp(/([0-9]+)/);\n\t\tvar reSymbol = new RegExp(/(\\W+)/);\n\t\t\n\t\tvar factory = {\n\t\t\tgetPWStrength: getPWStrength\n\t\t};\n\t\t\n\t\treturn factory;\n\t\t\n\t\tfunction getPWStrength(sPassword) {\n\t\t\tvar iStrength = 0;\n\t\t\tvar sPasswordStrength = \"Too Short\";\n\t\t\tvar sPWClass = \"tooShort\";\n\t\t\tif (sPassword.length > 8) {\n\t\t\t\tiStrength++;\n\t\t\t\tif ((sPassword.search(reLowerCase) != -1) && \n\t\t\t\t\t(sPassword.search(reUpperCase) != -1)) {\n\t\t\t\t\t\tiStrength++;\n\t\t\t\t}\n\t\t\t\tif (sPassword.search(reNumber) != -1) {\n\t\t\t\t\tiStrength++;\n\t\t\t\t}\n\t\t\t\tif (sPassword.search(reSymbol) != -1) {\n\t\t\t\t\tiStrength++;\n\t\t\t\t}\n\t\t\t\tif (sPassword.length > 11) {\n\t\t\t\t\tiStrength++;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tswitch (iStrength) {\n\t\t\t\t\tcase 0: \n\t\t\t\t\t\tsPasswordStrength = \"Too Short\";\n\t\t\t\t\t\tsPWClass = \"tooShort\";\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase 1: \n\t\t\t\t\t\tsPasswordStrength = \"Very Weak\";\n\t\t\t\t\t\tsPWClass = \"veryWeak\";\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase 2: \n\t\t\t\t\t\tsPasswordStrength = \"Weak\";\n\t\t\t\t\t\tsPWClass = \"weak\";\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase 3: \n\t\t\t\t\t\tsPasswordStrength = \"Fair\";\n\t\t\t\t\t\tsPWClass = \"fair\";\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase 4: \n\t\t\t\t\t\tsPasswordStrength = \"Strong\";\n\t\t\t\t\t\tsPWClass = \"strong\";\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase 5: \n\t\t\t\t\t\tsPasswordStrength = \"Very Strong\";\n\t\t\t\t\t\tsPWClass = \"veryStrong\";\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\treturn {\n\t\t\t\tstrength: sPasswordStrength,\n\t\t\t\tclass: sPWClass\n\t\t\t}\n\t\t\t\n\t\t}\n\t}\n\t\n})();\t \n(function(){\n 'use strict';\n\n angular\n\t\t.module('mcweb')\n\t\t.factory('modalService', modalService);\n\n\tmodalService.$inject = ['$uibModal','$log'];\n\n\tfunction modalService($uibModal, $log) {\n$log.info(\"modalService\");\n\t\t\n\t\tvar factory = {\n okAlert: openOKAlert,\n resultAlert: openResultAlert\n\t\t};\n\t\treturn factory;\n\t\t\n\t\t//customize more if need larger...\n\t\tfunction openOKAlert(title, alertMsg) {\n\t\t\t$uibModal.open({\n\t\t\t\tanimation: true,\n\t\t\t\tsize: 'sm',\n\t\t\t\ttemplateUrl: 'app/modals/modAlert.html',\n\t\t\t\tcontroller: 'ModalController',\n\t\t\t\tbindToController: true,\n\t\t\t\tcontrollerAs: 'vmMod',\n\t\t\t\tkeyboard: true,\n\t\t\t\tbackdrop: 'static',\n\t\t\t\tbackdropClass: 'bottom:0;height:100%;margin:0;padding-bottom:0',\n\t\t\t\tresolve: {\n\t\t\t\t\tmodType: function() {\n\t\t\t\t\t\treturn \"OK\";\n\t\t\t\t\t},\n\t\t\t\t\ttitle: function() {\n\t\t\t\t\t\treturn title;\n\t\t\t\t\t},\n\t\t\t\t\talertMsg: function() {\n\t\t\t\t\t\treturn alertMsg;\n\t\t\t\t\t}\t\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction openResultAlert(sz,result) { //sz:\"sm\",\"lg\";\n\t\t\t$uibModal.open({\n\t\t\t\tanimation: true,\n\t\t\t\tsize: sz,\n\t\t\t\ttemplateUrl: 'app/modals/modAlert.html',\n\t\t\t\tcontroller: 'ModalController',\n\t\t\t\tbindToController: true,\n\t\t\t\tcontrollerAs: 'vmMod',\n\t\t\t\tkeyboard: true,\n\t\t\t\tbackdrop: true,\n\t\t\t\tbackdropClass: 'bottom:0;height:100%;margin:0;padding-bottom:0',\n\t\t\t\tresolve: {\n\t\t\t\t\ttitle: function() {\t\t\t\t\t\t\n\t\t\t\t\t\treturn result[0].RESULT;\n\t\t\t\t\t},\n\t\t\t\t\talertMsg: function() {\n\t\t\t\t\t\treturn result[0].RESULTREASON;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\n\t}\t\t\n})();\t\n(function(){\n\t'use strict';\n/**\n * Created by jacob on 6/17/14.\n * SecUserLoginFunctions consolidates SecUserLogin, SecGetReturnCode and UserGetChurchFunctions (which doesn’t apply to all apps, so probably should add a parameter to skip it when not needed)\n */\n\n\tangular\n\t\t.module('mcweb')\n\t\t.factory('loginService', loginService);\n\n\tloginService.$inject = ['$http','webSessionStorage','$rootScope','modalService',\n\t\t'authServiceCFC','mcWebCFC','custData','$state','$log'];\n\n\tfunction loginService($http, webSessionStorage, $rootScope, modalService,\n\t\tauthServiceCFC, mcWebCFC, custData, $state, $log) {\n\t\tvar sDataSource = \"\";\n\n\t\tvar factory = {\n\t\t\tuser: {\n\t\t\t\tUSERID: 0,\n\t\t\t\tloggedIn: false,\n\t\t\t\tRETURNCODE: \"\",\n\t\t\t\tUserChurchFNs: []\n\t\t\t},\n\t\t\tlogin: login,\n\t\t\tlogout: logout,\n\t\t\tsecDeleteReturnCode: secDeleteReturnCode,\n\t\t\tsecGetReturnCode: secGetReturnCode,\n\t\t\tsecReturnLogin: secReturnLogin,\n\t\t\tsecReturnReset: secReturnReset\n\t\t};\n\t\treturn factory;\n\t\t\n\t\t//Return ONLY Functions in UserGetChurchFunctions for MENU:\n\t\tfunction login(username, password) {\n\t\t\tsDataSource = webSessionStorage.getStoredData('sDataSource');\n\t\t\tvar params = {\n\t\t\t\tmethod : \"SecUserLoginFunctions\",\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tsUserName: username,\n\t\t\t\tsPassword: password,\n\t\t\t\tsApp: \"MCWebApps.040\",\n\t\t\t\tiMinutes: 30,\n\t\t\t\tsFn: \"all\",\n\t\t\t\tbFnOnly: 1\n\t\t\t};\n\t\t\treturn $http.post(authServiceCFC, params)\n\t\t\t.then(function(results) { $log.info(results)\n\t\t\t\tif(results.data[0].SECUSERLOGIN[0].RESULT == \"Success\"){\n\t\t\t\t\tsetUserInfo(results);\n\t\t\t\t}\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n\n\t\tfunction logout() {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"SecDeleteReturnCode\",\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tsReturnCode: factory.user.RETURNCODE\n\t\t\t};\n\t\t\treturn $http.post(authServiceCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\tif (results.data[0].RESULTS == 'Delete Successful') {\n\t\t\t\t\tfactory.user.RETURNCODE = \"\";\n\t\t\t\t}\n\t\t\t\tfactory.user.loggedIn = false;\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction secDeleteReturnCode(retCode) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"SecDeleteReturnCode\",\n\t\t\t\tsReturnCode: retCode\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n\t\t\n\t/* Used from NavBarCtrl to Get returnCode just to transfer to\n\t\tdifferent app... then SecUserLoginFunctions is run again from new\n\t\tapp to set a new ReturnCode to 30 minutes.\n\t\tiMin=1, sFn=[app to load] */\n\t\tfunction secGetReturnCode(iMin,sFn) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"SecGetReturnCode\",\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tiUserID: factory.user.USERID,\n\t\t\t\tsApp: \"MCWebApps\",\n\t\t\t\tiMinutes: iMin,\n\t\t\t\tsFn: sFn,\n\t\t\t\tsParams: \"\"\n\t\t\t};\n\t\t\treturn $http.post(authServiceCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\tif (results.data.length > 0) {\n\t\t\t\t\tfactory.user.RETURNCODE = results.data[0].RETURNCODE;\n\t\t\t\t}\n\t\t\t\treturn results.data\n\t\t\t});\n\t\t}\n\t\t\n\t/* UNABLE TO USE secReturnLogin from AuthService.cfc\n\t\tApp opened by passing permission from other app...\n\t\tStore DatabaseID & FN=$rootScope.goToApp to open.\n\t\tThen call regular login with USERNAME/PASSWORD.\n\t\t(USERNAME, DATABASEID(sDataSource), APP, FN, USERID, PASSWORD, PARAMS) */\t\n function secReturnLogin(sReturnCode) {\n var params = {\n method: \"SecReturnLogin\",\n sReturnCode: sReturnCode\n };\n return $http.post(mcWebCFC, params)\n .then(function (results) {\n\t\t\t\ttry {\n\t\t\t\t\tif (results.data[0].DATABASEID != \"\") {\n\t\t\t\t\t\tsDataSource = results.data[0].DATABASEID;\n\t\t\t\t\t}\n\t\t\t\t/* User gets logged in, and new ReturnCode created: */\t\n\t\t\t\t\tsecDeleteReturnCode(sReturnCode);\n\t\t\t\t}\n\t\t\t\tcatch (err) {\n\t\t\t\t//\"TypeError: Cannot read property 'USERID' of undefined\"\t\n\t\t\t\t\tmodalService.okAlert(\"Error\", err);\n\t\t\t\t}\t\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n \n /* CALLED When Apps used to extend ReturnCode another 30 minutes (default)\n\t before expiration. If expires, user has to Login again for NEW returnCode. */ \n function secReturnReset(resetCode, iMin) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"SecReturnReset\",\n\t\t\t\tiUserID: factory.user.USERID,\n\t\t\t\tsReturnCode: resetCode,\n\t\t\t\tiNewMinutes: iMin\n\t\t\t};\n return $http.post(mcWebCFC, params)\n .then(function (results) {\n if (results.RESULT == \"Expired\") {\n\t\t\t\t\tfactory.user.loggedIn = false;\n\t\t\t\t\tmodalService.okAlert(\"Expired\",\n\t\t\t\t\t\t\"Your session has expired.

\" +\n\t\t\t\t\t\t\"Please log in again to continue.\");\n\t\t\t\t\t$state.go('login', {reload:true});\t \n }\n return results.data;\n });\n\t\t}\n\t\t\n\t\t\n/* Internal Utilities: */ \n\t\n\t\tfunction setUserApplications(arrData) {\n\t\t\tvar myApps = [];\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tsetUserApplications(results.data[0].USERGETCHURCHFUNCTIONS);\n\t\t\t\tfactory.user.UserChurchFNs = (results.data[0].USERGETCHURCHFUNCTIONS);\n\t\t\t} else {\n\t\t\t\tfactory.user.UserChurchFNs = [];\n\t\t\t\t$rootScope.$broadcast('updateNav');\n\t\t\t}\n\t\t}\n\t\t\n\t}\n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('helpDeskService', helpDeskService);\n\n\thelpDeskService.$inject = ['$http','$sce','mcWebCFC','webSessionStorage','$rootScope',\n\t\t'version','loginService','modalService','$state'];\n\n\tfunction helpDeskService($http, $sce, mcWebCFC, webSessionStorage, $rootScope,\n\t\tversion, loginService, modalService, $state) {\n\t\tvar sDataSource = webSessionStorage.getStoredData('sDataSource');\n\t\t\n\t\tvar service = {\n\t\t\thelpHdInitiateIssue: helpHdInitiateIssue,\n\t\t\thelpHdSaveIssue: helpHdSaveIssue\n\t\t};\n\t\treturn service;\n\t\t\n\t\tfunction helpHdInitiateIssue() {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"HelpHdInitiateIssue\",\n\t\t\t\tsReturnType: \"json\"\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\treturn (results.data);\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction helpHdSaveIssue(id, name, email, sProb) {\n\t\t\tif (loginService.user.USERID > 0) {\n\t\t\t\tvar UserID = loginService.user.USERID;\n\t\t\t} else { UserID = -1 }\n\t\t\tvar params = {\n\t\t\t\tmethod: \"HelpHdSaveIssue\",\n\t\t\t\tiIssueID: id,\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tsApp: \"MCWebApps\",\n\t\t\t\tsForm: $rootScope.sCurForm,\n\t\t\t\tsVersion: version,\n\t\t\t\tiUserID: UserID,\n\t\t\t\tsUserFullName: name,\n\t\t\t\tsUserEmail: email,\n\t\t\t\tsDatabaseID: webSessionStorage.getStoredData('sDatabaseID'),\n\t\t\t\tsProblem: sProb\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\tif (results.data == \"true\") {\n\t\t\t\t\t$state.go($rootScope.sCurForm);\n\t\t\t\t\tmodalService.okAlert(\"Success\",\n\t\t\t\t\t\t\"Your Help Desk issue has been sent successfully.\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\t\t\t\n\t}\n\t\n})();\n\t\t\n\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('headerService', headerService);\n\t\t\n\theaderService.$inject = ['$rootScope'];\n\t\n\tfunction headerService($rootScope) {\n\t\tvar headerIcon = { \n\t\t\timage: \"assets/images/MCicon32.png\",\n\t\t\talt: \"MissionConnect\"};\n\t\t\n\t\tvar service = {\n\t\t\tcustomer: {name: \"MissionConnect\"},\n\t\t\tsetCustomer: setCustomer,\n\t\t\tgetHeaderIcon: getHeaderIcon\n\t\t};\n\t\t\t\n\t\treturn service;\n\t\t\n\t\tfunction setCustomer(custName) {\n\t\t\tservice.customer.name = custName;\n\t\t\tif (service.customer.name == \"MissionConnect\") {\n\t\t\t\theaderIcon = {\n\t\t\t\t\timage: \"assets/images/MCicon32.png\",\n\t\t\t\t\talt: \"MissionConnect\"\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\theaderIcon = {\n\t\t\t\t\timage: \"assets/images/crossflameRW_48px.png\",\n\t\t\t\t\talt: \"UMC Cross and Flame\"\n\t\t\t\t};\n\t\t\t}\n\t\t\t$rootScope.$broadcast('updateCustomer');\n\t\t}\n\t\t\t\t\n\t\tfunction getHeaderIcon() {\n\t\t\tswitch (service.customer.name) {\n\t\t\t\tcase \"MissionConnect\":\n\t\t\t\t\theaderIcon = {\n\t\t\t\t\t\timage: \"assets/images/MCicon32.png\",\n\t\t\t\t\t\talt: \"MissionConnect\"\n\t\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\theaderIcon = {\n\t\t\t\t\t\timage: \"assets/images/crossflameRW_48px.png\",\n\t\t\t\t\t\talt: \"UMC Cross and Flame\"\n\t\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\treturn headerIcon;\n\t\t}\n\t\t\n\t}\t\t\n})();\t \n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('errorEmailNotification', errorEmailNotification);\n\n\terrorEmailNotification.$inject = ['webSessionStorage','$rootScope','loginService'];\n\n\tfunction errorEmailNotification(webSessionStorage, $rootScope, loginService) {\n\t\tvar sDataSource = webSessionStorage.getStoredData(\"sDataSource\");\n\t\tvar sEmailContent = \"\";\n\t\t\n\t\tvar factory = {\n\t\t\terror1: error1,\n\t\t\terror2: error2,\n\t\t\terror3: error3,\n\t\t\terror4: error4\n\t\t};\n\t\treturn factory;\n\t\t\n\t\t\n\t\tfunction error1(sFormProc) {\n\t\t\tsEmailContent = \"Error in \" + sFormProc + \"()

\" +\n\t\t\t\t\"DataSource: \" + sDataSource + \"
\" +\n\t\t\t\t\"ReturnCode: \" + $rootScope.retCodeKey + \"
\" +\n\t\t\t\t\"User: \" + $rootScope.user.USERFULLNAME + \"
\" +\n\t\t\t\t\"UserID: \" + $rootScope.user.USERID;\n\t\t\treturn sEmailContent;\n\t\t}\n\t\t\n\t\tfunction error2(sFormProc) {\n\t\t\tsEmailContent = \"Error in \" + sFormProc + \"()

\" +\n\t\t\t\t\"DataSource: \" + sDataSource + \"
\" +\n\t\t\t\t\"ProID: \" + $rootScope.curProID + \"
\" +\n\t\t\t\t\"Applicant: \" + $rootScope.Applicant + \"
\" +\n\t\t\t\t\"User: \" + $rootScope.user.USERFULLNAME + \"
\" +\n\t\t\t\t\"UserID: \" + $rootScope.user.USERID;\n\t\t\treturn sEmailContent;\n\t\t}\n\t\t\n\t\tfunction error3(sFormProc, iSaveKey) {\n\t\t\tsEmailContent = \"Error in \" + sFormProc + \"()

\" +\n\t\t\t\t\"DataSource: \" + sDataSource + \"
\" +\n\t\t\t\t\"ProID: \" + $rootScope.curProID + \"
\" +\n\t\t\t\t\"Applicant: \" + $rootScope.Applicant + \"
\" +\n\t\t\t\t\"StepSaveKey: \" + String(iSaveKey) + \"
\" +\n\t\t\t\t\"User: \" + $rootScope.user.USERFULLNAME + \"
\" +\n\t\t\t\t\"UserID: \" + $rootScope.user.USERID;\n\t\t\treturn sEmailContent;\n\t\t}\n\t\t\n\t\tfunction error4(sFormProc, resultReason) {\n\t\t\tsEmailContent = \"Error in \" + sFormProc + \"()

\" +\n\t\t\t\t\"DataSource: \" + sDataSource + \"
\" +\n\t\t\t\t\"Error: \" + resultReason + \"
\" +\n\t\t\t\t\"UserID: \" + loginService.user.USERID;\n\t\t\treturn sEmailContent;\n\t\t}\n\t\t\n\t}\n\n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('emailValidator', emailValidator);\n\n\tfunction emailValidator() {\n\t\tvar factory = {\n\t\t\tisValid: isValid\n\t\t};\n\t\t\n\t\treturn factory;\n\t\t\n\t\tfunction isValid(sEmail) {\n\t\t\tvar filter = new RegExp(/^([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+$/);\n\t\t\t\t\n\t\t\t\tif (sEmail.search(filter) == -1) {\n\t\t\t\t\treturn false;\n\t\t\t\t} else {\n\t\t\t\t\treturn true;\n\t\t\t}\n\t\t}\t\t\n\t}\n\n})();\t \n(function () {\n\t'use strict';\n\n\tangular\n\t\t.module('mcweb')\n\t\t.factory('datesService', datesService);\n\n\tdatesService.$inject = [];\n\n\tfunction datesService() {\n\n\t\tvar service = {\n\t\t\tcalStrToDbDateStr: calStrToDbDateStr,\n\t\t\tcurrentYear: currentYear,\n\t\t\tget19thBirthDate: get19thBirthDate,\n\t\t\tjsDateStrToCalendarStr: jsDateStrToCalendarStr,\n\t\t\tjsDateStrToDbDateStr: jsDateStrToDbDateStr,\n\t\t\ts1yrFromToday: s1yrFromToday,\n\t\t\ts6mosFromToday: s6mosFromToday,\n\t\t\ts15mosFromToday: s15mosFromToday,\n\t\t\ttodayToCalString: todayToCalString,\n\t\t\ttodayToDbString: todayToDbString\n\t\t};\n\t\treturn service;\n\t\t\n\t\tfunction calStrToDbDateStr(sCal) {\n\t\t\tvar dCal = new Date(sCal);\n\t\t\tvar mm = dCal.getMonth()+1;\n\t\t\tif (mm < 10) { mm = \"0\" + String(mm); }\n\t\t\tvar dd = dCal.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\tvar sDbDate = String(dCal.getFullYear()) + \"- \" + mm + \"-\" + dd;\n\t\t\treturn sDbDate;\t\t\t// \"01/01/2017\" ==> \"2017-01-01\"\n\t\t}\n\n\t\tfunction currentYear() {\n\t\t\tvar today = new Date();\n\t\t\tvar yr = today.getFullYear();\n\t\t\treturn yr; //2017\t\n\t\t}\n\t\t\n\t\tfunction get19thBirthDate(bDay) { // 19th BirthDate as MM/DD/YYYY\n\t\t\tvar s19thBDay = \"\";\n\t\t\tvar dt = new Date(bDay);\n\t\t\tvar mm = dt.getMonth()+1;\n\t\t\tif (mm < 10) { mm = \"0\" + String(mm); }\n\t\t\tvar dd = dt.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\ts19thBDay = mm + \"/\" + dd + \"/\" + String(dt.getFullYear()+19);\n\t\t\treturn s19thBDay;\n\t\t}\n\n\t\tfunction jsDateStrToCalendarStr(dtStr) {\n\t\t\tvar sCalDate = \"\";\n\t\t\tvar dt = new Date(dtStr);\n\t\t\tvar mm = dt.getMonth()+1;\n\t\t\tif (mm < 10) { mm = \"0\" + String(mm); }\n\t\t\tvar dd = dt.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\tsCalDate = mm + \"/\" + dd + \"/\" + String(dt.getFullYear()) ;\n\t\t\treturn sCalDate; // \"August 03, 2017 17:50:20\" ==> \"08/03/2017\"\n\t\t}\n\n\t\tfunction jsDateStrToDbDateStr(dtStr) {\n\t\t\tvar sDbDate = \"\";\n\t\t\tvar dt = new Date(dtStr);\n\t\t\tvar mm = dt.getMonth()+1;\n\t\t\tvar dd = dt.getDate();\n\t\t\tsDbDate = dt.getFullYear() + \"-\" + mm +\t\"-\" + dd;\n\t\t\treturn sDbDate; // // \"August 03, 2017 17:50:20\" ==> \"2017-08-03\"\n\t\t}\n\t\t\n\t\tfunction s1yrFromToday() {\n\t\t\tvar today = new Date();\n\t\t\tvar mm = today.getMonth()+1;\n\t\t\tvar dd = today.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\tvar sCalDate = mm + \"/\" + dd + \"/\" + String(today.getFullYear()+1);\n\t\t\treturn sCalDate; // today in 2017 as \"MM/DD/2018\"\n\t\t}\n\t\t\n\t\tfunction s6mosFromToday() {\n\t\t\tvar today = new Date();\n\t\t\tvar mm = today.getMonth()+1;\n\t\t\tvar dd = today.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\tvar yr = today.getFullYear();\n\t\t\tvar sCalDate = \"\";\n\t\t\tif (mm < 7) { sCalDate = String(mm+6) + \"/\" + dd + \"/\" + yr; }\n\t\t\telse { sCalDate = String((mm+6)-12) + \"/\" + dd + \"/\" + String(yr+1); }\n\t\t\treturn sCalDate; // today= 7/1/2017 ==> \"01/01/2018\"\n\t\t}\n\t\t\n\t\tfunction s15mosFromToday() {\n\t\t\tvar today = new Date();\n\t\t\tvar mm = today.getMonth()+1;\n\t\t\tvar dd = today.getDate();\n\t\t\tif (dd < 10) { dd = \"0\" + String(dd); }\n\t\t\tvar yr = Number(today.getFullYear())+1;\n\t\t\tvar sCalDate = \"\";\n\t\t\tif (mm < 10) { sCalDate = String(mm+3) + \"/\" + dd + \"/\" + yr; }\n\t\t\telse { sCalDate = String((mm+3)-12) + \"/\" + dd + \"/\" + String(yr+1); }\n\t\t\treturn sCalDate; // today= 10/1/2017 ==> \"01/01/2019\"\n\t\t}\n\t\t\n\t\tfunction todayToCalString() {\n\t\t\tvar today = new Date();\n\t\t\tvar mm = today.getMonth()+1;\n\t\t\tvar dd = today.getDate();\n\t\t\tvar sCalToday = mm + \"/\" + dd + \"/\" + String(today.getFullYear()) ;\n\t\t\treturn sCalToday;\t// today as \"MM/DD/YYYY\"\n\t\t}\n\t\t\n\t\tfunction todayToDbString() {\n\t\t\tvar today = new Date();\n\t\t\tvar mm = today.getMonth()+1;\n\t\t\tvar dd = today.getDate();\n\t\t\tvar sDbToday = String(today.getFullYear()) + \"-\" + mm + \"-\" + dd;\n\t\t\treturn sDbToday;\t// today as \"YYYY-MM-DD\"\n\t\t}\n\n\t}\n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.factory('dataService', dataService);\n\n\tdataService.$inject = ['$http','$sce','webSessionStorage','mcWebCFC','proJsCFC','loginService'];\n\n\tfunction dataService($http, $sce, webSessionStorage, mcWebCFC, proJsCFC, loginService) {\n\t\tvar sDataSource = \"\";\n\t\t\n\t\tvar service = {\n\t\t\tsetDataSource: setDataSource,\n\t\t\taddrGetAll: addrGetAll,\n\t\t\tchLoadAll: chLoadAll,\n\t\t\temailSendCustom: emailSendCustom,\n\t\t\temailSendError: emailSendError,\n\t\t\temGetAll: emGetAll,\n\t\t\tlibGetMaintenanceMsg: libGetMaintenanceMsg,\n\t\t\tpeoGetByEmail: peoGetByEmail,\n\t\t\tpeoGetForChurch: peoGetForChurch,\n\t\t\tpeoSave: peoSave,\n\t\t\tphGetAll: phGetAll,\n\t\t\tproGetForm: proGetForm,\n\t\t\tproSaveFormData: proSaveFormData,\n\t\t\tproSaveMain: proSaveMain,\n\t\t\tproSaveProcess: proSaveProcess,\n\t\t\tsendForgottenPassword: sendForgottenPassword,\n\t\t\tusersChangePassword: usersChangePassword,\n\t\t\tusersGetOne: usersGetOne,\n\t\t\tusersSave: usersSave\n\t\t};\n\t\treturn service;\n\t\t\n\t\tfunction setDataSource() {\n\t\t\tsDataSource = webSessionStorage.getStoredData('sDataSource');\n\t\t}\n\t\t\n\t\tfunction addrGetAll(iEntityID) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"AddrGetAll\",\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tiEntityID: iEntityID\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction chLoadAll(sChurchName) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"ChLoadAll\",\n\t\t\t\tsDataSource: sDataSource,\n\t\t\t\tsChurchName: sChurchName\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function(results) {\n\t\t\t\tresetReturnCode();\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n\n\t\tfunction emailSendCustom(sEmailAddr, sFrom, sReplyTo, sSubject, sEmailContent) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"EmailSendCustom\",\n\t\t\t\tsEmailAddr: sEmailAddr,\n\t\t\t\tsFrom: sFrom,\n\t\t\t\tsReplyTo: sReplyTo,\n\t\t\t\tsSubject: sSubject,\n\t\t\t\tsEmailContent: sEmailContent\n\t\t\t};\n\t\t\treturn $http.post(mcWebCFC, params)\n\t\t\t.then(function (results) {\n\t\t\t\treturn results.data;\n\t\t\t});\n\t\t}\n\t\t\n\t\tfunction emailSendError(sEmailContent) {\n\t\t\tvar params = {\n\t\t\t\tmethod: \"EmailSendCustom\",\n\t\t\t\tsEmailAddr: \"errors@greatspirit.com\",\n\t\t\t\tsFrom: \"GSS Error-Notification 0) {\n\t\t\t\tfor (var i=0; i
Please contact your Conference \" +\n\t\t\t\t\t\"Administrator to request access.\");\n\t\t\t}\n\t\t\t\n\t\t\treturn perm; //Valid, Denied, MultApps, or an App FN.\t\n\t\t}\t\n\t}\n})();\n(function () {\n\t'use strict';\n \n\tangular\n\t\t.module('mcweb')\n\t\t.directive('dirEnterKey', dirEnterKey);\n\t\n\tfunction dirEnterKey($event) {\n\t\t\n\t\treturn function($scope, attrs) {\n\t\t\tvar keyCode = $event.keyCode;\n\t\t\tif (keyCode === 13) {\n\t\t\t\t$scope.$apply(function() {\n\t\t\t\t\t$scope.$eval(attrs.dirEnterKey);\n\t\t\t\t});\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t}\n\t}\n\t\n})();\t\n\n\n(function() {\n\t'use strict';\n\n\tangular\n\t\t.module('mcweb')\n\t\t.config(function($httpProvider) {\n\t\t\t$httpProvider.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=utf-8'; \n\n\t\t\t// Override $http service's default transformRequest \n\t\t\t$httpProvider.defaults.transformRequest = [function(data) { \n\t\t\t\t/* The workhorse; converts an object to x-www-form-urlencoded serialization. * @param {Object} obj * @return {String} */ \n\t\t\t\tvar param = function(obj) { \n\t\t\t\t\tvar query = ''; \n\t\t\t\t\tvar name, value, fullSubName, subName, subValue, innerObj, i; \n\t\t\t\t\tfor(name in obj) { \n\t\t\t\t\t\tvalue = obj[name]; \n\t\t\t\t\t\tif(value instanceof Array) { \n\t\t\t\t\t\t\tfor(i=0; i chgPWCtrl\n\t\t\tUSERID,\t\t\t\t\t==> dataService\n\t\t\tUSERFULLNAME,\t\t\t==> \n\t\t\tUSERENTITYID\t\t\t==> \n\t\t\tRETURNCODE\t\t\t\t==> \n\t\t\tRETURNKEY\n\t\t\tfirstName\t\t\t\t==> \n\t\t\tlastName\t\t\t\t==> \n\t\t\tloggedIn\n\t\t\tUserChurchFNs\t\t\t==> populated with USERGETCHURCHFUNCTIONS return\n\t\t};\n\n\t$rootScope\n\t\t.loggedIn\t\twhile successfully logged In.\n\t\t.myApps\t\t\t(navBarCtrl) to load Apps into MENU Secure Applications.\n\t\t.sCurForm\t\tlast form accessed, for HelpDesk assistance.\n\t\t.selEntityID;\tSelected person for view of ContactInfo. Stored to return as \n\t\t\t\t\t\t\tselected if 2 with same name in list.\n\t\t.\n\t\nCOLORS:\n\t#000\t\tblack\n\t#333\t\tlight black\n\t#555\t\tdark gray\n\t#f5f5f5\t\tlight gray for buttons\n\t#E8C944\t\tMC Gold 100%\n\t#6B9AAE\t\tMC Blue 50%\n\t#AEB9C6\t\tMC Blue 35%\t\n\t\n\tLOCAL PATH: cd Applications/ColdFusion9/wwwroot/Burt/Falcon/Web_TestSite/mcweb\n\tTESTING PATH: \n\t\n\tPrior to release:\n\t\t* index.module\n\t\t\t\n\t\t* index.constants\n\t\t\t\n\t\t* loginCtrl\n\t\t\t\n\t\t\t\n\t\t\t\n\tRelease Path: https://umcdata.net/MissionConnect/Public/MCWebApps/#/index.html opt:(?conf=MO)\t\t\n\n*/\t\nangular\n\t.module('mcweb')\n\t.filter('fZipcode', fZipcode);\n\t\nfunction fZipcode() {\n\treturn function (zip) {\n\t\tif (!zip) {\n\t\t\treturn zip;\n\t\t} else {\n\t\t\tif (zip.toString().length === 9) {\n\t\t\t\treturn zip.toString().slice(0,5) + \"-\" + zip.toString().slice(5);\n\t\t\t} else if (zip.toString().length === 5) {\n\t\t\t\treturn zip.toString();\n\t\t\t} else {\n\t\t\t\treturn zip;\n\t\t\t}\n\t\t}\n\t}\t\n}\nangular\n\t.module('mcweb')\n\t.filter('fPhone', fPhone);\n\n//Called directly from the view for display\n\t\nfunction fPhone() {\n\treturn function (input) {\n\t\tif (!input) {\n\t\t\treturn input;\n\t\t} else {\n\t\t\tvar value = input.toString().trim().replace(/^\\+/, '');\n\t\t\tif (value.match(/[^0-9]/)) {\n\t\t\t\treturn input;\n\t\t\t}\n\t\t\t\n\t\t\tvar country = 0;\n\t\t\tvar areaCode, number;\n\t\t\t\n\t\t\tswitch (value.length) {\n\t\t\t\tcase 10: // (###) ###-####\n\t\t\t\t\tcountry = 1;\n\t\t\t\t\tareaCode = value.substr(0,3);\n\t\t\t\t\tnumber = value.slice(3);\n\t\t\t\tbreak;\n\t\t\t\tcase 11: // Foreign\n\t\t\t\t\tcountry = value[0];\n\t\t\t\t\tareaCode = value.substring(1,4);\n\t\t\t\t\tnumber = value.slice(4);\n\t\t\t\tbreak;\n\t\t\t\tcase 12: // Foreign\n\t\t\t\t\tcountry = value.substring(0,3);\n\t\t\t\t\tareaCode = value.substring(3,5);\n\t\t\t\t\tnumber = value.slice(5);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\t\n\t\t\tif (country.value == 0) {\n\t\t\t\treturn input;\n\t\t\t} else {\n\t\t\t\tif (country == 1) {\n\t\t\t\t\tcountry = \"\";\n\t\t\t\t}\n\t\t\t\tnumber = number.substring(0,3) + \"-\" + number.slice(3);\n\n\t\t\t\treturn (country + \" (\" + areaCode + \") \" + number).trim();\n\t\t\t}\n\t\t}\n\t}\t\n}\nangular\n .module('mcweb')\n .controller('NewAcctController', NewAcctController);\n\nNewAcctController.$inject = ['$rootScope','$state', '$window', 'passwordStrength',\n\t'confirmEmailChg', 'dataService','loginService','contactInfo','datesService',\n\t'webSessionStorage','userAcctEmails','errorEmailNotification','protectURL','$log'];\t\n\nfunction NewAcctController($rootScope, $state, $window, passwordStrength,\n\tconfirmEmailChg, dataService, loginService, contactInfo, datesService, \n\twebSessionStorage, userAcctEmails, errorEmailNotification, protectURL, $log) {\n\tvar vm = this;\t//vmUA\n \n vm.bReadyToSave = 'false';\n vm.bReadyToSaveEmail = false;\n vm.bReadyToSavePW = false;\n vm.bReadyToSaveUsername = false;\n vm.imgMCBanner = { image: \"assets/images/Mc_Banner978x75.png\" };\n vm.sDatabaseID = webSessionStorage.getStoredData('sDatabaseID');\n vm.sPasswordStrength = \"Too Short\";\n vm.sProID = \"\";\t\t\t\t\t\t\t//ONLY used in McCurdy Protect Initialization with New Account.\n vm.sPWClass = \"tooShort\";\n vm.sSaveSuccessMsg = \"\";\n \n vm.data = {\n\t\tfirstName:\"\", lastName:\"\",\n\t\tpassword:\"\", confirmPW:\"\",\n\t\temail:\"\", confirmEmail:\"\",\n\t\tuserName:\"\"};\t\t\t\t\t\n\tvm.iEntityID = 0;\n\tvm.iUserID = 0;\n \n \n function validateEmail() {\n\t\tvar emValidate = confirmEmailChg.confirmEmail(vm.data.email, vm.data.confirmEmail);\n\t\tswitch (emValidate) {\n\t\t\tcase \"true\": \n\t\t\t\tvm.bReadyToSaveEmail = true;\n\t\t\tbreak;\n\t\t\tcase \"noMatch\":\n\t\t\t\tvm.bReadyToSaveEmail = false;\n\t\t\t\tvm.data.confirmEmail = \"\";\n\t\t\tbreak;\n\t\t\tcase \"false\": //returned when one or other is \"\"\n\t\t\t\tvm.bReadyToSaveEmail = false;\n\t\t\tbreak;\n\t\t}\n }\n \n function validatePW() {\n\t\tif (vm.data.password != \"\" && vm.data.confirmPW != \"\") {\n\t\t\tif (vm.data.password == vm.data.confirmPW) {\n\t\t\t\tif (vm.sPasswordStrength == \"Strong\" ||\n\t\t\t\t\tvm.sPasswordStrength == \"Very Strong\") {\n\t\t\t\t\tvm.bReadyToSavePW = true; \n\t\t\t\t} else {\n\t\t\t\t\tvm.bReadyToSavePW = false;\n\t\t\t\t\tvm.data.confirmPW = \"\";\n\t\t\t\t\t$window.alert(\"The password needs to meet the \\\"Strong\\\"\\n\" +\n\t\t\t\t\t\t\"or \\\"Very Strong\\\" validation before it can be saved.\");\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t$window.alert(\"The entered Password and the Confirmed \" +\n\t\t\t\t\t\"Password do not match. Please enter the confirmed password again.\");\n\t\t\t\tvm.data.confirmPW = \"\";\n\t\t\t\tvm.bReadyToSavePW = false;\n\t\t\t}\t\n\t\t} else { vm.bReadyToSavePW = false; }\n }\n \n function validateUserName() {\n\t\tvar un = vm.data.userName;\n\t\tif (un != \"\") {\n\t\t\tif (un.indexOf(\"'\") != -1) {\n\t\t\t\t$window.alert(\"The User Name cannot contain an apostrophe ('). Please remove \" +\n\t\t\t\t\t\"the apostrophe from the User Name entry.\");\n\t\t\t\tvm.bReadyToSaveUsername = false;\t\n\t\t\t} else if (un.indexOf(\"gss\") != -1) {\n\t\t\t\t$window.alert(\"The prefix of 'gss' is reserved for authorized Great Spirit Systems \" +\n\t\t\t\t\t\"staff only. Please use different characters for the first 3 positions in your \" +\n\t\t\t\t\t\"User Name.\");\n\t\t\t\tvm.bReadyToSaveUsername = false;\t\n\t\t\t} else if (un.length < 4) {\n\t\t\t\t$window.alert(\"The User Name must be at least 4 characters in length.\");\n\t\t\t\tvm.bReadyToSaveUsername = false;\n\t\t\t}\n\t\t\telse { vm.bReadyToSaveUsername = true; }\n\t\t} else { vm.bReadyToSaveUsername = false; }\t\n }\n\t\t\t\n function saveNewPersonRecord() {\n\t\tvar fn = vm.data.firstName.toLowerCase();\n\t\tvar fName = fn.substr(0,1).toUpperCase() + fn.slice(1);\n\t\tvm.data.firstName = fName;\n\t\tvar ln = vm.data.lastName.toLowerCase();\n\t\tvar lName = ln.substr(0,1).toUpperCase() + ln.slice(1);\n\t\tvm.data.lastName = lName;\n\t\tvar sRawDataString = \"MCWebApps || NewAccount_PR || -10 || I || FirstName==\" + fName +\n\t\t\t\" || LastName==\" + lName + \" || ClergyLay==L || AppName==WebProtect || Locked==-1 ^^ \";\n$log.info(\"savePeo:\",sRawDataString)\n\t\tdataService.peoSave(sRawDataString)\n\t\t.then(function (result) {\n\t\t\tif (result[0].RESULTCODE == \"Success\") {\n\t\t\t\tvar idx = result[0].RESULTREASON.indexOf(\"EntityID=\");\n\t\t\t\tvm.iEntityID = Number(result[0].RESULTREASON.slice(idx+9));\n\t\t\t\tsaveContactEmail();\n\t\t\t} else {\n\t\t\t\tvar sEmailContent = errorEmailNotification.error4(\"newAcctCtrl/peoSave\",\n\t\t\t\t\tresult[0].RESULTREASON);\n\t\t\t\tdataService.emailSendError(sEmailContent);\n\t\t\t}\n\t\t});\n }\n \n function saveContactEmail() { $log.info(\"SaveContactEmail...\")\n\t\tcontactInfo.savePersonalEmail(vm.iEntityID,vm.data.email)\n\t\t.then(function(result) {\n\t\t\tif (result[0].RESULTCODE == \"Success\") {\n\t\t\t\tsaveUserAccount();\n\t\t\t} else {\n\t\t\t\tvar sEmailContent = errorEmailNotification.error4(\"newAcctCtrl/saveContactEmail\",\n\t\t\t\t\tresult[0].RESULTREASON);\n\t\t\t\tdataService.emailSendError(sEmailContent);\n\t\t\t}\n\t\t});\n\t}\t\n\t\t\n\tfunction saveUserAccount() { $log.info(\"saveUserAccount...\")\t\n\t\tvar pwExpires = datesService.s15mosFromToday();\n\t\tvar sSaveString = \"MCWebApps || NewAccount_UA || -12 || I || UserName==\" +\n\t\t\tvm.data.userName + \" || UserFullName==\" + vm.data.firstName + \" \" + vm.data.lastName +\n\t\t\t\" || UserDesc==Public User || Active==1 || Admin==0 || Password==\" + vm.data.password +\n\t\t\t\" || PasswordExpires==\" + pwExpires + \" || PWStrength==\" + vm.sPasswordStrength + \n\t\t\t\" || UserEmail==\" + vm.data.email + \" || UserEntityID==\" + vm.iEntityID + \" || UserLevel==2 ^^ \";\n\t\t\n\t\tdataService.usersSave(sSaveString)\n\t\t.then(function(result) { $log.info(result)\n if (result[0].RESULTCODE == \"Success\") {\n\t\t\t\t//found bug of \".\" after UserID, so have to detect length,\n\t\t\t\t//and remove 1 character to get actual UserID.\n\t\t\t\tvar idx = result[0].RESULTREASON.indexOf(\"UserID=\");\n\t\t\t\tvar len = result[0].RESULTREASON.length;\n\t\t\t\tvm.iUserID = result[0].RESULTREASON.substring(idx+7,len-1);\n\n\t\t\t\tswitch (vm.sDatabaseID) {\n\t\t\t\t\tcase \"MC\": case \"MC-DEV\":\n\t\t\t\t\t\tvar sRawDataString = \"MCWebApps || NewAcct_ProMain || \" + vm.iUserID + \n\t\t\t\t\t\t\t\" || I || EntityID==\" + vm.iEntityID + \" || CertTypeID==4 ^^ \";\n$log.info(sRawDataString);\n\t\t\t\t\t\tdataService.proSaveMain(sRawDataString)\n\t\t\t\t\t\t.then(function(result) { $log.info(\"ProMain:\",result)\n\t\t\t\t\t\t\tif (result[0].RESULTCODE == \"Success\") {\n\t\t\t\t\t\t\t\tidx = result[0].RESULTREASON.indexOf(\"ProID=\");\n\t\t\t\t\t\t\t\tvm.sProID = result[0].RESULTREASON.slice(idx+6);\n\t\t\t\t\t\t\t\tsaveProProcessRecord();\t\n\t\t\t\t\t\t\t}\t\n\t\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsendNewUserAcctEmail();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (result[0].RESULTREASON.indexOf(\"UserName\") == 0 &&\n\t\t\t\t\tresult[0].RESULTREASON.indexOf(\"already in use\") > 0) {\n\t\t\t\t\tvm.data.userName = \"\";\n\t\t\t\t\t$window.alert(result[0].RESULTREASON + \n\t\t\t\t\t\t\"\\nPlease try entering another unique User Name.\");\n\t\t\t\t} else {\t\n\t\t\t\t\tvar sEmailContent = errorEmailNotification.error4(\"newAcctCtrl/saveUserAccount\",\n\t\t\t\t\t\tresult[0].RESULTREASON);\n\t\t\t\t\tdataService.emailSendError(sEmailContent);\n\t\t\t\t}\t\n\t\t\t}\n\t\t});\n }\n \n\t//McCurdy ONLY... as ONLY Protect app in use!\n\tfunction saveProProcessRecord() {\n\t\tvar dStepExpires = datesService.s6mosFromToday();\n\t\tvar sDbToday = datesService.todayToDbString();\n\n\t\tvar sRawDataString = \"MCWebApps || NewAcct_ProProcess || \" + vm.iUserID +\n\t\t\t\" || I || ProID==\" + vm.sProID + \" || StepID==400 || StepDate==\" + sDbToday + \n\t\t\t\" || StepNote==Initialized by \" + vm.data.firstName + \" \" + vm.data.lastName + \n\t\t\t\" ^^ I || ProID==\" + vm.sProID + \" || StepID==401 || StepExpires==\" + \n\t\t\tdStepExpires + \" ^^ \";\n\t\t\n\t\tdataService.proSaveProcess(sRawDataString)\n\t\t.then(function(result) { $log.info(\"ProProcess:,\",result)\n\t\t\tif(result[0].RESULTCODE == 'Success') {\n\t\t\t\tproSaveInitData();\n\t\t\t} else {\n\t\t\t\tvar sEmailContent = errorEmailNotification.error4(\"newAcctCtrl/saveProProcessRecord\",\n\t\t\t\t\tresult[0].RESULTREASON);\n\t\t\t\tdataService.emailSendError(sEmailContent);\n\t\t\t}\n\t\t});\n }\n\n\t//McCurdy ONLY... save initial Protect data...\n\tfunction proSaveInitData() {\n\t\tvar sRawDataString = \"MCWebApps || NewAcct_ProData || \" + vm.iUserID + \" || \";\n\n\t\tdataService.proGetForm(\"Application\")\n\t\t.then(function(defs) {\n\t\t\tif (defs.length > 0) {\n\t\t\t\tfor (var i=0; i\" +\n\t\t\t\t\"You must create a new password to continue.\");\n\t\t\t$state.go('chgPW');\t\n\t\t} else {\n\t\t\tvar sFn = \"\";\n\t\t\tvar sPath = \"\";\n\t\t\tswitch (app) {\n\t\t\t\tcase \"Contact Information\":\n\t\t\t\t\tsFn = \"ContactInfo\";\n\t\t\t\t\t$rootScope.sCurForm = \"Contact Information\";\n\t\t\t\tbreak;\n\t\t\t\tcase \"Local Church Leaders\":\n\t\t\t\t\tsFn = \"ChLeaders\";\n\t\t\t\t\tsPath = lclURL\n\t\t\t\tbreak;\n\t\t\t\tcase \"Ministry Financials\":\n\t\t\t\t\tsFn = \"MinFin\";\n\t\t\t\t\tsPath = minFinURL;\n\t\t\t\tbreak;\n\t\t\t\tcase \"Safe Sanctuary References\": \t//MO\n\t\t\t\tcase \"Volunteer References\":\t\t//NWTX\n\t\t\t\tcase \"Protect References\":\t\t\t//DEFAULT\n\t\t\t\t\tsFn = \"ProRef\";\n\t\t\t\t\tsPath = protectURL;\n\t\t\t\tbreak;\n\t\t\t\tcase \"Statistics\":\n\t\t\t\t\tsFn = \"Statistics\";\n\t\t\t\t\tsPath = statsURL;\n\t\t\t\tbreak;\n\t\t\t}\n\t\n\t\t/* Validate ReturnCode, resetting to expire in 1 minute...\n\t\t\tCall for NEW ReturnCode set to expire in 1 minute...\n\t\t\tAnd go to new app (sFn), which will login to new app and issue new ReturnCode\n\t\t\tfor session in new app. */\t\n\t\t\tswitch (sFn) {\n\t\t\t\tcase \"ContactInfo\": //local path\n\t\t\t\t\tloginService.secReturnReset(loginService.user.RETURNCODE, 30);\n\t\t\t\t\t$state.go('contactInfo');\t\t\t\t\t\t\t\t\n\t\t\t\tbreak;\n\t\t\t\tdefault: //external to this app:\n\t\t\t\t\tloginService.secReturnReset(loginService.user.RETURNCODE, 1)\n\t\t\t\t\t.then(function(result) {\n\t\t\t\t\t\tif (result[0].RESULT == \"Success\") {\n\t\t\t\t\t\t\t$window.location.replace(sPath + \"?ReturnCode=\" +\n\t\t\t\t\t\t\t\tloginService.user.RETURNCODE);\n\t\t\t\t\t\t} else { //Expired Session\n\t\t\t\t\t\t\tmodalService.okAlert(\"Expired\",\n\t\t\t\t\t\t\t\t\"Your session has expired. Please log in again, \" + \n\t\t\t\t\t\t\t\t\"then select the application desired.\");\n\t\t\t\t\t\t\t$state.go('login', {reload:true});\t\n\t\t\t\t\t\t}\t\t \n\t\t\t\t\t});\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\t\n\t}; //goToApp()\n\t\n\tvm.goToChgPW = function() {\n\t\t$rootScope.sCurForm = \"chgPW\";\n\t\t$state.go('chgPW');\n\t};\n\t\n\tvm.goToHelpDesk = function() {\n\t\t$state.go('helpDesk', {reload:true});\n\t};\n\t\n/** Deletes the active ReturnCode, removes all secure apps,\n\tsends user back to login screen, selected Customer retained: */\t\n\tvm.logOff = function() {\n\t\tvm.loggedIn = false;\n\t\tloginService.logout();\n\t\tloginService.user = {};\n\t\t$rootScope.myApps = [];\n\t\tvm.myApps = [];\n\t\t$state.go('login', {reload:true});\n\t};\n\t\n}\t \n\nangular\n .module('mcweb')\n .controller('ModalController', ModalController);\n\nModalController.$inject = ['$uibModalInstance','modType','title','alertMsg',\n\t'dataService','datesService','$sce'];\n\nfunction ModalController($uibModalInstance, modType, title, alertMsg, \n\tdataService, datesService, $sce) {\n var vm = this;\n \n vm.modType = modType;\t//OK, printOpts, etc...\n vm.sTitle = title;\n vm.sAlertMsg = $sce.trustAsHtml(alertMsg);\n\n\tvm.cancel = function() {\n\t\t$uibModalInstance.dismiss();\n\t};\n\n}\n\nangular\n\t.module('mcweb')\n\t.controller('LoginController', LoginController);\n\nLoginController.$inject = ['webSessionStorage','$rootScope','dataService','$state','$window',\n\t'loginService','modalService','custData','headerService','appValidationService',\n\t'setCustService','custDataDev','protectURL','statsURL','minFinURL','lclURL','$sce','$log'];\n\nfunction LoginController(webSessionStorage, $rootScope, dataService, $state, $window,\n\tloginService, modalService, custData, headerService, appValidationService, \n\tsetCustService, custDataDev, protectURL, statsURL, minFinURL, lclURL, $sce, $log) {\n\tvar vm = this; //as vmLI\n\t\n\tvm.custDB = custData;\n\tvm.selConf = custData[0];\n\tvm.sMaintenanceMsg = '';\n\tvm.sUsername = \"\";\n\tvm.sPassword = \"\";\n\t\n\n//INITIALIZE:\t\n\n\t$rootScope.sCurForm = 'Login';\n$log.info($rootScope.sCurForm);\n\t\n\t//If timed out, preset conference to stored conf:\n\tif (angular.isDefined(headerService.customer)==true) {\n\t\tif (headerService.customer.name != \"MissionConnect\") {\n\t\t\tupdateSelCust();\n\t\t}\n\t}\n\t\n\t/* Display MaintenanceMsg: */\n\tdataService.libGetMaintenanceMsg()\n\t.then(function(msg) { $log.info('msg:', msg);\n\t\tif (msg.length > 0) {\n\t\t\tvm.sMaintenanceMsg = $sce.trustAsHtml(msg[0].SETTINGVALUE);\n\t\t}\n\t});\n\n\t\n\tfunction logInUser() {\n\t\tloginService.login(vm.sUsername, vm.sPassword)\n\t\t.then(function(data) {\n\t\t\tif (data[0].SECUSERLOGIN[0].RESULT == \"Success\") {\n\t\t\t\tvar sExp = data[0].SECUSERLOGIN[0].PASSWORDEXPIRES;\n\t\t\t\tvar dPasswordExpires = new Date(sExp.substr(0,4),\n\t\t\t\t\tNumber(sExp.substr(5,2))-1, sExp.substr(8,2));\n\t\t\t\tvar dToday = new Date();\n\t\t\t\tif (dPasswordExpires > dToday) {\n\n\t\t\t\t/* Determine landing page... */\n\t\t\t\t\tvar permission = appValidationService.validateAccess();\n\t\t\t\t\tif (permission == \"Valid\") {\n\t\t\t\t\t\t$rootScope.sCurForm = 'Contact Information';\n\t\t\t\t\t\t$state.go('contactInfo');\n\t\t\t\t\t} else if (permission == \"MultApps\") {\n\t\t\t\t\t\t$state.go('selApp');\n\t\t\t\t\t} else if (permission != \"Denied\") { \n\t\t\t\t\t\tvar sPath = \"\";\n\t\t\t\t\t\tswitch(permission) {\n\t\t\t\t\t\t\tcase \"ChLeaders\": sPath = lclURL; break;\n\t\t\t\t\t\t\tcase \"MinFin\": sPath = minFinURL; break;\n\t\t\t\t\t\t\tcase \"ProRef\":\n\t\t\t\t\t\t\tcase \"LCAMgmt\": sPath = protectURL; break;\n\t\t\t\t\t\t\tcase \"Statistics\": sPath = statsURL; break;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (sPath != \"\") {\n\t\t\t\t\t\t\tloginService.secReturnReset(loginService.user.RETURNCODE, 1)\n\t\t\t\t\t\t\t.then(function(result) {\n\t\t\t\t\t\t\t\tif (result[0].RESULT == \"Success\") {\n\t\t\t\t\t\t\t\t\t$window.location.replace(sPath+\"?ReturnCode=\" +\n\t\t\t\t\t\t\t\t\t\tloginService.user.RETURNCODE);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$rootScope.sCurForm = 'Login';\n\t\t\t\t\t\t$state.go('login'); \n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t$rootScope.bPasswordExpired = true;\n\t\t\t\t\tmodalService.okAlert(\"Expired Password\",\n\t\t\t\t\t\t\"Your current password has expired.\\n\" +\n\t\t\t\t\t\t\"You must create a new password to continue.\");\n\t\t\t\t\t$state.go('chgPW');\n\t\t\t\t}\n\t\t\t} else if (data[0].SECUSERLOGIN[0].RESULT == \"Fail\") {\n\t\t\t\tmodalService.okAlert(\"Login Failed\",\n\t\t\t\t\t\"We were unable to log you in with the Username and Password provided.

\" +\n\t\t\t\t\t\"Please try again, or have your password sent to you by clicking the \\\"Forgot \" +\n\t\t\t\t\t\"Password\\\" button.\");\n\t\t\t}\n\t\t});\n\t}\n\t\n\tfunction updateSelCust() {\n\t\tvar sDataSource = webSessionStorage.getStoredData(\"sDataSource\");\n\t\tif (sDataSource.slice(-3) == \"Dev\") {\n\t\t\tfor (var i=0; i -1) {\n\t\t\t\tbreak; }\n\t\t\t\telse if (i == custData.length-1) {\n\t\t\t\t\tfor (var j=0; jYour password will be emailed to the Email address listed \" +\n\t\t\t\t\"on your account.

\" +\n\t\t\t\t\"If you do not receive your password within 10-15 minutes, please contact your \" +\n\t\t\t\t\"MissionConnect Administrator to verify that your account email address is correct.\");\n\t\t} else {\n\t\t\tdataService.sendForgottenPassword(vm.sUsername)\n\t\t\t.then(function(data) { \n\t\t\t\tswitch (data) {\n\t\t\t\t\tcase \"No User Account\":\n\t\t\t\t\t\tmodalService.okAlert(\"Account Not Found\", \n\t\t\t\t\t\t\t\"There is no user account with that Username.

\" +\n\t\t\t\t\t\t\t\"Please be sure you entered it correctly. The Username is \" +\n\t\t\t\t\t\t\t\"Case-Sensitive. Otherwise, contact your MissionConnect \" +\n\t\t\t\t\t\t\t\"Administrator to verify the Username you are using is correct.\");\n\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Completed\":\n\t\t\t\t\t\tmodalService.okAlert(\"Password Sent\", \n\t\t\t\t\t\t\t\"Your password has been sent.\\n\\n\" +\n\t\t\t\t\t\t\t\"Check your Email Inbox for the email with Subject:
\" +\n\t\t\t\t\t\t\t\"\\\"Your MissionConnect Login Information\\\".

\" +\n\t\t\t\t\t\t\t\"If the email does not arrive within 10-15 minutes, be sure \" +\n\t\t\t\t\t\t\t\"to also check your spam and junk folders.\");\n\t\t\t\t\tbreak;\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\n//Close MENU:\n\tvm.onFocus = function() {\n\t\t$rootScope.$broadcast('closeMenu');\n\t};\n\n\n/* When selected Customer changes, headerService is called to \"set\"\n\tnew Customer icon & name, which in turn calls to update the \n\tNavBarCtrl to reflect the change. */\t\n\tvm.selectConference = function() {\n\t\tif (vm.selConf.DataSource != \"\") {\n\t\t\tsetCustService.fromDataSource(vm.selConf.DataSource);\n\t\t\tdataService.setDataSource();\n\t\t} else {\n\t\t\theaderService.setCustomer(\"MissionConnect\");\n\t\t}\n\t};\n\t\n\tvm.validateUserLogin = function() {\n\t\tif (vm.selConf.DataSource != \"\") {\n\t\t\tif (vm.sUsername.trim() != \"\" && vm.sPassword.trim() != \"\") {\n\t\t\t\tlogInUser();\n\t\t\t} else {\n\t\t\t\tmodalService.okAlert(\"Missing Entry\", \n\t\t\t\t\t\"Please enter your Username and Password to Log \" +\n\t\t\t\t\t\"In to your account.\");\n\t\t\t}\n\t\t} else {\n\t\t\tmodalService.okAlert(\"Missing Entry\", \n\t\t\t\t\"Please make a selection from the \" +\n\t\t\t\t\"Conference droplist before logging in.\");\t\n\t\t}\t\n\t};\n\t\t\n}\nangular\n .module('mcweb')\n .controller('HelpDeskController', HelpDeskController);\n\nHelpDeskController.$inject = ['helpDeskService','$state','loginService','dataService',\n\t'validatorService','modalService'];\t\n\nfunction HelpDeskController(helpDeskService, $state, loginService, dataService,\n\tvalidatorService, modalService) {\n\tvar vm = this;\t//vmHD\n\t\n\tvm.bReadyToSubmit;\n\tvm.iIssueID = 0;\n\tvm.sUserEmail = \"\";\n\tvm.sProblem = \"\";\n\tvm.sUserFullName = \"\";\n\t\n\tif (loginService.user.USERID > 0) {\n\t\tvm.sUserEmail = loginService.user.USEREMAIL;\n\t\tvm.sUserFullName = loginService.user.USERFULLNAME;\n\t}\n\t\n\thelpDeskService.helpHdInitiateIssue()\n\t.then(function(data) {\n\t\tif (data[0].ISSUEID > 0) {\n\t\t\tvm.iIssueID = data[0].ISSUEID;\n\t\t} else {\n\t\t\tvar sError = \"There was an Error retrieving the Help Desk \" +\n\t\t\t\t\"IssueID for UserID: \" + loginService.user.USERID + \", \" +\n\t\t\t\tloginService.user.USERFULLNAME + \"

Reporting issue: \" +\n\t\t\t\tvm.sProblem;\n\t\t\tdataService.emailSendError(sError);\n\t\t}\t\t\n\t});\n\t\t\n\t\t\n/* Externally Called Functions: */\n\n\tvm.confirmReadyToSubmit = function() {\n\t\tif (vm.sUserFullName != \"\" && vm.sUserEmail != \"\" &&\n\t\t\tvm.sProblem != \"\") {\n\t\t\tif (validatorService.emailIsValid(vm.sUserEmail) == true) {\n\t\t\t\tvm.bReadyToSubmit = \"true\"; }\n\t\t\telse {\n\t\t\t\tvm.bReadyToSubmit = \"false\";\n\t\t\t\tmodalService.okAlert(\"Invalid Entry\",\n\t\t\t\t\t\"The email entered is not a valid email address.

\" +\n\t\t\t\t\t\"Please enter a valid email address, then click Submit.\");\t\t\n\t\t\t}\t\n\t\t} else { vm.bReadyToSubmit = \"false\"; }\n\t};\n\t\n\tvm.submitHD = function() {\n\t\tif (vm.bReadyToSubmit == \"true\") {\n\t\t\tif (vm.iIssueID > 0) {\n\t\t\t\thelpDeskService.helpHdSaveIssue(vm.iIssueID, vm.sUserFullName,\n\t\t\t\t\tvm.sUserEmail, vm.sProblem);\n\t\t\t}\n\t\t} else if (vm.sUserFullName == \"\") {\n\t\t\tmodalService.okAlert(\"Missing Data\", \n\t\t\t\t\"Please enter your Name before Submitting \" +\n\t\t\t\t\"the Help Desk issue.\");\n\t\t} else if (vm.sUserEmail == \"\") {\n\t\t\tmodalService.okAlert(\"Missing Data\", \n\t\t\t\t\"Please enter your Email Address before \" +\n\t\t\t\t\"Submitting the Help Desk issue.\");\n\n\t\t} else if (vm.sProblem == \"\") {\n\t\t\tmodalService.okAlert(\"Missing Data\", \n\t\t\t\t\"Please describe the issue you are experiencing \" +\n\t\t\t\t\"before Submitting the Help Desk issue.\");\t\t\n\t\t}\n\t};\t\n\t\n}\nangular\t\t\n\t.module('mcweb')\n\t.controller('ConfSelController', ConfSelController);\n\nConfSelController.$inject = ['dataService', '$window', '$state', 'headerService', 'webSessionStorage','$rootScope'];\n\t\nfunction ConfSelController(dataService, $window, $state, headerService, webSessionStorage,\n\t$rootScope) {\n\tvar vm = this;\n\t\n\tvm.Confs = [];\n\tvm.selConf = {};\n\t\n\tdataService.helpLoadCustomers()\n\t.then(function(data) {\n\t\tif (data.length > 0) {\n\t\t\tfor (var i=0; i -1) {\n\t\t\t\t\tdata.splice(i, 1);\n\t\t\t\t\ti--; \n\t\t\t\t} else\n*/\n\t\t\t\tif (data[i].DATABASEID == 'Demo' ||\n\t\t\t\t\tdata[i].DATABASEID == 'KSE' ||\n\t\t\t\t\tdata[i].DATABASEID == 'KSW' ||\n\t\t\t\t\tdata[i].DATABASEID == 'MC' ||\n\t\t\t\t\tdata[i].DATABASEID == 'NIL' ||\n\t\t\t\t\tdata[i].DATABASEID == 'RIO' ||\n\t\t\t\t\tdata[i].DATABASEID == 'VID') {\n\t\t\t\t\tdata.splice(i, 1);\n\t\t\t\t\ti--; \n\t\t\t\t}\n\t\t\t}\n\t\t\tvm.Confs = data;\n\t\t\tvm.Confs.unshift({\n\t\t\t\tDATABASEID: \"\",\n\t\t\t\tCUSTOMERNAME: ''\n\t\t\t});\n\t\t\tvm.selConf = vm.Confs[0];\t\t\t\t\t\n\t\t}\n\t});\n\n\t\n/* Calls from View: */\n\tvm.selectConference = function() {\n\t\t$rootScope.sDatabaseID = vm.selConf.DATABASEID;\n\t\theaderService.setCustomer(vm.selConf.DATABASEID, vm.selConf.CUSTOMERNAME)\n\t\twebSessionStorage.setStoredData('sDataSource', vm.selConf.DATABASENAME);\n\t\twebSessionStorage.setStoredData('sDatabaseID', vm.selConf.DATABASEID);\n\t\tdataService.setDataSource();\n\t};\n\t\n\tvm.cmdContinue_clickHandler = function() {\n\t\tif (vm.selConf.DATABASEID == \"\") {\n\t\t\t$window.alert(\"You must first make a selection from the \\n\" +\n\t\t\t\t\t\t\t\"Conference droplist before proceeding.\"); \n\t\t} else {\n\t\t\theaderService.setAppBarColor('Center');\n\t\t\t$rootScope.sCurForm = 'contactInfo';\n\t\t\t$state.go('contactInfo');\n\t\t}\t\n\t};\n\t\n\tvm.enterKeyHandler = function($event) {\n\t\tif ($event.keyCode === 13) {\n\t\t\theaderService.setAppBarColor('Center');\n\t\t\t$rootScope.sCurForm = 'contactInfo';\n\t\t\t$state.go('contactInfo');\n\t\t}\n\t};\n\t\n}\nangular\n .module('mcweb')\n .controller('CIPeoResultsController', CIPeoResultsController);\n\nCIPeoResultsController.$inject = ['$stateParams','dataService','$state','$rootScope',\n\t'$scope','modalService','loginService'];\n\nfunction CIPeoResultsController($stateParams, dataService, $state, $rootScope,\n\t$scope, modalService, loginService) {\n var vm = this;\n\t\n\tvm.arrUserChurch = loginService.user.UserChurchFNs;\n\tvm.bHidePrimary = false;\t\t//indicates to hide PrimaryChurch field from Display -- not in return\n\tvm.iPastorID = loginService.user.USERENTITYID;\n\tvm.peopleResults = [];\n\tvm.selEntityID = 0;\n\tvm.sFirstName = $stateParams.sFirstName;\n\tvm.sLastName = $stateParams.sLastName;\n\tvm.sNoResults_msg = \"No Results Found for the entered criteria.\";\t\t\t\t\t\t \n\t\n\t$rootScope.sCurForm = 'CI: People Results';\n\t\n\tif ($stateParams.sEmail != \"\") {\n\t\tvm.bHidePrimary = true;\n\t\tdataService.peoGetByEmail($stateParams.sEmail)\n\t\t.then(function(data) {\n\t\t\tif (data.length > 0) {\n\t\t\t\tif ($rootScope.selEntityID > 0) {\n\t\t\t\t\tfor (var i=0; i 0) {\n\t\t\t\t\tif ($rootScope.selEntityID > 0) {\n\t\t\t\t\t\tfor (var i=0; i 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Addresses = data;\n\t\t\t} else {\n\t\t\t\tvm.Addresses.push = {ADDR1:\"No Address Available\",\n\t\t\t\t\tADDR2:\"\",CITY:\"\",STATE:\"\",ZIP:\"\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Addresses.push = {ADDR1:\"No Address Available\",\n\t\t\t\tADDR2:\"\",CITY:\"\",STATE:\"\",ZIP:\"\"};\n\t\t}\n\t\t\n\t});\n\n\tdataService.phGetAll($rootScope.selEntityID)\n\t.then(function(data) {\n\t\tif (data.length > 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Phones = data;\n\t\t\t} else {\n\t\t\t\tvm.Phones.push = {PHONENUMBER:\"No Phones Available\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Phones.push = {PHONENUMBER:\"No Phones Available\"};\n\t\t}\t\n\t});\n\t\n\tdataService.emGetAll($rootScope.selEntityID)\n\t.then(function(data) {\n\t\tif (data.length > 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Emails = data;\n\t\t\t} else {\n\t\t\t\tvm.Emails.push = {EMAIL:\"No Emails Available\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Emails.push = {EMAIL:\"No Emails Available\"};\n\t\t}\n\t});\n\n}\n\nangular\n .module('mcweb')\n .controller('CIChResultsController', CIChResultsController);\n\nCIChResultsController.$inject = ['$stateParams', 'dataService', '$state', '$rootScope',\n\t'$scope','modalService'];\n\nfunction CIChResultsController($stateParams, dataService, $state, $rootScope,\n\t$scope, modalService) {\n var vm = this;\n\n\tvm.churchResults = [];\n\tvm.selChurchID = 0;\n\tvm.sNoResults_msg = \"No Results Found for the entered criteria.\";\t\t\t\t\t\t \n\n\t$rootScope.sCurForm = \"CI: Church Results\";\n\t\n\tif ($stateParams.sChurchName != \"\") {\n\t\tdataService.chLoadAll($stateParams.sChurchName)\t\t\n\t\t.then(function(data) {\n\t\t\tif (data.length > 0) {\n\t\t\t\tif ($rootScope.selChurchID > 0) {\n\t\t\t\t\tfor (var i=0; i 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Addresses = data;\n\t\t\t} else {\n\t\t\t\tvm.Addresses.push = {ADDR1:\"No Address Available\",\n\t\t\t\t\tADDR2:\"\",CITY:\"\",STATE:\"\",ZIP:\"\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Addresses.push = {ADDR1:\"No Address Available\",\n\t\t\t\tADDR2:\"\",CITY:\"\",STATE:\"\",ZIP:\"\"};\n\t\t}\n\t\t\n\t});\n\n\tdataService.phGetAll($rootScope.selChurchID)\n\t.then(function(data) {\n\t\tif (data.length > 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Phones = data;\n\t\t\t} else {\n\t\t\t\tvm.Phones.push = {PHONENUMBER:\"No Phones Available\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Phones.push = {PHONENUMBER:\"No Phones Available\"};\n\t\t}\t\n\t});\n\t\n\tdataService.emGetAll($rootScope.selChurchID)\n\t.then(function(data) {\n\t\tif (data.length > 0) {\n\t\t\t//remove Past:\n\t\t\tfor (var i=0; i 0) {\n\t\t\t\tvm.Emails = data;\n\t\t\t} else {\n\t\t\t\tvm.Emails.push = {EMAIL:\"No Emails Available\"};\t\n\t\t\t}\n\t\t} else {\n\t\t\tvm.Emails.push = {EMAIL:\"No Emails Available\"};\n\t\t}\n\t});\n\n}\t\n\nangular\n .module('mcweb')\n .controller('ChgPasswordController', ChgPasswordController);\n\nChgPasswordController.$inject = ['$rootScope','$state', 'passwordStrength',\n\t'validatorService', 'confirmPWChg', 'dataService','loginService','modalService','appValidationService'];\n\nfunction ChgPasswordController($rootScope, $state, passwordStrength,\n\tvalidatorService, confirmPWChg, dataService, loginService, modalService, appValidationService) {\n\tvar vm = this;\t//vmCP\n \n vm.bReadyToSave = \"false\";\n vm.bReadyToSavePW = false;\n vm.bReadyToSaveEmail = false;\n vm.sPasswordStrength = \"Too Short\";\n vm.sPWClass = \"tooShort\";\n vm.sUserEmail = loginService.user.USEREMAIL;\n \n vm.data = { oldPW:\"\",\n\t\tnewPW:\"\", confirmPW:\"\",\n\t\temail:\"\", confirmEmail:\"\"\t\n\t};\n\t\n\t$rootScope.sCurForm = \"Change Password/Email\";\n \n\tfunction validateEmail() {\n\t\tvar emValidate = confirmPWChg.confirmEmail(vm.data.email, vm.data.confirmEmail);\n\t\tswitch (emValidate) {\n\t\t\tcase \"true\": \n\t\t\t\tif (validatorService.emailIsValid(vm.data.email) == true) {\n\t\t\t\t\tvm.bReadyToSaveEmail = true; }\n\t\t\t\telse {\n\t\t\t\t\tvm.bReadyToSaveEmail = false;\n\t\t\t\t\tvm.data.confirmEmail = \"\";\n\t\t\t\t\tmodalService.okAlert(\"Invalid Email Address\", \n\t\t\t\t\t\t\"The email entered is not a valid email address.

\" +\n\t\t\t\t\t\t\"Please enter a valid email address.\");\n\t\t\t\t}\n\t\t\tbreak;\n\t\t\tcase \"false\": \n\t\t\t\t//returned when email or confirmEmail is \"\"\n\t\t\t\tvm.bReadyToSaveEmail = false;\n\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tmodalService.okAlert(\"\", emValidate);\n\t\t\tbreak;\n\t\t}\n\t}\n\t\n\tfunction validatePW() {\n\t\tif (vm.data.oldPW != \"\") {\n\t\t\tvar validatePassword = confirmPWChg.confirmPassword(vm.data.newPW, vm.data.confirmPW);\n\t\t\tswitch (validatePassword) {\n\t\t\t\tcase \"true\": \n\t\t\t\t\tif (vm.sPasswordStrength == \"Strong\" ||\n\t\t\t\t\t\tvm.sPasswordStrength == \"Very Strong\") {\n\t\t\t\t\t\t\tvm.bReadyToSavePW = true; \n\t\t\t\t\t} else {\n\t\t\t\t\t\tvm.bReadyToSavePW = false;\n\t\t\t\t\t\tvm.data.confirmPW = \"\";\n\t\t\t\t\t\tmodalService.okAlert(\"Password Strength\", \n\t\t\t\t\t\t\t\"The password needs to meet the \\\"Strong\\\" \" +\n\t\t\t\t\t\t\t\"or \\\"Very Strong\\\" validation before it can be saved.\");\n\t\t\t\t\t}\n\t\t\t\tbreak;\t\t\n\t\t\t\tcase \"false\":\n\t\t\t\t\tvm.bReadyToSavePW = false;\n\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tvm.bReadyToSavePW = false;\n\t\t\t\t\tvm.data.confirmPW = \"\";\n\t\t\t\t\tmodalService.okAlert(\"Password Validation\", validatePassword);\n\t\t\t\tbreak;\n\t\t\t}\t\t\n\t\t}\n\t}\n \n //Already logged in before updating Email or Password:\n function saveNewEmail() {\n\t\tvar sSaveString = \"MCWebApps || chgPW || \" + loginService.user.USERID + \n\t\t\t\" || U || UserID==\" + loginService.user.USERID + \n\t\t\t\" || UserEmail==\" + vm.data.email + \" ^^ \";\n\t\t\t\n\t\tdataService.usersSave(sSaveString)\n\t\t.then(function(data) {\n if (data[0].RESULTCODE == \"Success\") {\n\t\t\t\tvar sSaveSuccessMsg = \"Your email has been updated successfully!
\";\n\t\t\t\tif (vm.bReadyToSavePW != true) {\n\t\t\t\t\tmodalService.okAlert(\"Save Successful\", sSaveSuccessMsg);\n\n\t\t\t\t\tif (!$rootScope.bPasswordExpired) {\n\t\t\t\t\t\tif (appValidationService.validateAccess() == \"Valid\") {\t\n\t\t\t\t\t\t\t$rootScope.sCurForm = 'Contact Information';\n\t\t\t\t\t\t\t$state.go('contactInfo');\n\t\t\t\t\t\t} else { \n\t\t\t\t\t\t\t$rootScope.sCurForm = 'Login';\n\t\t\t\t\t\t\t$state.go('login'); \n\t\t\t\t\t\t}\n\t\t\t\t\t} else { \n\t\t\t\t\t\tloginService.user.USEREMAIL = vm.sNewEmail;\n\t\t\t\t\t\t$state.reload();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t//also saving new Password:\n\t\t\t\t\tsaveNewPassword(sSaveSuccessMsg);\t\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tmodalService.okAlert(\"Save Failed\", data[0].RESULTCODE);\n\t\t\t}\n\t\t});\n }\n \n\tfunction saveNewPassword(msg) {\n\t\tvar sSaveString = \"MCWebApps || chgPW || \" + loginService.user.USERID +\n\t\t\t\" || U || UserID==\" + loginService.user.USERID + \" || UserName==\" +\n\t\t\tloginService.user.USERNAME + \" || OldPassword==\" + vm.data.oldPW +\n\t\t\t\" || NewPassword==\" + vm.data.newPW + \" || PWStrength==\" + \n\t\t\tvm.sPasswordStrength + \" ^^ \";\n\n\t\tdataService.usersChangePassword(sSaveString)\n\t\t.then(function(data) {\n\t\t\tif (data[0].RESULTCODE == \"Success\") {\n\t\t\t\t$rootScope.bPasswordExpired = false;\n\t\t\t\tmodalService.okAlert(\"Save Successful\", \n\t\t\t\t\t\"Your password has been updated successfully!\");\n\n\t\t\t\t//No need to store updated Password. \n\t\t\t\tif (appValidationService.validateAccess() == \"Valid\") {\n\t\t\t\t\t$rootScope.sCurForm = 'Contact Information';\n\t\t\t\t\t$state.go('contactInfo');\n\t\t\t\t} else { \n\t\t\t\t\t$rootScope.sCurForm = 'Login';\n\t\t\t\t\t$state.go('login'); \n\t\t\t\t}\t\n\t\t\t} else {\n\t\t\t\t$state.reload();\n\t\t\t\tmodalService.okAlert(\"Save Failed\", msg + data[0].RESULTREASON);\n\t\t\t}\n\t\t});\t\n }\n \n/* Externally Called Functions: */\n\n vm.cancelChanges = function() {\n\t\tif ($rootScope.bPasswordExpired) {\n\t\t\t$state.reload();\n\t\t\tmodalService.okAlert(\"Expired\",\n\t\t\t\t\"Your password is expired, and must be updated before you may \" +\n\t\t\t\t\"use the application.\");\n\t\t} else {\n\t\t\t//Return to Landing page for app:\n\t\t\t$rootScope.sCurForm = 'Contact Information';\n\t\t\t$state.go('contactInfo');\n\t\t}\n\t};\n \n vm.checkPWStrength = function() {\n\t\tvar pwReturn = passwordStrength.getPWStrength(vm.data.newPW);\n\t\tvm.sPasswordStrength = pwReturn.strength;\n\t\tvm.sPWClass = pwReturn.class;\n\t}; \n\n vm.confirmReadyToSave = function(item) {\n\t\tswitch (item) {\n\t\t\tcase \"email\":\n\t\t\t\tvalidateEmail();\t\n\t\t\tbreak;\n\t\t\tcase \"pw\":\n\t\t\t\tvalidatePW();\n\t\t\tbreak;\n\t\t}\n\t\t//May be updating PW, Email or both...\t\t\n\t\tif (vm.bReadyToSavePW == true) {\n\t\t\tif ((vm.data.email==\"\" && vm.data.confirmEmail==\"\") ||\n\t\t\t\tvm.bReadyToSaveEmail == true) {\n\t\t\t\tvm.bReadyToSave = 'true'; \n\t\t\t} else { vm.bReadyToSave = 'false'; }\n\t\t} else if (vm.bReadyToSaveEmail == true &&\n\t\t\tvm.data.newPW == \"\" && vm.data.confirmPW == \"\") {\n\t\t\t\tvm.bReadyToSave = 'true';\n\t\t} else { vm.bReadyToSave = 'false'; }\n\t};\n\t\n\tvm.enterKeyHandler = function($event) {\n\t\tif ($event.keyCode === 13) {\n\t\t\tif (vm.bReadyToSave == \"true\") {\n\t\t\t\tif (vm.bReadyToSaveEmail == true) {\n\t\t\t\t\tsaveNewEmail();\n\t\t\t\t} else if (vm.bReadyToSavePW == true) {\n\t\t\t\t\tsaveNewPassword(\"\");\n\t\t\t\t}\t\n\t\t\t}\t\n\t\t} \n\t};\n\n vm.saveChanges = function() {\n\t\tif (vm.bReadyToSave == \"true\") {\n\t\t\tif (vm.bReadyToSaveEmail == true) {\n\t\t\t\tsaveNewEmail();\n\t\t\t} else if (vm.bReadyToSavePW == true) {\n\t\t\t\tsaveNewPassword(\"\");\n\t\t\t}\t\n\t\t} else if (vm.data.newPW != \"\" && vm.data.confirmPW != \"\") {\n\t\t\tvalidatePW();\n\t\t} else if (vm.data.email != \"\" && vm.data.confirmEmail != \"\") {\n\t\t\tvalidateEmail();\n\t\t} else { \n\t\t\tmodalService.okAlert(\"Oops!\", \n\t\t\t\t\"We did not find any data changes to Save.\"); \n\t\t}\n };\n \n}\n(function() {\n\t'use strict';\n\n\tangular\n\t\t.module('mcweb')\n\t\t.config(routerConfig);\n\n\tfunction routerConfig($stateProvider, $urlRouterProvider) {\n\t\t$stateProvider\n\t\t.state('index', {\n\t\t\turl: '/index.html',\n\t\t\ttemplateUrl: 'app/views/login.html',\n\t\t\tcontroller: 'LoginController',\n\t\t\tcontrollerAs: 'vmLI'\n\t\t})\n\t\t.state('login', {\n\t\t\turl: '/login',\n\t\t\ttemplateUrl: 'app/views/login.html',\n\t\t\tcontroller: 'LoginController',\n\t\t\tcontrollerAs: 'vmLI'\n\t\t})\n\t\t.state('about', {\n\t\t\turl: '/about',\n\t\t\ttemplateUrl: 'app/views/about.html'\n\t\t})\n\t\t.state('chgPW', {\n\t\t\turl: '/chgPW',\n\t\t\ttemplateUrl: 'app/views/chgPW.html',\n\t\t\tcontroller: 'ChgPasswordController',\n\t\t\tcontrollerAs: 'vmCP'\n\t\t})\n\t\t.state('helpDesk', {\n\t\t\turl: '/helpDesk',\n\t\t\ttemplateUrl: 'app/views/helpDesk.html',\n\t\t\tcontroller: 'HelpDeskController',\n\t\t\tcontrollerAs: 'vmHD'\n\t\t})\n\t\t.state('selApp', {\n\t\t\turl: '/selApp',\n\t\t\ttemplateUrl: 'app/views/appSelect.html'\n\t\t})\n\t\t.state('contactInfo', {\n\t\t\turl: '/contactInfo',\n\t\t\ttemplateUrl: 'app/views/contactInfo.html'\n\t\t})\n\t\t\t.state('peoFind', {\n\t\t\t\tparent: 'contactInfo',\n\t\t\t\ttemplateUrl: 'app/partials/ciPeoFind.html',\n\t\t\t\tcontroller: 'CIPeoFindController',\n\t\t\t\tcontrollerAs: 'vmCIP'\n\t\t\t})\n\t\t\t\t.state('peoResults', {\n\t\t\t\t\tparent: 'peoFind',\n\t\t\t\t\ttemplateUrl: 'app/partials/ciPeoResults.html',\n\t\t\t\t\tcontroller: 'CIPeoResultsController',\n\t\t\t\t\tcontrollerAs: 'vmCIPR',\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tsLastName: \"\", sFirstName: \"\",\n\t\t\t\t\t\tsEmail:\"\"\n\t\t\t\t\t}\t\n\t\t\t\t})\n\t\t\t\t.state('peoDisplay', {\n\t\t\t\t\tparent: 'peoFind',\n\t\t\t\t\ttemplateUrl: 'app/partials/ciPeoDisplay.html',\n\t\t\t\t\tcontroller: 'CIPeoDisplayController',\n\t\t\t\t\tcontrollerAs: 'vmCIPD',\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tsPersonFullName: \"\"\n\t\t\t\t\t}\t\t\n\t\t\t\t})\n\t\t\t\n\t\t\t.state('chFind', {\n\t\t\t\tparent: 'contactInfo',\n\t\t\t\ttemplateUrl: 'app/partials/ciChFind.html',\n\t\t\t\tcontroller: 'CIChFindController',\n\t\t\t\tcontrollerAs: 'vmCIC'\n\t\t\t})\n\t\t\t\t.state('chResults', {\n\t\t\t\t\tparent: 'chFind',\n\t\t\t\t\ttemplateUrl: 'app/partials/ciChResults.html',\n\t\t\t\t\tcontroller: 'CIChResultsController',\n\t\t\t\t\tcontrollerAs: 'vmCICR',\n\t\t\t\t\tparams: { sChurchName: \"\" }\t\t\n\t\t\t\t})\n\t\t\t\t.state('chDisplay', {\n\t\t\t\t\tparent: 'chFind',\n\t\t\t\t\ttemplateUrl: 'app/partials/ciChDisplay.html',\n\t\t\t\t\tcontroller: 'CIChDisplayController',\n\t\t\t\t\tcontrollerAs: 'vmCICD',\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tsChurchName: \"\"\n\t\t\t\t\t}\t\t\n\t\t\t\t});\n\t\t\t\t\n\t\t$urlRouterProvider.otherwise('/index.html');\n\t}\n\n})();\n\n(function() {\n\t'use strict';\n\n\tangular\n\t\t.module('mcweb')\n//TEST*/.constant('version', '1.000.033')\n/*LIVE*/.constant('version', '1.000.043')\n\t\t.constant('authServiceCFC', 'https://umcdata.net/Falcon/libCFCs/AuthService.cfc')\n\t\t.constant('mcWebCFC', 'https://umcdata.net/Falcon/libCFCs/MC_Web.cfc')\n\t\t.constant('proJsCFC', 'https://umcdata.net/Falcon/libCFCs/Protect_JS.cfc')\n\t\t.constant('helpDeskCFC', 'https://umcdata.net/Falcon/libCFCs/HelpDesk.cfc')\n//\t\t.constant('testCFC', 'https://umcdata.net/Falcon/libCFCs/Testing.cfc')\n\t\t.constant('lclURL', 'https://umcdata.net/MissionConnect/Public/MCWebApps/LCLeaders/#/index.html')\n\t\t.constant('mcWebAppsURL', 'https://umcdata.net/MissionConnect/Public/MCWebApps/#/index.html')\n\t\t.constant('minFinURL', 'https://umcdata.net/MissionConnect/Public/RcvWeb/#/login')\n\t\t.constant('protectURL', 'https://umcdata.net/MissionConnect/Public/MCWebApps/Protect/#/index.html')\n\t\t.constant('statsURL', 'https://umcdata.net/MissionConnect/Public/MCWebApps/Statistics/#/index.html')\n\t\t.constant('vancoPay', 'https://umcdata.net/MissionConnect/Public/VancoPay/#/index.html')\n\t\t.constant('custData', [\n\t\t\t{\n\t\t\t\t\"DataSource\":\"\",\n\t\t\t\t\"DatabaseID\":\"GSS\",\n\t\t\t\t\"CustomerName\":\"\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconArk\",\n\t\t\t\t\"DatabaseID\":\"AR\",\n\t\t\t\t\"CustomerName\":\"Arkansas Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconDemo\",\n\t\t\t\t\"DatabaseID\":\"Demo\",\n\t\t\t\t\"CustomerName\":\"Demo Database\"\n\t\t\t},\n\t\t\t//EOH\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconKy\",\n\t\t\t\t\"DatabaseID\":\"KY\",\n\t\t\t\t\"CustomerName\":\"Kentucky Annual Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconLa\",\n\t\t\t\t\"DatabaseID\":\"LA\",\n\t\t\t\t\"CustomerName\":\"Louisiana Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconMc\",\n\t\t\t\t\"DatabaseID\":\"MC\",\n\t\t\t\t\"CustomerName\":\"McCurdy Ministries\",\n\t\t\t\t\"ProRef\": \"Protect References\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconMem\",\n\t\t\t\t\"DatabaseID\":\"MEM\",\n\t\t\t\t\"CustomerName\":\"Memphis Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconMo\",\n\t\t\t\t\"DatabaseID\":\"MO\",\n\t\t\t\t\"CustomerName\":\"Missouri Conference\",\n\t\t\t\t\"ProRef\":\"Safe Sanctuary References\"\n\t\t\t},\n\t\t\t//MN,FalconMinn\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconNm\",\n\t\t\t\t\"DatabaseID\":\"NM\",\n\t\t\t\t\"CustomerName\":\"New Mexico Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconNwtx\",\n\t\t\t\t\"DatabaseID\":\"NWTX\",\n\t\t\t\t\"CustomerName\":\"Northwest Texas Conference\",\n\t\t\t\t\"ProRef\":\"Volunteer References\"\n\t\t\t},\n\t\t\t//PR\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconRm\",\n\t\t\t\t\"DatabaseID\":\"RM\",\n\t\t\t\t\"CustomerName\":\"Rocky Mountain Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconSwtx\",\n\t\t\t\t\"DatabaseID\":\"SWTX\",\n\t\t\t\t\"CustomerName\":\"Rio Texas Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconSg\",\n\t\t\t\t\"DatabaseID\":\"SGA\",\n\t\t\t\t\"CustomerName\":\"South Georgia Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconTenn\",\n\t\t\t\t\"DatabaseID\":\"TN\",\n\t\t\t\t\"CustomerName\":\"Tennessee Conference\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconUny\",\n\t\t\t\t\"DatabaseID\":\"UNY\",\n\t\t\t\t\"CustomerName\":\"Upper New York Conference\"\n\t\t\t},\n\t\t\t//VID,FalconVideos\n\t\t\t//WI,FalconWi\n\t\t\t//WOH,FalconWoh\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconYw\",\n\t\t\t\t\"DatabaseID\":\"YW\",\n\t\t\t\t\"CustomerName\":\"Mountain Sky Conference\"\n\t\t\t}\n\t\t])\n\t\t.constant('custDataDev',[\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconArkDev\",\n\t\t\t\t\"DatabaseID\":\"AR-DEV\",\n\t\t\t\t\"CustomerName\":\"Arkansas Conference (AR-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconKyDev\",\n\t\t\t\t\"DatabaseID\":\"KY-DEV\",\n\t\t\t\t\"CustomerName\":\"Kentucky Annual Conference (KY-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconLaDev\",\n\t\t\t\t\"DatabaseID\":\"LA-DEV\",\n\t\t\t\t\"CustomerName\":\"Louisiana Conference (LA-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconMcDev\",\n\t\t\t\t\"DatabaseID\":\"MC-DEV\",\n\t\t\t\t\"CustomerName\":\"McCurdy Ministries (MC-DEV)\",\n\t\t\t\t\"ProRef\": \"Protect References\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconMemDev\",\n\t\t\t\t\"DatabaseID\":\"MEM-DEV\",\n\t\t\t\t\"CustomerName\":\"Memphis Conference (MEM-DEV)\"\n\t\t\t},\n\t\t\t{\t\n\t\t\t\t\"DataSource\":\"FalconMoDev\",\n\t\t\t\t\"DatabaseID\":\"MO-DEV\",\n\t\t\t\t\"CustomerName\":\"Missouri Conference (MO-DEV)\",\n\t\t\t\t\"ProRef\":\"Safe Sanctuary References\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconNmDev\",\n\t\t\t\t\"DatabaseID\":\"NM-DEV\",\n\t\t\t\t\"CustomerName\":\"New Mexico Conference (NM-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconNwtxDev\",\n\t\t\t\t\"DatabaseID\":\"NWTX-DEV\",\n\t\t\t\t\"CustomerName\":\"NWTX Conference (NWTX-DEV)\",\n\t\t\t\t\"ProRef\":\"Volunteer References\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconSwtxDev\",\n\t\t\t\t\"DatabaseID\":\"SWTX-DEV\",\n\t\t\t\t\"CustomerName\":\"Rio Texas Conference (SWTX-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconSgDev\",\n\t\t\t\t\"DatabaseID\":\"SGA-DEV\",\n\t\t\t\t\"CustomerName\":\"South Georgia Conference (SGA-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconTennDev\",\n\t\t\t\t\"DatabaseID\":\"TN-DEV\",\n\t\t\t\t\"CustomerName\":\"Tennessee Conference (TN-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconUnyDev\",\n\t\t\t\t\"DatabaseID\":\"UNY-DEV\",\n\t\t\t\t\"CustomerName\":\"Upper New York Conference (UNY-DEV)\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"DataSource\":\"FalconVideos\",\n\t\t\t\t\"DatabaseID\":\"VID\",\n\t\t\t\t\"CustomerName\":\"Demo Conference\",\n\t\t\t\t\"ProRef\":\"Safe Sanctuary References\"\n\t\t\t}\n\t\t]);\n\n})();\n\nangular.module(\"mcweb\").run([\"$templateCache\", function($templateCache) {$templateCache.put(\"app/modals/modAlert.html\",\"
\");\n$templateCache.put(\"app/partials/ciChDisplay.html\",\"

{{ vmCICD.sChurchName}}

Address
{{ addr.ADDRTYPE }}:
{{ addr.ADDR1 }}
{{ addr.ADDR2 }}
{{ addr.CITY }}, {{ addr.STATE }}   {{ addr.ZIP | fZipcode }}
Phone
{{ ph.PHONETYPE }}:   {{ ph.PHONENUMBER | fPhone }}
Extension: {{ ph.EXTENSION }}
EMail
{{ em.EMAILTYPE }}:
{{ em.EMAIL }}
\");\n$templateCache.put(\"app/partials/ciChFind.html\",\"
\");\n$templateCache.put(\"app/partials/ciChResults.html\",\"
Click on a name to load the Contact
Information, or return to Search.
Church Search Results:
{{ church.ENTITYNAME }}
\");\n$templateCache.put(\"app/partials/ciPeoDisplay.html\",\"

{{ vmCIPD.sPersonFullName}}

Address
{{ addr.ADDRTYPE }}:
{{ addr.ADDR1 }}
{{ addr.ADDR2 }}
{{ addr.CITY }}, {{ addr.STATE }}   {{ addr.ZIP | fZipcode }}
Phone
{{ ph.PHONETYPE }}:   {{ ph.PHONENUMBER | fPhone }}
Extension: {{ ph.EXTENSION }}
EMail
{{ em.EMAILTYPE }}:
{{ em.EMAIL }}
\");\n$templateCache.put(\"app/partials/ciPeoFind.html\",\"
\");\n$templateCache.put(\"app/partials/ciPeoResults.html\",\"
0\\\">
Click on a name to load the Contact
Information, or return to Search.
Person Search Results:
{{ person.PERSONNAME }}
    [{{person.PRIMARYCHURCH}}]
\");\n$templateCache.put(\"app/views/about.html\",\"
This software was created by
Great Spirit Systems Corporation™
specializing in software development to
meet the unique needs of religious
organizations since 1994.

Inquiries should be addressed to
al@greatspirit.com
\");\n$templateCache.put(\"app/views/appSelect.html\",\"
You are logged in!

You have access to more than one
MissionConnect application.
Select the desired application from
the MENU button in the upper-right corner.
\");\n$templateCache.put(\"app/views/chgPW.html\",\"
Tips for making the password stronger:
  • Make it longer
  • Use both UPPER & lower case
  • Add a number
  • Add a special character: #*@!&,^%
[New Password must not match old]
Password Strength is    {{ vmCP.sPasswordStrength }}  
Current User Account Email: {{ vmCP.sUserEmail }}
\");\n$templateCache.put(\"app/views/churchLdrshp.html\",\"

Church Leadership App goes here!

\");\n$templateCache.put(\"app/views/confSel.html\",\"

Select your Conference:

\");\n$templateCache.put(\"app/views/contactInfo.html\",\"

Contact Information

\");\n$templateCache.put(\"app/views/helpDesk.html\",\"
MissionConnect: Help Desk
\");\n$templateCache.put(\"app/views/login.html\",\"

Select your Conference:


Login to access Secure Applications
Username & Password are Case Sensitive!
[For security reasons, the application will log off if idle for 30 minutes.]
\");\n$templateCache.put(\"app/views/newAcct.html\",\"
\\\"McCurdy

Create a New Account

Tips for making the password stronger:
  • Make it longer
  • Use both UPPER & lower case
  • Add a number
  • Add a special character: #*@!&,^%
Password Strength is:     {{ vmUA.sPasswordStrength }}  
\");}]);"],"sourceRoot":"/source/"}