From b9e40d145236967d2aa7bfdca5b9d899e142ed49 Mon Sep 17 00:00:00 2001
From: Muhsin Keloth
Date: Thu, 10 Jun 2021 15:04:03 +0530
Subject: [PATCH] feat: Add an option to enable/disable email collect box
(#2399)
* add email collect enabled migration
* migrations
* expose enable_email_collect field
* add select for email collect
* add enable_email condition on new conversation
* add default value true for enable_email_collect
* add specs for email collect enabled
* rereun migration
* code cleanup
* update token life span to 2 months
* revert uuid column
---
.../api/v1/accounts/inboxes_controller.rb | 4 ++--
.../dashboard/i18n/locale/en/inboxMgmt.json | 6 ++++++
.../dashboard/settings/inbox/Settings.vue | 20 +++++++++++++++++++
app/models/inbox.rb | 1 +
.../hook_execution_service.rb | 2 +-
app/views/api/v1/models/_inbox.json.jbuilder | 1 +
config/initializers/devise_token_auth.rb | 2 +-
...0609133433_add_email_collect_to_inboxes.rb | 5 +++++
db/schema.rb | 3 ++-
.../hook_execution_service_spec.rb | 19 ++++++++++++++++--
10 files changed, 56 insertions(+), 7 deletions(-)
create mode 100644 db/migrate/20210609133433_add_email_collect_to_inboxes.rb
diff --git a/app/controllers/api/v1/accounts/inboxes_controller.rb b/app/controllers/api/v1/accounts/inboxes_controller.rb
index 8a5f5b9b9..12c7a29e6 100644
--- a/app/controllers/api/v1/accounts/inboxes_controller.rb
+++ b/app/controllers/api/v1/accounts/inboxes_controller.rb
@@ -87,12 +87,12 @@ class Api::V1::Accounts::InboxesController < Api::V1::Accounts::BaseController
end
def permitted_params
- params.permit(:id, :avatar, :name, :greeting_message, :greeting_enabled, channel:
+ params.permit(:id, :avatar, :name, :greeting_message, :greeting_enabled, :enable_email_collect, channel:
[:type, :website_url, :widget_color, :welcome_title, :welcome_tagline, :webhook_url, :email, :reply_time])
end
def inbox_update_params
- params.permit(:enable_auto_assignment, :name, :avatar, :greeting_message, :greeting_enabled,
+ params.permit(:enable_auto_assignment, :enable_email_collect, :name, :avatar, :greeting_message, :greeting_enabled,
:working_hours_enabled, :out_of_office_message, :timezone,
channel: [
:website_url,
diff --git a/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json b/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json
index 09e4c9e9b..8948adfc4 100644
--- a/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json
+++ b/app/javascript/dashboard/i18n/locale/en/inboxMgmt.json
@@ -212,6 +212,10 @@
"AUTO_ASSIGNMENT": {
"ENABLED": "Enabled",
"DISABLED": "Disabled"
+ },
+ "EMAIL_COLLECT_BOX": {
+ "ENABLED": "Enabled",
+ "DISABLED": "Disabled"
}
},
"DELETE": {
@@ -248,6 +252,8 @@
"INBOX_AGENTS": "Agents",
"INBOX_AGENTS_SUB_TEXT": "Add or remove agents from this inbox",
"UPDATE": "Update",
+ "ENABLE_EMAIL_COLLECT_BOX": "Enable email collect box",
+ "ENABLE_EMAIL_COLLECT_BOX_SUB_TEXT": "Enable or disable email collect box on new conversation",
"AUTO_ASSIGNMENT": "Enable auto assignment",
"INBOX_UPDATE_TITLE": "Inbox Settings",
"INBOX_UPDATE_SUB_TEXT": "Update your inbox settings",
diff --git a/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue b/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue
index 4cd8a4d12..e44f75eb4 100644
--- a/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue
+++ b/app/javascript/dashboard/routes/dashboard/settings/inbox/Settings.vue
@@ -138,6 +138,23 @@
+
+