1 (function(angular
, $, _
) {
5 * build snooze options object reconciled with preferences
8 angular
.module('statuspage').service('statuspageStatusModel', function(crmApi
, statuspageGetStatuses
, statuspageGetPreferences
){
12 getStatuses
: statuspageGetStatuses
,
13 getPreferences
: statuspageGetPreferences
,
15 statusModel
.statuses
= statusModel
16 .getStatuses(statusModel
.hushed
)
17 .then(function(result
){
18 result
.preferences
= statuspageGetPreferences();
24 angular
.module('statuspage').service('statuspageGetStatuses', function(crmApi
, statuspageSeverityList
) {
25 return function(apiFilter
) {
26 return crmApi('System', 'check', apiFilter
)
27 .catch(function(obj
){console
.log(obj
);})
28 .then(function(apiResults
){
29 _
.each(apiResults
.values
, function(status
){
30 status
.severity_id
= status
.severity
;
31 status
.severity
= statuspageSeverityList
[status
.severity
];
32 status
.displayTitle
= status
.name
+' - '+status
.title
+' - '+status
.severity
.toUpperCase();
33 status
.snoozeOptions
= {
35 severity
: status
.severity
43 angular
.module('statuspage').service('statuspageGetPreferences', function(crmApi
) {
45 return crmApi('StatusPreference', 'get')
46 .then(function(apiResults
) {
47 _
.each(apiResults
.values
, function(pref
){
48 pref
.snoozeOptions
= {
49 severity
: pref
.ignore_severity
58 angular
.module('statuspage').filter('trusted', function($sce
){ return $sce
.trustAsHtml
; });
60 angular
.module('statuspage').service('statuspageSeverityList', function() {
61 return ['debug', 'info', 'notice', 'warning', 'error', 'critical', 'alert', 'emergency'];
64 })(angular
, CRM
.$, CRM
._
);