{"version":3,"sources":["../js/services/main/helpservice.js","../js/controllers/main/helpcontroller.js"],"names":["SUGApp","service","util","Date","getFAQSuggestions","data","APISyncCall","getDefaultFAQSuggestions","resultErrorHandler","response","Message","result","lowerCaseKeys","angular","isDefined","message","isArray","forEach","obj","key","isDefinedNotNullNotEmpty","statustext","status","controller","$scope","SUGUtilities","$modal","$window","$location","$sce","helpService","wordCount","str","length","split","then","success","defaultFAQSuggestions","showAlert","setDefaultFAQSuggestions","faqResult","autorun","messagebody","eowRegEx","RegExp","countOfWords","searchtext","messagesubject","frm","subject","subjectLen","bodyLen","endOfString","isEndOfWord","test","searchMax","gotoLink","url","location","href","viewFAQSuggestion","id","modalData","open","templateUrl","epochTime","modalController","resolve","title","confirmation","cancel","ok","$modalInstance","$filter","okBtn","cancelBtn","close","dismiss","getEpochTime","newDate","today","getTime","getMilliseconds"],"mappings":"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","file":"help.min.js","sourcesContent":["(function () {\r\n\r\n /** sign up form service **/\r\n SUGApp.service('helpService', ['SUGUtilities', function(util){\r\n\t\tvar today = new Date();\r\n\r\n var service = {};\r\n\r\n\t\tservice.getFAQSuggestions = function( data ){\r\n\t\t\treturn util.APISyncCall(\"post\", \"\", data, \"c.getFAQSuggestions\", 15000 );\r\n };\r\n\t\tservice.getDefaultFAQSuggestions = function (data) {\r\n\t\t\treturn util.APISyncCall(\"post\", \"\", data, \"c.getDefaultFAQSuggestions\", 15000);\r\n\t\t};\r\n\r\n service.resultErrorHandler = function( response ){\r\n \t\tvar Message = \"\";\r\n \t\tvar result = util.lowerCaseKeys(response);\r\n \t\tif( angular.isDefined(result.message) ){\r\n \t\t\tif( angular.isArray(result.message) ){\r\n angular.forEach( result.message, function(obj,key){\r\n Message += obj + \" \";\r\n });\r\n \t\t\t} else {\r\n \t\t\t\tMessage = result.message;\r\n \t\t\t}\r\n \t\t} else {\r\n \t\t\tif( util.isDefinedNotNullNotEmpty(result.statustext) ){\r\n \t\t\t\tMessage = result.statustext;\r\n \t\t\t} else if( typeof result.status !== undefined && result.status === 0 ){\r\n \t\t\t\tMessage = 'Request timeout exceeded. Make sure you are logged in and have an active session.';\r\n \t\t\t}\r\n \t\t\telse {\r\n \t\t\t\tMessage = 'An unknown error occurred while processing your request';\r\n \t\t\t}\r\n \t\t}\r\n\r\n \t\treturn Message;\r\n \t};\r\n\r\n return service;\r\n\r\n }]);\r\n\r\n})();\r\n","(function(){\r\n\tSUGApp.controller('helpController',\r\n\t\t['$scope', 'SUGUtilities', '$modal', '$window', '$location', '$sce', 'helpService',\r\n\t\t\tfunction ($scope, SUGUtilities, $modal, $window, $location, $sce, helpService) {\r\n\r\n\t\tvar init = function () {\r\n\t\t\t$scope.frm = { subject: \"\", message: \"\" };\r\n\t\t\t$scope.faqResult = [];\r\n\t\t\t$scope.searchtext = \"\";\r\n\r\n\t\t\t$scope.getEpochTime = function () {\r\n\t\t\t\tnewDate = helpService.today();\r\n\t\t\t\t(newDate.getTime() - newDate.getMilliseconds()) / 1000;\r\n\t\t\t\treturn newDate;\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\tvar wordCount = function (str) {\r\n\t\t\tvar count = typeof str != 'undefined' && str.length ? str.split(' ').length : 0;\r\n\t\t\treturn count;\r\n\t\t}\r\n\r\n\t\tvar generateSearchText = function () {\r\n\t\t\t$scope.searchtext = '';\r\n\t\t\tvar messagesubject = $scope.frm.subject;\r\n\t\t\tvar subjectLen = wordCount(messagesubject);\t\t//messagesubject ? messagesubject.length : 0;\r\n\t\t\tvar messagebody = $scope.frm.message;\r\n\t\t\tvar bodyLen = wordCount(messagebody);\t\t//messagesubject ? messagesubject.length : 0;\r\n\r\n\t\t\t$scope.searchtext = subjectLen && bodyLen && subjectLen + bodyLen > 1 ? messagesubject + ' ' + messagebody : \r\n\t\t\t\tmessagesubject && subjectLen > 1 ? messagesubject :\r\n\t\t\t\tmessagebody && bodyLen > 1 ? messagebody : \r\n\t\t\t\t$scope.searchtext;\r\n\t\t}\r\n\r\n\r\n\t\t// retrieves search results based on specified search text\r\n\t\tvar getDefaultFAQSuggestions = function () {\r\n\t\t\thelpService.getDefaultFAQSuggestions({})\r\n\t\t\t.then(\r\n\t\t\t\tfunction (result) {\r\n\t\t\t\t\tresult = SUGUtilities.lowerCaseKeys(result);\r\n\t\t\t\t\tif (result.data.success) {\r\n\t\t\t\t\t\t$scope.defaultFAQSuggestions = result.data.data;\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\tfunction (result) {\r\n\t\t\t\t\tSUGUtilities.showAlert('An error occurred retrieving the data.');\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t};\r\n\t\tgetDefaultFAQSuggestions();\r\n\r\n\t\t$scope.setDefaultFAQSuggestions = function () {\r\n\t\t\tif (!$scope.faqResult || !$scope.faqResult.length) {\r\n\t\t\t\t$scope.faqResult = $scope.defaultFAQSuggestions;\r\n\t\t\t}\r\n\t\t}\r\n\t\t// retrieves search results based on specified search text\r\n\t\t$scope.getFAQSuggestions = function(autorun){\r\n\t\t\tvar eowRegEx = new RegExp(\"[ .,!?]\");\r\n\t\t\tgenerateSearchText();\r\n\t\t\t// When the search text is empty, revert the suggestions to the default\r\n\t\t\tif (!$scope.searchtext.length) {\r\n\t\t\t\t$scope.faqResult = $scope.defaultFAQSuggestions;\r\n\t\t\t}\r\n\t\t\tvar countOfWords = wordCount($scope.searchtext);\r\n\t\t\tvar endOfString = $scope.searchtext[$scope.searchtext.length -1];\r\n\t\t\tvar isEndOfWord = eowRegEx.test(endOfString) ? true : false;\r\n\t\t\tvar runCall = countOfWords > 2 && isEndOfWord ? true : false;\r\n\t\t\t// logic to determine when to run call to retrieve suggestions\r\n\t\t\tif ($scope.searchtext && (runCall || autorun)) {\r\n\t\t\t\thelpService.getFAQSuggestions({\"searchtext\" : $scope.searchtext, \"searchMax\":6 })\r\n\t\t\t\t.then(\r\n\t\t\t\t\tfunction(result){\r\n\t\t\t\t\t\tresult = SUGUtilities.lowerCaseKeys(result);\r\n\t\t\t\t\t\tif (result.data.success) {\r\n\t\t\t\t\t\t\t$scope.faqResult = result.data.data;\t\t\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t},\r\n\t\t\t\t\tfunction(result){\r\n\t\t\t\t\t\tSUGUtilities.showAlert('An error occurred retrieving the data.');\r\n\t\t\t\t\t}\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t};\r\n\r\n\t\t// used to open links since Angular seems to be blocking them.\r\n\t\t$scope.gotoLink = function(url) {\r\n\t\t\t$window.location.href = url;\r\n\t\t};\r\n\r\n\r\n\t\t/* Alert Window Controller */\r\n\t\t$scope.viewFAQSuggestion = function (id) {\r\n\t\t\tvar modalData = $scope.faqResult[id];\r\n\r\n\t\t\tvar previewModalWindow = $modal.open({\r\n\t\t\t\ttemplateUrl: '/view/templates/faqsuggestion.html?v=' + $scope.epochTime,\r\n\t\t\t\tcontroller: modalController,\r\n\t\t\t\tresolve: {\r\n\t\t\t\t\tmodalData: function () { return modalData; },\r\n\t\t\t\t\ttitle: function () { return ''; },\r\n\t\t\t\t\tconfirmation: function () { return ''; },\r\n\t\t\t\t\tcancel: function () { return 'No'; },\r\n\t\t\t\t\tok: function () { return 'Yes'; }\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tpreviewModalWindow.result\r\n\t\t\t\t.then(function (response) {\r\n\t\t\t\t\t//do nothing\r\n\t\t\t\t}, function (response) {\r\n\t\t\t\t\t//Don't do anything\r\n\t\t\t\t\t//Cancel\r\n\t\t\t\t});\r\n\t\t};\r\n\r\n\t\t/* Modal Controller */\r\n\t\tvar modalController = ['$scope', '$modalInstance', 'ok', 'cancel', 'modalData', '$filter', '$window',\r\n\t\t\tfunction ($scope, $modalInstance, ok, cancel, modalData, $filter, $window) {\r\n\t\t\t\t$scope.modalData = modalData;\r\n\t\t\t\t//$scope.confirmationTitle = title;\r\n\t\t\t\t//$scope.confirmationMessage = confirmation;\r\n\t\t\t\t$scope.okBtn = typeof ok !== 'undefined' ? ok : 'Yes';\r\n\t\t\t\t$scope.cancelBtn = typeof cancel !== 'undefined' ? cancel : 'No';\r\n\t\t\t\t//$scope.previewMode = true;\r\n\t\t\t\t$scope.ok = function () {\r\n\t\t\t\t\t$modalInstance.close(true);\r\n\t\t\t\t\t$window.location.href = \"/support\";\r\n\t\t\t\t};\r\n\t\t\t\t$scope.cancel = function () {\r\n\t\t\t\t\t$modalInstance.dismiss(false);\r\n\t\t\t\t};\r\n\t\t\t}];\r\n\r\n\r\n\t\t// initialize the controller\r\n\t\tinit();\r\n\r\n\t}]);\r\n}());\r\n\r\n"]}