--- /dev/null
+/*-\r
+ * ================================================================================\r
+ * ECOMP Portal\r
+ * ================================================================================\r
+ * Copyright (C) 2017 AT&T Intellectual Property\r
+ * ================================================================================\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ * \r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ * \r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ * ================================================================================\r
+ */\r
+'use strict';\r
+\r
+(function () { \r
+ \r
+ class ContactUsCtrl {\r
+ constructor($log, contactUsService, applicationsService, $modal, ngDialog, $state,$anchorScroll,$location) { \r
+ \r
+ contactUsService.getContactUSPortalDetails().then(res => {\r
+ // $log.info('ContactUsCtrl:: contactUsService getContactUSPortalDetails res',res);\r
+ // $log.info('getting res',res);\r
+ var result = (typeof(res.response) != "undefined" && res.response!=null)?res.response:null;\r
+ // $log.info('result',result);\r
+ // $log.info('done');\r
+ var source = JSON.parse(result);\r
+ // $log.info(source); \r
+ this.ush_TicketInfoUrl = source.ush_ticket_url; \r
+ this.portalInfo_Address = source.feedback_email_address; \r
+ this.feedback_Url = source.portal_info_url; \r
+ }).catch(err=> {\r
+ $log.error('ContactUsCtrl:error:: ', err);\r
+ }).finally(() => {\r
+ });\r
+ \r
+ let init = () => {\r
+ // $log.info('ecomp app::contact-us-controller::initializing...');\r
+ this.appTable=[];\r
+ this.functionalTableData=[];\r
+ };\r
+ init(); \r
+ \r
+ let updateContactUsTable = () => {\r
+ contactUsService.getAppsAndContacts().then(res=> {\r
+ // $log.info('ContactUsCtrl:: contactUsService getAppsAndContacts res',res);\r
+ var tableData=[];\r
+ // $log.info('getting res',res);\r
+ var result = (typeof(res.response) != "undefined" && res.response!=null)?res.response:null;\r
+ // $log.info('result',result);\r
+ // $log.info('done');\r
+ var source = result;\r
+ // $log.info(source);\r
+ // Drop Portal app, empty name entries\r
+ for(var i=0;i<source.length; i++) {\r
+ var dataArr = source[i];\r
+ if ( !dataArr.appName || dataArr.appId == 1) {\r
+ continue;\r
+ }\r
+ var dataTemp={\r
+ app_name: dataArr.appName,\r
+ contact_name: dataArr.contactName,\r
+ contact_email: dataArr.contactEmail,\r
+ desc: dataArr.description,\r
+ url_Info: dataArr.url,\r
+ app_Id: dataArr.appId,\r
+ }\r
+ tableData.push(dataTemp);\r
+ } \r
+ this.appTable=tableData;\r
+ }).catch(err=> {\r
+ $log.error('ContactUsCtrl.updateContactUsTable:error:: ', err);\r
+ })\r
+ };\r
+ \r
+ contactUsService.getAppCategoryFunctions().then(res=> {\r
+ // $log.info('ContactUsCtrl:: contactUsService getAppCategoryFunctionsthen res',res);\r
+ var tablefunctionalData=[];\r
+ // $log.info('getting res',res);\r
+ var result = (typeof(res.response) != "undefined" && res.response!=null)?res.response:null;\r
+ // $log.info('result',result);\r
+ // $log.info('done');\r
+ var source = result;\r
+ // $log.info(source); \r
+ for(var i=0;i<source.length; i++) {\r
+ var datafunctionalArr = source[i];\r
+ var datafuntionalTemp={\r
+ category: datafunctionalArr.category,\r
+ app_Name: datafunctionalArr.application,\r
+ functions: datafunctionalArr.functions,\r
+ app_Id: datafunctionalArr.appId,\r
+ }\r
+ tablefunctionalData.push(datafuntionalTemp);\r
+ } \r
+ this.functionalTableData=tablefunctionalData;\r
+ }).catch(err=> {\r
+ $log.error('ContactUsCtrl:error:: ', err);\r
+ })\r
+ \r
+ updateContactUsTable();\r
+ this.editContactUsModalPopup = () => {\r
+ // $log.debug('ContactUsCtrl::editContactUsModalPopup updating table data...'); \r
+ var modalInstance = ngDialog.open({\r
+ templateUrl: 'app/views/support/contact-us/contact-us-manage/contact-us-manage.html',\r
+ controller: 'ContactUsManageController',\r
+ resolve: {\r
+ message: function message() {\r
+ var message = {\r
+ type: 'Contact',\r
+ };\r
+ return message;\r
+ }\r
+ }\r
+ }).closePromise.then(needUpdate => { \r
+ updateContactUsTable();\r
+ }); \r
+ };\r
+ \r
+ this.goToSection = (id) => {\r
+ \r
+ var targetDiv = document.getElementById(id); \r
+ \r
+ var offSetHeight = 0;\r
+ for(var i=0;i<this.appTable.length;i++){ \r
+ if(this.appTable[i].app_Id==id)\r
+ break;\r
+ if(this.appTable[i].showFlag==true){\r
+ offSetHeight+=document.getElementById('collapse'+i).clientHeight; \r
+ }\r
+ }\r
+ console.log(offSetHeight);\r
+ this.appTable.forEach(d => d.showFlag = false);\r
+ // let index = this.appTable.findIndex(a => a.app_Id == id);\r
+ var index =-1;\r
+ for(var i=0; i<this.appTable.length;i++){\r
+ if(this.appTable[i].app_Id==id){\r
+ index = i;\r
+ break;\r
+ }\r
+ }\r
+ console.log(index);\r
+ if (index > -1) {\r
+ // setting the showFlag to true based on index comparing with the app_Id \r
+ this.appTable[index].showFlag = true;\r
+ $location.hash('appId'+index);\r
+ $anchorScroll();\r
+ /* $('#contentId').animate({\r
+ scrollTop: targetDiv.offsetTop-offSetHeight\r
+ }, 'fast');*/\r
+ } \r
+ \r
+ };\r
+ \r
+ // Take the user to the application on the get access page.\r
+ this.goGetAccess = (appName) => {\r
+ // $log.debug('ContactUsCtrl::goGetAccess received name ' + appName);\r
+ applicationsService.goGetAccessAppName = appName;\r
+ $state.go('root.getAccess');\r
+ };\r
+ \r
+ }\r
+ }\r
+ ContactUsCtrl.$inject = ['$log','contactUsService', 'applicationsService', '$modal', 'ngDialog', '$state','$anchorScroll','$location'];\r
+ angular.module('ecompApp').controller('ContactUsCtrl', ContactUsCtrl);\r
+})();\r