From 1f5c8c4e4ebb2e163278f3e62d640f41a2df7294 Mon Sep 17 00:00:00 2001 From: Elias Nahum Date: Fri, 11 Mar 2016 00:14:55 -0300 Subject: Option to enable full snippets in push notifications --- model/config.go | 9 +++++++++ model/push_notification.go | 4 ++++ model/utils.go | 12 ++++++++++++ 3 files changed, 25 insertions(+) (limited to 'model') diff --git a/model/config.go b/model/config.go index 11ce260ee..d684c72b2 100644 --- a/model/config.go +++ b/model/config.go @@ -25,6 +25,9 @@ const ( WEBSERVER_MODE_REGULAR = "regular" WEBSERVER_MODE_GZIP = "gzip" WEBSERVER_MODE_DISABLED = "disabled" + + GENERIC_NOTIFICATION = "generic" + FULL_NOTIFICATION = "full" ) type ServiceSettings struct { @@ -121,6 +124,7 @@ type EmailSettings struct { PasswordResetSalt string SendPushNotifications *bool PushNotificationServer *string + PushNotificationContents *string } type RateLimitSettings struct { @@ -299,6 +303,11 @@ func (o *Config) SetDefaults() { *o.EmailSettings.PushNotificationServer = "" } + if o.EmailSettings.PushNotificationContents == nil { + o.EmailSettings.PushNotificationContents = new(string) + *o.EmailSettings.PushNotificationContents = GENERIC_NOTIFICATION + } + if o.SupportSettings.TermsOfServiceLink == nil { o.SupportSettings.TermsOfServiceLink = new(string) *o.SupportSettings.TermsOfServiceLink = "/static/help/terms.html" diff --git a/model/push_notification.go b/model/push_notification.go index 76f5bd125..9196a44dd 100644 --- a/model/push_notification.go +++ b/model/push_notification.go @@ -11,6 +11,8 @@ import ( const ( PUSH_NOTIFY_APPLE = "apple" PUSH_NOTIFY_ANDROID = "android" + + CATEGORY_DM = "DIRECT_MESSAGE" ) type PushNotification struct { @@ -22,6 +24,8 @@ type PushNotification struct { Message string `json:"message"` Badge int `json:"badge"` ContentAvailable int `json:"cont_ava"` + ChannelId string `json:"channel_id"` + ChannelName string `json:"channel_name"` } func (me *PushNotification) ToJson() string { diff --git a/model/utils.go b/model/utils.go index 808c89e30..1ce41bb30 100644 --- a/model/utils.go +++ b/model/utils.go @@ -367,3 +367,15 @@ func IsValidHttpUrl(rawUrl string) bool { return true } + +func IsValidHttpsUrl(rawUrl string) bool { + if strings.Index(rawUrl, "https://") != 0 { + return false + } + + if _, err := url.ParseRequestURI(rawUrl); err != nil { + return false + } + + return true +} -- cgit v1.2.3-1-g7c22