2012-05-30 21:06:37 +00:00
# encoding: utf-8
2012-04-10 13:31:21 +00:00
# This file should contain all the record creation needed to seed the database with its default values.
# The data can then be loaded with the rake db:seed (or created alongside the db with db:setup).
#
# Examples:
#
# cities = City.create([{ :name => 'Chicago' }, { :name => 'Copenhagen' }])
# Mayor.create(:name => 'Emanuel', :city => cities.first)
2016-11-08 13:15:24 +00:00
# clear old caches to start from scratch
Cache . clear
2017-01-27 08:17:03 +00:00
Setting . create_if_not_exists (
title : 'Application secret' ,
name : 'application_secret' ,
area : 'Core' ,
description : 'Defines the random application secret.' ,
options : { } ,
state : SecureRandom . hex ( 128 ) ,
preferences : {
permission : [ 'admin' ] ,
} ,
frontend : false
)
2014-11-06 22:56:01 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'System Init Done' ,
name : 'system_init_done' ,
area : 'Core' ,
description : 'Defines if application is in init mode.' ,
options : { } ,
state : false ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-11-06 20:45:06 +00:00
)
2016-02-12 14:07:15 +00:00
Setting . create_if_not_exists (
title : 'App Version' ,
name : 'app_version' ,
area : 'Core::WebApp' ,
2017-02-03 14:43:23 +00:00
description : 'Only used internally to propagate current web app version to clients.' ,
2016-02-12 14:07:15 +00:00
options : { } ,
state : '' ,
preferences : { online_service_disable : true } ,
frontend : false
)
2016-05-25 07:19:45 +00:00
Setting . create_if_not_exists (
title : 'Maintenance Mode' ,
name : 'maintenance_mode' ,
area : 'Core::WebApp' ,
description : 'Enable or disable the maintenance mode of Zammad. If enabled, all non-administrators get logged out and only administrators can start a new session.' ,
options : { } ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.maintenance' ] ,
} ,
2016-05-25 07:19:45 +00:00
frontend : true
)
Setting . create_if_not_exists (
title : 'Maintenance Login' ,
name : 'maintenance_login' ,
area : 'Core::WebApp' ,
description : 'Put a message on the login page. To change it, click on the text area below and change it inline.' ,
options : { } ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.maintenance' ] ,
} ,
2016-05-25 07:19:45 +00:00
frontend : true
)
Setting . create_if_not_exists (
title : 'Maintenance Login' ,
name : 'maintenance_login_message' ,
area : 'Core::WebApp' ,
description : 'Message for login page.' ,
options : { } ,
state : 'Something about to share. Click here to change.' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.maintenance' ] ,
} ,
2016-05-25 07:19:45 +00:00
frontend : true
)
2014-12-31 09:04:14 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Developer System' ,
name : 'developer_mode' ,
area : 'Core::Develop' ,
description : 'Defines if application is in developer mode (useful for developer, all users have the same password, password reset will work without email delivery).' ,
options : { } ,
state : false ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-12-31 09:04:14 +00:00
)
2014-11-20 16:04:31 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Online Service' ,
name : 'system_online_service' ,
area : 'Core' ,
description : 'Defines if application is used as online service.' ,
options : { } ,
state : false ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-11-20 16:04:31 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Product Name' ,
name : 'product_name' ,
2015-07-12 01:32:40 +00:00
area : 'System::Branding' ,
2015-04-27 13:42:53 +00:00
description : 'Defines the name of the application, shown in the web interface, tabs and title bar of the web browser.' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'product_name' ,
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2016-08-26 10:06:27 +00:00
preferences : {
render : true ,
prio : 1 ,
placeholder : true ,
permission : [ 'admin.branding' ] ,
} ,
2015-07-15 19:45:40 +00:00
state : 'Zammad Helpdesk' ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2014-11-19 22:22:13 +00:00
Setting . create_if_not_exists (
2015-07-12 05:32:50 +00:00
title : 'Logo' ,
name : 'product_logo' ,
2015-07-12 01:32:40 +00:00
area : 'System::Branding' ,
2015-07-12 05:32:50 +00:00
description : 'Defines the logo of the application, shown in the web interface.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2014-11-19 22:22:13 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
2015-07-12 05:32:50 +00:00
name : 'product_logo' ,
2015-04-27 13:42:53 +00:00
tag : 'input' ,
2014-11-19 22:22:13 +00:00
} ,
] ,
} ,
2016-08-16 00:10:41 +00:00
preferences : {
prio : 3 ,
controller : 'SettingsAreaLogo' ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.branding' ] ,
2016-08-16 00:10:41 +00:00
} ,
2015-07-12 05:32:50 +00:00
state : 'logo.svg' ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-11-19 22:22:13 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-07-12 05:32:50 +00:00
title : 'Organization' ,
name : 'organization' ,
2015-07-12 01:32:40 +00:00
area : 'System::Branding' ,
2015-07-16 10:14:31 +00:00
description : 'Will be shown in the app and is included in email footers.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
2015-07-12 05:32:50 +00:00
name : 'organization' ,
2015-04-27 13:42:53 +00:00
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2015-07-12 05:32:50 +00:00
state : '' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
placeholder : true ,
permission : [ 'admin.branding' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2017-04-21 09:25:28 +00:00
Setting . create_or_update (
title : 'Pretty Date' ,
name : 'pretty_date_format' ,
area : 'System::Branding' ,
description : 'Defines pretty date format.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'pretty_date_format' ,
tag : 'select' ,
options : {
'relative' : 'relative - e. g. "2 hours ago" or "2 days and 15 minutes ago"' ,
'absolute' : 'absolute - e. g. "Monday 09:30" or "Tuesday 23. Feb 14:20"' ,
} ,
} ,
] ,
} ,
preferences : {
render : true ,
prio : 10 ,
permission : [ 'admin.branding' ] ,
} ,
state : 'relative' ,
frontend : true
)
2015-09-06 11:41:31 +00:00
options = { }
2016-06-30 20:04:48 +00:00
( 10 .. 99 ) . each { | item |
2015-09-06 11:41:31 +00:00
options [ item ] = item
}
system_id = rand ( 10 .. 99 )
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'SystemID' ,
name : 'system_id' ,
area : 'System::Base' ,
description : 'Defines the system identifier. Every ticket number contains this ID. This ensures that only tickets which belong to your system will be processed as follow-ups (useful when communicating between two instances of Zammad).' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'system_id' ,
tag : 'select' ,
2015-09-06 11:41:31 +00:00
options : options ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2015-09-06 11:41:31 +00:00
state : system_id ,
2016-08-17 22:37:06 +00:00
preferences : {
online_service_disable : true ,
placeholder : true ,
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.system' ] ,
2016-08-17 22:37:06 +00:00
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Fully Qualified Domain Name' ,
name : 'fqdn' ,
area : 'System::Base' ,
description : 'Defines the fully qualified domain name of the system. This setting is used as a variable, #{setting.fqdn} which is found in all forms of messaging used by the application, to build links to the tickets within your system.' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'fqdn' ,
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'zammad.example.com' ,
2016-08-26 10:06:27 +00:00
preferences : {
online_service_disable : true ,
placeholder : true ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2015-05-07 05:18:26 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Websocket port' ,
2015-05-07 05:18:26 +00:00
name : 'websocket_port' ,
area : 'System::WebSocket' ,
description : 'Defines the port of the websocket server.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'websocket_port' ,
tag : 'input' ,
} ,
] ,
} ,
state : '6042' ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-05-07 05:18:26 +00:00
frontend : true
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'HTTP type' ,
2015-04-27 13:42:53 +00:00
name : 'http_type' ,
area : 'System::Base' ,
2017-03-14 05:12:10 +00:00
description : 'Define the http protocol of your instance.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'http_type' ,
tag : 'select' ,
options : {
2012-04-10 14:06:46 +00:00
'https' = > 'https' ,
'http' = > 'http' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'http' ,
2016-08-26 10:06:27 +00:00
preferences : {
online_service_disable : true ,
placeholder : true ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Storage Mechanism' ,
2016-11-17 14:06:31 +00:00
name : 'storage_provider' ,
2015-04-27 13:42:53 +00:00
area : 'System::Storage' ,
2017-02-03 14:43:23 +00:00
description : '"Database" stores all attachments in the database (not recommended for storing large amounts of data). "Filesystem" stores the data in the filesystem. You can switch between the modules even on a system that is already in production without any loss of data.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
2016-11-17 14:06:31 +00:00
name : 'storage_provider' ,
2015-04-27 13:42:53 +00:00
tag : 'select' ,
2016-11-17 14:06:31 +00:00
tranlate : true ,
2015-04-27 13:42:53 +00:00
options : {
2012-04-10 14:06:46 +00:00
'DB' = > 'Database' ,
2016-11-17 14:06:31 +00:00
'File' = > 'Filesystem' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'DB' ,
2016-08-26 10:06:27 +00:00
preferences : {
2016-11-17 14:06:31 +00:00
controller : 'SettingsAreaStorageProvider' ,
2016-08-26 10:06:27 +00:00
online_service_disable : true ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2015-07-15 19:45:40 +00:00
2013-08-06 13:31:27 +00:00
Setting . create_if_not_exists (
2015-07-15 19:45:40 +00:00
title : 'Image Service' ,
name : 'image_backend' ,
area : 'System::Services' ,
description : 'Defines the backend for user and organization image lookups.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-08-06 13:31:27 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
2015-07-15 19:45:40 +00:00
name : 'image_backend' ,
2015-04-27 13:42:53 +00:00
tag : 'select' ,
options : {
2013-08-06 13:31:27 +00:00
'' = > '-' ,
2015-07-15 19:45:40 +00:00
'Service::Image::Zammad' = > 'Zammad Image Service' ,
2013-08-06 13:31:27 +00:00
} ,
} ,
] ,
} ,
2015-07-15 19:45:40 +00:00
state : 'Service::Image::Zammad' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2013-08-15 20:40:22 +00:00
)
2015-07-15 19:45:40 +00:00
2013-08-15 20:40:22 +00:00
Setting . create_if_not_exists (
2015-07-15 19:45:40 +00:00
title : 'Geo IP Service' ,
2015-04-27 13:42:53 +00:00
name : 'geo_ip_backend' ,
2015-07-15 19:45:40 +00:00
area : 'System::Services' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the backend for geo IP lookups. Shows also location of an IP address if an IP address is shown.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-08-15 20:40:22 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'geo_ip_backend' ,
tag : 'select' ,
options : {
2013-08-15 20:40:22 +00:00
'' = > '-' ,
2015-07-15 19:45:40 +00:00
'Service::GeoIp::Zammad' = > 'Zammad GeoIP Service' ,
} ,
} ,
] ,
} ,
state : 'Service::GeoIp::Zammad' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.system' ] ,
} ,
2015-07-15 19:45:40 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Geo Location Service' ,
name : 'geo_location_backend' ,
area : 'System::Services' ,
description : 'Defines the backend for geo location lookups to store geo locations for addresses.' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'geo_location_backend' ,
tag : 'select' ,
options : {
'' = > '-' ,
'Service::GeoLocation::Gmaps' = > 'Google Maps' ,
2013-08-15 20:40:22 +00:00
} ,
} ,
] ,
} ,
2015-07-15 19:45:40 +00:00
state : 'Service::GeoLocation::Gmaps' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 3 ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2013-08-06 13:31:27 +00:00
)
2012-04-10 14:06:46 +00:00
2015-09-22 14:48:43 +00:00
Setting . create_if_not_exists (
title : 'Geo Calendar Service' ,
name : 'geo_calendar_backend' ,
area : 'System::Services' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the backend for geo calendar lookups. Used for initial calendar succession.' ,
2015-09-22 14:48:43 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'geo_calendar_backend' ,
tag : 'select' ,
options : {
'' = > '-' ,
'Service::GeoCalendar::Zammad' = > 'Zammad GeoCalendar Service' ,
} ,
} ,
] ,
} ,
state : 'Service::GeoCalendar::Zammad' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.system' ] ,
} ,
2015-09-22 14:48:43 +00:00
frontend : false
)
2017-01-16 00:24:56 +00:00
Setting . create_if_not_exists (
title : 'Proxy Settings' ,
name : 'proxy' ,
area : 'System::Network' ,
description : 'Address of the proxy server for http and https resources.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'proxy' ,
tag : 'input' ,
placeholder : 'proxy.example.com:3128' ,
} ,
] ,
} ,
state : '' ,
preferences : {
online_service_disable : true ,
controller : 'SettingsAreaProxy' ,
prio : 1 ,
permission : [ 'admin.system' ] ,
} ,
frontend : false
)
Setting . create_if_not_exists (
title : 'Proxy User' ,
name : 'proxy_username' ,
area : 'System::Network' ,
description : 'Username for proxy connection.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'proxy_username' ,
tag : 'input' ,
} ,
] ,
} ,
state : '' ,
preferences : {
disabled : true ,
online_service_disable : true ,
prio : 2 ,
permission : [ 'admin.system' ] ,
} ,
frontend : false
)
Setting . create_if_not_exists (
title : 'Proxy Password' ,
name : 'proxy_password' ,
area : 'System::Network' ,
description : 'Password for proxy connection.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'proxy_passowrd' ,
tag : 'input' ,
} ,
] ,
} ,
state : '' ,
preferences : {
disabled : true ,
online_service_disable : true ,
prio : 3 ,
permission : [ 'admin.system' ] ,
} ,
frontend : false
)
2014-07-28 07:36:05 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Send client stats' ,
name : 'ui_send_client_stats' ,
area : 'System::UI' ,
2015-07-16 10:14:31 +00:00
description : 'Send client stats/error message to central server to improve the usability.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2014-07-28 07:36:05 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ui_send_client_stats' ,
tag : 'boolean' ,
options : {
2014-07-28 07:36:05 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2016-10-19 03:20:00 +00:00
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-07-28 07:36:05 +00:00
)
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Client storage' ,
name : 'ui_client_storage' ,
area : 'System::UI' ,
2017-02-03 14:43:23 +00:00
description : 'Use client storage to cache data to enhance performance of application.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2014-07-28 07:36:05 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ui_client_storage' ,
tag : 'boolean' ,
options : {
2014-07-28 07:36:05 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.system' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2014-07-28 07:36:05 +00:00
)
2017-01-23 13:54:44 +00:00
Setting . create_if_not_exists (
title : 'Define default visibility of new a new article' ,
name : 'ui_ticket_zoom_article_new_internal' ,
area : 'UI::TicketZoom' ,
description : 'Set default visibility of new a new article.' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'ui_ticket_zoom_article_new_internal' ,
tag : 'boolean' ,
translate : true ,
options : {
true = > 'internal' ,
false = > 'public' ,
} ,
} ,
] ,
} ,
state : true ,
preferences : {
prio : 1 ,
permission : [ 'admin.ui' ] ,
} ,
frontend : true
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'New User Accounts' ,
name : 'user_create_account' ,
area : 'Security::Base' ,
description : 'Enables users to create their own account via web interface.' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'user_create_account' ,
tag : 'boolean' ,
options : {
2012-04-18 11:26:59 +00:00
true = > 'yes' ,
false = > 'no' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Lost Password' ,
name : 'user_lost_password' ,
area : 'Security::Base' ,
2015-05-02 08:54:18 +00:00
description : 'Activates lost password feature for users.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'user_lost_password' ,
tag : 'boolean' ,
options : {
2012-04-18 11:26:59 +00:00
true = > 'yes' ,
false = > 'no' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-02-07 23:03:46 +00:00
Setting . create_if_not_exists (
2016-08-15 17:48:35 +00:00
title : 'Authentication via %s' ,
2015-04-27 13:42:53 +00:00
name : 'auth_ldap' ,
area : 'Security::Authentication' ,
2016-08-15 17:48:35 +00:00
description : 'Enables user authentication via %s.' ,
preferences : {
title_i18n : [ 'LDAP' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'LDAP' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : {
adapter : 'Auth::Ldap' ,
host : 'localhost' ,
port : 389 ,
bind_dn : 'cn=Manager,dc=example,dc=org' ,
bind_pw : 'example' ,
uid : 'mail' ,
base : 'dc=example,dc=org' ,
always_filter : '' ,
2015-05-07 07:23:16 +00:00
always_roles : %w( Admin Agent ) ,
2015-04-27 13:42:53 +00:00
always_groups : [ 'Users' ] ,
sync_params : {
firstname : 'sn' ,
lastname : 'givenName' ,
email : 'mail' ,
login : 'mail' ,
2013-02-07 23:03:46 +00:00
} ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2016-08-15 17:48:35 +00:00
title : 'Authentication via %s' ,
2015-04-27 13:42:53 +00:00
name : 'auth_twitter' ,
area : 'Security::ThirdPartyAuthentication' ,
2016-08-15 17:48:35 +00:00
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'auth_twitter' ,
tag : 'boolean' ,
options : {
2012-04-18 07:40:37 +00:00
true = > 'yes' ,
false = > 'no' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2016-08-15 17:48:35 +00:00
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_twitter_credentials' ] ,
title_i18n : [ 'Twitter' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'Twitter' , 'Twitter Developer Site' , 'https://dev.twitter.com/apps' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2012-04-18 07:40:37 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Twitter App Credentials' ,
name : 'auth_twitter_credentials' ,
2016-08-15 17:48:35 +00:00
area : 'Security::ThirdPartyAuthentication::Twitter' ,
2015-04-27 13:42:53 +00:00
description : 'App credentials for Twitter.' ,
options : {
form : [
2012-04-18 07:40:37 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'Twitter Key' ,
null : true ,
name : 'key' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
{
2015-04-27 13:42:53 +00:00
display : 'Twitter Secret' ,
null : true ,
name : 'secret' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2016-08-15 17:48:35 +00:00
title : 'Authentication via %s' ,
2015-04-27 13:42:53 +00:00
name : 'auth_facebook' ,
area : 'Security::ThirdPartyAuthentication' ,
2016-08-15 17:48:35 +00:00
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'auth_facebook' ,
tag : 'boolean' ,
options : {
2012-04-18 07:40:37 +00:00
true = > 'yes' ,
false = > 'no' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2016-08-15 17:48:35 +00:00
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_facebook_credentials' ] ,
title_i18n : [ 'Facebook' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'Facebook' , 'Facebook Developer Site' , 'https://developers.facebook.com/apps/' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2012-04-18 07:40:37 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Facebook App Credentials' ,
name : 'auth_facebook_credentials' ,
2016-08-15 17:48:35 +00:00
area : 'Security::ThirdPartyAuthentication::Facebook' ,
2015-04-27 13:42:53 +00:00
description : 'App credentials for Facebook.' ,
options : {
form : [
2012-04-18 07:40:37 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'App ID' ,
null : true ,
name : 'app_id' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
{
2015-04-27 13:42:53 +00:00
display : 'App Secret' ,
null : true ,
name : 'app_secret' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2012-04-18 11:26:59 +00:00
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2016-08-15 17:48:35 +00:00
title : 'Authentication via %s' ,
2015-04-27 13:42:53 +00:00
name : 'auth_google_oauth2' ,
area : 'Security::ThirdPartyAuthentication' ,
2016-08-15 17:48:35 +00:00
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-18 11:26:59 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'auth_google_oauth2' ,
tag : 'boolean' ,
options : {
2012-04-18 11:26:59 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2016-08-15 17:48:35 +00:00
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_google_oauth2_credentials' ] ,
title_i18n : [ 'Google' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'Google' , 'Google API Console Site' , 'https://console.developers.google.com/apis/credentials' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2012-04-18 11:26:59 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Google App Credentials' ,
name : 'auth_google_oauth2_credentials' ,
2016-08-15 17:48:35 +00:00
area : 'Security::ThirdPartyAuthentication::Google' ,
2015-04-27 13:42:53 +00:00
description : 'Enables user authentication via Google.' ,
options : {
form : [
2012-04-18 11:26:59 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'Client ID' ,
null : true ,
name : 'client_id' ,
tag : 'input' ,
2012-04-18 11:26:59 +00:00
} ,
{
2015-04-27 13:42:53 +00:00
display : 'Client Secret' ,
null : true ,
name : 'client_secret' ,
tag : 'input' ,
2012-04-18 11:26:59 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-18 11:26:59 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2016-08-15 17:48:35 +00:00
title : 'Authentication via %s' ,
2015-04-27 13:42:53 +00:00
name : 'auth_linkedin' ,
area : 'Security::ThirdPartyAuthentication' ,
2016-08-15 17:48:35 +00:00
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'auth_linkedin' ,
tag : 'boolean' ,
options : {
2012-04-18 07:40:37 +00:00
true = > 'yes' ,
false = > 'no' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2016-08-15 17:48:35 +00:00
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_linkedin_credentials' ] ,
title_i18n : [ 'LinkedIn' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'LinkedIn' , 'Linkedin Developer Site' , 'https://www.linkedin.com/developer/apps' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'LinkedIn App Credentials' ,
name : 'auth_linkedin_credentials' ,
2016-08-15 17:48:35 +00:00
area : 'Security::ThirdPartyAuthentication::Linkedin' ,
2015-04-27 13:42:53 +00:00
description : 'Enables user authentication via LinkedIn.' ,
options : {
form : [
2012-04-18 07:40:37 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'App ID' ,
null : true ,
name : 'app_id' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
{
2015-04-27 13:42:53 +00:00
display : 'App Secret' ,
null : true ,
name : 'app_secret' ,
tag : 'input' ,
2012-04-18 07:40:37 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-18 07:40:37 +00:00
)
2016-08-15 17:48:35 +00:00
Setting . create_if_not_exists (
title : 'Authentication via %s' ,
name : 'auth_github' ,
area : 'Security::ThirdPartyAuthentication' ,
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'auth_github' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_github_credentials' ] ,
title_i18n : [ 'Github' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'Github' , 'Github OAuth Applications' , 'https://github.com/settings/applications' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
state : false ,
frontend : true
)
Setting . create_if_not_exists (
title : 'Github App Credentials' ,
name : 'auth_github_credentials' ,
area : 'Security::ThirdPartyAuthentication::Github' ,
description : 'Enables user authentication via Github.' ,
options : {
form : [
{
display : 'App ID' ,
null : true ,
name : 'app_id' ,
tag : 'input' ,
} ,
{
display : 'App Secret' ,
null : true ,
name : 'app_secret' ,
tag : 'input' ,
} ,
] ,
} ,
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-08-15 17:48:35 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Authentication via %s' ,
name : 'auth_gitlab' ,
area : 'Security::ThirdPartyAuthentication' ,
description : 'Enables user authentication via %s. Register your app first at [%s](%s).' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'auth_gitlab' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_gitlab_credentials' ] ,
title_i18n : [ 'Gitlab' ] ,
2016-08-26 10:06:27 +00:00
description_i18n : [ 'Gitlab' , 'Gitlab Applications' , 'https://your-gitlab-host/admin/applications' ] ,
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
state : false ,
frontend : true
)
Setting . create_if_not_exists (
title : 'Gitlab App Credentials' ,
name : 'auth_gitlab_credentials' ,
area : 'Security::ThirdPartyAuthentication::Gitlab' ,
description : 'Enables user authentication via Gitlab.' ,
options : {
form : [
{
display : 'App ID' ,
null : true ,
name : 'app_id' ,
tag : 'input' ,
} ,
{
display : 'App Secret' ,
null : true ,
name : 'app_secret' ,
tag : 'input' ,
} ,
{
display : 'Site' ,
null : true ,
name : 'site' ,
tag : 'input' ,
placeholder : 'https://gitlab.YOURDOMAIN.com' ,
} ,
] ,
} ,
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-08-15 17:48:35 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Authentication via %s' ,
name : 'auth_oauth2' ,
area : 'Security::ThirdPartyAuthentication' ,
2017-02-03 14:43:23 +00:00
description : 'Enables user authentication via generic OAuth2. Register your app first.' ,
2016-08-15 17:48:35 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'auth_oauth2' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
preferences : {
controller : 'SettingsAreaSwitch' ,
sub : [ 'auth_oauth2_credentials' ] ,
title_i18n : [ 'Generic OAuth2' ] ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.security' ] ,
2016-08-15 17:48:35 +00:00
} ,
state : false ,
frontend : true
)
Setting . create_if_not_exists (
title : 'Generic OAuth2 App Credentials' ,
name : 'auth_oauth2_credentials' ,
area : 'Security::ThirdPartyAuthentication::GenericOAuth' ,
2017-02-03 14:43:23 +00:00
description : 'Enables user authentication via generic OAuth2.' ,
2016-08-15 17:48:35 +00:00
options : {
form : [
{
display : 'Name' ,
null : true ,
name : 'name' ,
tag : 'input' ,
placeholder : 'Some Provider Name' ,
} ,
{
display : 'App ID' ,
null : true ,
name : 'app_id' ,
tag : 'input' ,
} ,
{
display : 'App Secret' ,
null : true ,
name : 'app_secret' ,
tag : 'input' ,
} ,
{
display : 'Site' ,
null : true ,
name : 'site' ,
tag : 'input' ,
placeholder : 'https://gitlab.YOURDOMAIN.com' ,
} ,
{
display : 'authorize_url' ,
null : true ,
name : 'authorize_url' ,
tag : 'input' ,
placeholder : '/oauth/authorize' ,
} ,
{
display : 'token_url' ,
null : true ,
name : 'token_url' ,
tag : 'input' ,
placeholder : '/oauth/token' ,
} ,
] ,
} ,
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-08-15 17:48:35 +00:00
frontend : false
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Minimum length' ,
2015-04-27 13:42:53 +00:00
name : 'password_min_size' ,
area : 'Security::Password' ,
2017-02-03 14:43:23 +00:00
description : 'Password needs to have at least a minimal number of characters.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'password_min_size' ,
tag : 'select' ,
options : {
2015-09-06 11:41:31 +00:00
4 = > ' 4' ,
5 = > ' 5' ,
6 = > ' 6' ,
7 = > ' 7' ,
8 = > ' 8' ,
9 = > ' 9' ,
10 = > '10' ,
11 = > '11' ,
12 = > '12' ,
13 = > '13' ,
14 = > '14' ,
15 = > '15' ,
16 = > '16' ,
17 = > '17' ,
18 = > '18' ,
19 = > '19' ,
20 = > '20' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 6 ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-06-21 20:47:50 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : '2 lower and 2 upper characters' ,
name : 'password_min_2_lower_2_upper_characters' ,
area : 'Security::Password' ,
2017-01-16 14:12:06 +00:00
description : 'Password needs to contain 2 lower and 2 upper characters.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'password_min_2_lower_2_upper_characters' ,
tag : 'select' ,
options : {
2012-04-10 14:06:46 +00:00
1 = > 'yes' ,
0 = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 0 ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-06-21 20:47:50 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Digit required' ,
name : 'password_need_digit' ,
area : 'Security::Password' ,
2017-02-03 14:43:23 +00:00
description : 'Password needs to contain at least one digit.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'Needed' ,
null : true ,
name : 'password_need_digit' ,
tag : 'select' ,
options : {
2012-04-10 14:06:46 +00:00
1 = > 'yes' ,
0 = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 1 ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-06-21 20:47:50 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Maximum failed logins' ,
2015-04-27 13:42:53 +00:00
name : 'password_max_login_failed' ,
area : 'Security::Password' ,
2017-02-03 14:43:23 +00:00
description : 'Number of failed logins after account will be deactivated.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'password_max_login_failed' ,
tag : 'select' ,
options : {
2015-09-06 11:41:31 +00:00
4 = > ' 4' ,
5 = > ' 5' ,
6 = > ' 6' ,
7 = > ' 7' ,
8 = > ' 8' ,
9 = > ' 9' ,
10 = > '10' ,
11 = > '11' ,
13 = > '13' ,
14 = > '14' ,
15 = > '15' ,
16 = > '16' ,
17 = > '17' ,
18 = > '18' ,
19 = > '19' ,
20 = > '20' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 10 ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.security' ] ,
} ,
2016-06-21 20:47:50 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Hook' ,
name : 'ticket_hook' ,
area : 'Ticket::Base' ,
2017-02-03 14:43:23 +00:00
description : 'The identifier for a ticket, e. g. Ticket#, Call#, MyTicket#. The default is Ticket#.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'ticket_hook' ,
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2016-08-17 22:37:06 +00:00
preferences : {
render : true ,
placeholder : true ,
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.ticket' ] ,
2016-08-17 22:37:06 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : 'Ticket#' ,
frontend : true
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Hook Divider' ,
name : 'ticket_hook_divider' ,
area : 'Ticket::Base::Shadow' ,
2017-02-03 14:43:23 +00:00
description : 'The divider between TicketHook and ticket number. E. g. \': \'.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ticket_hook_divider' ,
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : '' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.ticket' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Hook Position' ,
name : 'ticket_hook_position' ,
area : 'Ticket::Base' ,
2016-11-16 11:44:29 +00:00
description : " The format of the subject.
* ** Right ** means ** Some Subject [ Ticket #12345]**
* ** Left ** means ** [ Ticket #12345] Some Subject**
2017-02-03 14:43:23 +00:00
* ** None ** means ** Some Subject ** ( without ticket number ) . In the last case you should enable * postmaster_follow_up_search_in * to recognize follow - ups based on email headers and / or body . " ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ticket_hook_position' ,
tag : 'select' ,
2016-11-16 11:44:29 +00:00
translate : true ,
2015-04-27 13:42:53 +00:00
options : {
2015-12-27 23:53:45 +00:00
'left' = > 'left' ,
'right' = > 'right' ,
'none' = > 'none' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'right' ,
2016-08-26 10:06:27 +00:00
preferences : {
2016-11-16 11:44:29 +00:00
controller : 'SettingsAreaTicketHookPosition' ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.ticket' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Number Format' ,
name : 'ticket_number' ,
area : 'Ticket::Number' ,
2016-11-16 11:44:29 +00:00
description : " Selects the ticket number generator module.
* ** Increment ** increments the ticket number , the SystemID and the counter are used with SystemID . Counter format ( e . g . 1010138 , 1010139 ) .
* With ** Date ** the ticket numbers will be generated by the current date , the SystemID and the counter . The format looks like Year . Month . Day . SystemID . counter ( e . g . 201206231010138 , 201206231010139 ) . " ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ticket_number' ,
tag : 'select' ,
2016-11-16 11:44:29 +00:00
translate : true ,
2015-04-27 13:42:53 +00:00
options : {
2013-08-15 22:16:38 +00:00
'Ticket::Number::Increment' = > 'Increment (SystemID.Counter)' ,
'Ticket::Number::Date' = > 'Date (Year.Month.Day.SystemID.Counter)' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'Ticket::Number::Increment' ,
2016-08-26 10:06:27 +00:00
preferences : {
2016-11-16 11:44:29 +00:00
settings_included : %w( ticket_number_increment ticket_number_date ) ,
controller : 'SettingsAreaTicketNumber' ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.ticket' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Number Increment' ,
name : 'ticket_number_increment' ,
area : 'Ticket::Number' ,
description : '-' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'Checksum' ,
null : true ,
name : 'checksum' ,
tag : 'boolean' ,
options : {
2012-04-10 14:06:46 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
{
2015-04-27 13:42:53 +00:00
display : 'Min. size of number' ,
null : true ,
name : 'min_size' ,
tag : 'select' ,
options : {
2015-09-06 11:41:31 +00:00
1 = > ' 1' ,
2 = > ' 2' ,
3 = > ' 3' ,
4 = > ' 4' ,
5 = > ' 5' ,
6 = > ' 6' ,
7 = > ' 7' ,
8 = > ' 8' ,
9 = > ' 9' ,
10 = > '10' ,
11 = > '11' ,
12 = > '12' ,
13 = > '13' ,
14 = > '14' ,
15 = > '15' ,
16 = > '16' ,
17 = > '17' ,
18 = > '18' ,
19 = > '19' ,
20 = > '20' ,
2012-04-10 14:06:46 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : {
checksum : false ,
min_size : 5 ,
2012-04-10 14:06:46 +00:00
} ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.ticket' ] ,
2016-11-16 11:44:29 +00:00
hidden : true ,
2016-08-26 10:06:27 +00:00
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ticket Number Increment Date' ,
name : 'ticket_number_date' ,
area : 'Ticket::Number' ,
description : '-' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : 'Checksum' ,
null : true ,
name : 'checksum' ,
tag : 'boolean' ,
options : {
2012-04-10 14:06:46 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : {
2016-11-16 11:44:29 +00:00
checksum : false
2012-04-10 14:06:46 +00:00
} ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.ticket' ] ,
2016-11-16 11:44:29 +00:00
hidden : true ,
2016-08-26 10:06:27 +00:00
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Enable Ticket creation' ,
name : 'customer_ticket_create' ,
area : 'CustomerWeb::Base' ,
description : 'Defines if a customer can create tickets via the web interface.' ,
options : {
form : [
2012-04-13 13:51:10 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'customer_ticket_create' ,
tag : 'boolean' ,
options : {
2012-04-13 13:51:10 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : true ,
2016-08-17 22:37:06 +00:00
preferences : {
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.channel_web' ] ,
2016-08-17 22:37:06 +00:00
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2012-04-13 13:51:10 +00:00
)
2013-02-21 21:09:36 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Group selection for Ticket creation' ,
name : 'customer_ticket_create_group_ids' ,
area : 'CustomerWeb::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Defines groups for which a customer can create tickets via web interface. "-" means all groups are available.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-02-21 21:09:36 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'group_ids' ,
tag : 'select' ,
multiple : true ,
nulloption : true ,
relation : 'Group' ,
2013-02-21 21:09:36 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : '' ,
2016-08-17 22:37:06 +00:00
preferences : {
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.channel_web' ] ,
2016-08-17 22:37:06 +00:00
} ,
2015-04-27 13:42:53 +00:00
frontend : true
2013-02-21 21:09:36 +00:00
)
2015-08-10 00:10:41 +00:00
Setting . create_if_not_exists (
title : 'Enable Ticket creation' ,
name : 'form_ticket_create' ,
area : 'Form::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if tickets can be created via web form.' ,
2015-08-10 00:10:41 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'form_ticket_create' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_formular' ] ,
} ,
2015-08-10 00:10:41 +00:00
frontend : false ,
)
2016-07-16 22:18:08 +00:00
Setting . create_if_not_exists (
title : 'Ticket Subject Size' ,
name : 'ticket_subject_size' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Max. length of the subject in an email reply.' ,
2016-07-16 22:18:08 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'ticket_subject_size' ,
tag : 'input' ,
} ,
] ,
} ,
state : '110' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_email' ] ,
} ,
2016-07-16 22:18:08 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Ticket Subject Reply' ,
name : 'ticket_subject_re' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'The text at the beginning of the subject in an email reply, e. g. RE, AW, or AS.' ,
2016-07-16 22:18:08 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'ticket_subject_re' ,
tag : 'input' ,
} ,
] ,
} ,
state : 'RE' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_email' ] ,
} ,
2016-07-16 22:18:08 +00:00
frontend : false
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Sender Format' ,
name : 'ticket_define_email_from' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Defines how the From field of emails (sent from answers and email tickets) should look like.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-12-01 13:13:00 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'ticket_define_email_from' ,
tag : 'select' ,
options : {
SystemAddressName : 'System Address Display Name' ,
AgentNameSystemAddressName : 'Agent Name + FromSeparator + System Address Display Name' ,
2012-12-01 13:13:00 +00:00
} ,
} ,
] ,
} ,
2015-05-23 01:24:26 +00:00
state : 'AgentNameSystemAddressName' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-12-01 13:13:00 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-01-16 14:12:06 +00:00
title : 'Sender Format Separator' ,
name : 'ticket_define_email_from_separator' ,
2015-04-27 13:42:53 +00:00
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the separator between the agent\'s real name and the given group email address.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-12-01 13:13:00 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
2017-01-16 14:12:06 +00:00
name : 'ticket_define_email_from_separator' ,
2015-04-27 13:42:53 +00:00
tag : 'input' ,
2012-12-01 13:13:00 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'via' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-12-01 13:13:00 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Maximum Email Size' ,
2015-04-27 13:42:53 +00:00
name : 'postmaster_max_size' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Maximum size in MB of emails.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-13 13:51:10 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'postmaster_max_size' ,
tag : 'select' ,
options : {
2015-09-06 11:41:31 +00:00
1 = > ' 1' ,
2 = > ' 2' ,
3 = > ' 3' ,
4 = > ' 4' ,
5 = > ' 5' ,
6 = > ' 6' ,
7 = > ' 7' ,
8 = > ' 8' ,
9 = > ' 9' ,
10 = > ' 10' ,
15 = > ' 15' ,
20 = > ' 20' ,
25 = > ' 25' ,
30 = > ' 30' ,
35 = > ' 35' ,
40 = > ' 40' ,
45 = > ' 45' ,
50 = > ' 50' ,
60 = > ' 60' ,
70 = > ' 70' ,
80 = > ' 80' ,
90 = > ' 90' ,
100 = > '100' ,
125 = > '125' ,
150 = > '150' ,
2012-04-13 13:51:10 +00:00
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 10 ,
2016-08-26 10:06:27 +00:00
preferences : {
online_service_disable : true ,
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-13 13:51:10 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Additional follow-up detection' ,
2015-04-27 13:42:53 +00:00
name : 'postmaster_follow_up_search_in' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'By default the follow-up check is done via the subject of an email. With this setting you can add more fields for which the follow-up check will be executed.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-13 13:51:10 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'postmaster_follow_up_search_in' ,
tag : 'checkbox' ,
options : {
2015-09-12 23:04:31 +00:00
'references' = > 'References - Search for follow up also in In-Reply-To or References headers.' ,
'body' = > 'Body - Search for follow up also in mail body.' ,
'attachment' = > 'Attachment - Search for follow up also in attachments.' ,
2012-04-13 13:51:10 +00:00
} ,
} ,
] ,
} ,
2015-08-30 21:49:42 +00:00
state : [ ] ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-13 13:51:10 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Notification Sender' ,
name : 'notification_sender' ,
area : 'Email::Base' ,
description : 'Defines the sender of email notifications.' ,
options : {
form : [
2012-04-10 14:06:46 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'notification_sender' ,
tag : 'input' ,
2012-04-10 14:06:46 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'Notification Master <noreply@#{config.fqdn}>' ,
2016-08-26 10:06:27 +00:00
preferences : {
online_service_disable : true ,
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Block Notifications' ,
name : 'send_no_auto_response_reg_exp' ,
area : 'Email::Base' ,
2017-02-03 14:43:23 +00:00
description : 'If this regex matches, no notification will be sent by the sender.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-13 13:51:10 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'send_no_auto_response_reg_exp' ,
tag : 'input' ,
2012-04-13 13:51:10 +00:00
} ,
] ,
} ,
2016-05-27 12:11:36 +00:00
state : '(mailer-daemon|postmaster|abuse|root|noreply|noreply.+?|no-reply|no-reply.+?)@.+?\..+?' ,
2016-08-26 10:06:27 +00:00
preferences : {
online_service_disable : true ,
permission : [ 'admin.channel_email' ] ,
} ,
2015-04-27 13:42:53 +00:00
frontend : false
2012-04-13 13:51:10 +00:00
)
2016-11-23 14:25:44 +00:00
Setting . create_if_not_exists (
2016-07-28 10:09:32 +00:00
title : 'API Token Access' ,
name : 'api_token_access' ,
area : 'API::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Enable REST API using tokens (not username/email address and password). Each user needs to create its own access tokens in user profile.' ,
2016-07-28 10:09:32 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'api_token_access' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.api' ] ,
} ,
2016-07-28 10:09:32 +00:00
frontend : false
)
2016-11-23 14:25:44 +00:00
Setting . create_if_not_exists (
2016-07-28 10:09:32 +00:00
title : 'API Password Access' ,
name : 'api_password_access' ,
area : 'API::Base' ,
description : 'Enable REST API access using the username/email address and password for the authentication user.' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'api_password_access' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.api' ] ,
} ,
2016-07-28 10:09:32 +00:00
frontend : false
)
2016-11-23 14:25:44 +00:00
Setting . create_if_not_exists (
title : 'Monitoring Token' ,
name : 'monitoring_token' ,
area : 'HealthCheck::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Token for monitoring.' ,
2016-11-23 14:25:44 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'monitoring_token' ,
tag : 'input' ,
} ,
] ,
} ,
state : SecureRandom . urlsafe_base64 ( 40 ) ,
preferences : {
permission : [ 'admin.monitoring' ] ,
} ,
frontend : false
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Enable Chat' ,
name : 'chat' ,
area : 'Chat::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Enable/disable online chat.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-04-13 13:51:10 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'chat' ,
tag : 'boolean' ,
options : {
2012-04-13 13:51:10 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2016-08-17 22:37:06 +00:00
preferences : {
2016-08-26 10:06:27 +00:00
trigger : [ 'menu:render' , 'chat:rerender' ] ,
permission : [ 'admin.channel_chat' ] ,
2016-08-17 22:37:06 +00:00
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2012-04-13 13:51:10 +00:00
)
2016-01-06 00:45:03 +00:00
Setting . create_if_not_exists (
title : 'Agent idle timeout' ,
name : 'chat_agent_idle_timeout' ,
area : 'Chat::Extended' ,
2017-02-03 14:43:23 +00:00
description : 'Idle timeout in seconds until agent is set offline automatically.' ,
2016-01-06 00:45:03 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'chat_agent_idle_timeout' ,
tag : 'input' ,
} ,
] ,
} ,
state : '120' ,
2016-08-26 10:06:27 +00:00
preferences : {
permission : [ 'admin.channel_chat' ] ,
} ,
2016-01-06 00:45:03 +00:00
frontend : true
)
2015-08-16 09:14:24 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines searchable models.' ,
2015-08-16 09:14:24 +00:00
name : 'models_searchable' ,
area : 'Models::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the searchable models.' ,
2015-08-16 09:14:24 +00:00
options : { } ,
state : [ ] ,
2016-08-17 22:37:06 +00:00
preferences : {
authentication : true ,
} ,
2016-06-21 20:47:50 +00:00
frontend : true ,
2015-08-16 09:14:24 +00:00
)
2013-03-19 00:46:49 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Default Screen' ,
name : 'default_controller' ,
area : 'Core' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the default screen.' ,
2015-04-27 13:42:53 +00:00
options : { } ,
state : '#dashboard' ,
frontend : true
2013-03-19 00:46:49 +00:00
)
2015-07-01 01:08:01 +00:00
Setting . create_if_not_exists (
title : 'Elasticsearch Endpoint URL' ,
name : 'es_url' ,
area : 'SearchIndex::Elasticsearch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines endpoint of Elasticsearch.' ,
2015-07-01 01:08:01 +00:00
state : '' ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Elasticsearch Endpoint User' ,
name : 'es_user' ,
area : 'SearchIndex::Elasticsearch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines HTTP basic auth user of Elasticsearch.' ,
2015-07-01 01:08:01 +00:00
state : '' ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Elasticsearch Endpoint Password' ,
2015-07-01 01:08:01 +00:00
name : 'es_password' ,
area : 'SearchIndex::Elasticsearch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines HTTP basic auth password of Elasticsearch.' ,
2015-07-01 01:08:01 +00:00
state : '' ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Elasticsearch Endpoint Index' ,
2015-07-01 01:08:01 +00:00
name : 'es_index' ,
area : 'SearchIndex::Elasticsearch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines Elasticsearch index name.' ,
2015-07-01 01:08:01 +00:00
state : 'zammad' ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Elasticsearch Attachment Extensions' ,
2015-07-01 01:08:01 +00:00
name : 'es_attachment_ignore' ,
area : 'SearchIndex::Elasticsearch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines attachment extensions which will be ignored by Elasticsearch.' ,
2015-07-01 01:08:01 +00:00
state : [ '.png' , '.jpg' , '.jpeg' , '.mpeg' , '.mpg' , '.mov' , '.bin' , '.exe' , '.box' , '.mbox' ] ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Elasticsearch Attachment Size' ,
2015-07-01 01:08:01 +00:00
name : 'es_attachment_max_size_in_mb' ,
area : 'SearchIndex::Elasticsearch' ,
description : 'Define max. attachment size for Elasticsearch.' ,
state : 50 ,
2015-07-16 13:36:59 +00:00
preferences : { online_service_disable : true } ,
2015-07-01 01:08:01 +00:00
frontend : false
)
2013-01-04 18:42:20 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Import Mode' ,
name : 'import_mode' ,
area : 'Import::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Puts Zammad into import mode (disables some triggers).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2012-12-24 13:55:43 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'import_mode' ,
tag : 'boolean' ,
options : {
2012-12-24 13:55:43 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : false ,
frontend : true
2014-10-26 12:13:44 +00:00
)
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Import Backend' ,
name : 'import_backend' ,
area : 'Import::Base::Internal' ,
2017-02-03 14:43:23 +00:00
description : 'Set backend which is being used for import.' ,
2015-04-27 13:42:53 +00:00
options : { } ,
state : '' ,
frontend : true
2012-12-24 13:55:43 +00:00
)
2013-03-19 13:58:32 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Ignore Escalation/SLA Information' ,
name : 'import_ignore_sla' ,
area : 'Import::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Ignore escalation/SLA information for import.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-03-19 13:58:32 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'import_ignore_sla' ,
tag : 'boolean' ,
options : {
2013-03-19 13:58:32 +00:00
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : false ,
2016-06-21 20:47:50 +00:00
frontend : false
2013-03-19 13:58:32 +00:00
)
2012-12-24 13:55:43 +00:00
2013-01-07 09:30:07 +00:00
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Import Endpoint' ,
name : 'import_otrs_endpoint' ,
area : 'Import::OTRS' ,
2017-02-03 14:43:23 +00:00
description : 'Defines OTRS endpoint to import users, tickets, states and articles.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-01-07 09:30:07 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'import_otrs_endpoint' ,
tag : 'input' ,
2013-01-07 09:30:07 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : 'http://otrs_host/otrs' ,
frontend : false
2013-01-07 09:30:07 +00:00
)
Setting . create_if_not_exists (
2015-04-27 13:42:53 +00:00
title : 'Import Key' ,
name : 'import_otrs_endpoint_key' ,
area : 'Import::OTRS' ,
2017-02-03 14:43:23 +00:00
description : 'Defines OTRS endpoint authentication key.' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-01-07 09:30:07 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : false ,
name : 'import_otrs_endpoint_key' ,
tag : 'input' ,
2013-01-07 09:30:07 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : '' ,
frontend : false
2013-01-07 09:30:07 +00:00
)
2013-04-15 21:30:42 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Import User for HTTP basic authentication' ,
2015-04-27 13:42:53 +00:00
name : 'import_otrs_user' ,
area : 'Import::OTRS' ,
2017-02-03 14:43:23 +00:00
description : 'Defines HTTP basic authentication user (only if OTRS is protected via HTTP basic auth).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-04-15 21:30:42 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'import_otrs_user' ,
tag : 'input' ,
2013-04-15 21:30:42 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : '' ,
frontend : false
2013-04-15 21:30:42 +00:00
)
Setting . create_if_not_exists (
2015-12-17 18:15:50 +00:00
title : 'Import Password for http basic authentication' ,
2015-04-27 13:42:53 +00:00
name : 'import_otrs_password' ,
area : 'Import::OTRS' ,
2015-12-17 18:15:50 +00:00
description : 'Defines http basic authentication password (only if OTRS is protected via http basic auth).' ,
2015-04-27 13:42:53 +00:00
options : {
form : [
2013-04-15 21:30:42 +00:00
{
2015-04-27 13:42:53 +00:00
display : '' ,
null : true ,
name : 'import_otrs_password' ,
tag : 'input' ,
2013-04-15 21:30:42 +00:00
} ,
] ,
} ,
2015-04-27 13:42:53 +00:00
state : '' ,
frontend : false
2013-04-15 21:30:42 +00:00
)
2015-12-17 18:15:50 +00:00
Setting . create_if_not_exists (
title : 'Import Endpoint' ,
name : 'import_zendesk_endpoint' ,
area : 'Import::Zendesk' ,
description : 'Defines Zendesk endpoint to import users, ticket, states and articles.' ,
options : {
form : [
{
display : '' ,
null : false ,
name : 'import_zendesk_endpoint' ,
tag : 'input' ,
} ,
] ,
} ,
state : 'https://yours.zendesk.com/api/v2' ,
frontend : false
)
Setting . create_if_not_exists (
title : 'Import Key for requesting the Zendesk API' ,
name : 'import_zendesk_endpoint_key' ,
area : 'Import::Zendesk' ,
2017-02-03 14:43:23 +00:00
description : 'Defines Zendesk endpoint authentication key.' ,
2015-12-17 18:15:50 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'import_zendesk_endpoint_key' ,
tag : 'input' ,
} ,
] ,
} ,
state : '' ,
frontend : false
)
Setting . create_if_not_exists (
title : 'Import User for requesting the Zendesk API' ,
name : 'import_zendesk_endpoint_username' ,
area : 'Import::Zendesk' ,
2017-02-03 14:43:23 +00:00
description : 'Defines Zendesk endpoint authentication user.' ,
2015-12-17 18:15:50 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'import_zendesk_endpoint_username' ,
tag : 'input' ,
} ,
] ,
} ,
state : '' ,
frontend : false
)
2017-04-19 13:00:51 +00:00
Setting . create_if_not_exists (
title : 'Import Backends' ,
name : 'import_backends' ,
area : 'Import' ,
description : 'A list of active import backends that get scheduled automatically.' ,
options : { } ,
state : [ 'Import::Ldap' ] ,
preferences : {
permission : [ 'admin' ] ,
} ,
frontend : false
)
2015-12-17 18:15:50 +00:00
2017-01-16 13:34:44 +00:00
Setting . create_if_not_exists (
title : 'Time Accounting' ,
name : 'time_accounting' ,
area : 'Web::Base' ,
description : 'Enable time accounting.' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'time_accounting' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
preferences : {
authentication : true ,
permission : [ 'admin.time_accounting' ] ,
} ,
state : false ,
frontend : true
)
Setting . create_if_not_exists (
title : 'Time Accounting Selector' ,
name : 'time_accounting_selector' ,
area : 'Web::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Enable time accounting for these tickets.' ,
2017-01-16 13:34:44 +00:00
options : {
form : [
{ } ,
] ,
} ,
preferences : {
authentication : true ,
permission : [ 'admin.time_accounting' ] ,
} ,
state : { } ,
frontend : true
)
2016-06-02 06:58:10 +00:00
Setting . create_if_not_exists (
title : 'New Tags' ,
name : 'tag_new' ,
area : 'Web::Base' ,
2017-02-03 14:43:23 +00:00
description : 'Allow users to create new tags.' ,
2016-06-02 06:58:10 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'tag_new' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2016-08-17 22:37:06 +00:00
preferences : {
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.tag' ] ,
2016-08-17 22:37:06 +00:00
} ,
2016-06-02 06:58:10 +00:00
state : true ,
frontend : true
)
2015-06-26 12:00:10 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Default calendar tickets subscriptions' ,
2015-06-26 12:00:10 +00:00
name : 'defaults_calendar_subscriptions_tickets' ,
area : 'Defaults::CalendarSubscriptions' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the default calendar tickets subscription settings.' ,
2015-06-26 12:00:10 +00:00
options : { } ,
state : {
escalation : {
own : true ,
not_assigned : false ,
} ,
new_open : {
own : true ,
not_assigned : false ,
} ,
pending : {
own : true ,
not_assigned : false ,
}
} ,
2016-08-17 22:37:06 +00:00
preferences : {
authentication : true ,
} ,
2015-06-26 12:00:10 +00:00
frontend : true
)
2015-09-26 13:56:55 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines translator identifier.' ,
2015-09-26 13:56:55 +00:00
name : 'translator_key' ,
area : 'i18n::translator_key' ,
description : 'Defines the translator identifier for contributions.' ,
options : { } ,
state : '' ,
frontend : false
)
2016-04-12 07:25:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '0010_postmaster_filter_trusted' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to remove X-Zammad headers from not trusted sources.' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::Trusted' ,
frontend : false
)
2016-08-19 09:07:53 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-08-19 09:07:53 +00:00
name : '0012_postmaster_filter_sender_is_system_address' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to check if email has been created by Zammad itself and will set the article sender.' ,
2016-08-19 09:07:53 +00:00
options : { } ,
state : 'Channel::Filter::SenderIsSystemAddress' ,
frontend : false
)
2017-02-03 15:44:55 +00:00
Setting . create_if_not_exists (
2017-02-03 16:42:57 +00:00
title : 'Defines postmaster filter.' ,
2017-02-03 15:44:55 +00:00
name : '0014_postmaster_filter_own_notification_loop_detection' ,
area : 'Postmaster::PreFilter' ,
description : 'Define postmaster filter to check if email is a own created notification email, then ignore it to prevent email loops.' ,
options : { } ,
state : 'Channel::Filter::OwnNotificationLoopDetection' ,
frontend : false
)
2016-04-12 11:44:28 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 11:44:28 +00:00
name : '0015_postmaster_filter_identify_sender' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to identify sender user.' ,
2016-04-12 11:44:28 +00:00
options : { } ,
state : 'Channel::Filter::IdentifySender' ,
frontend : false
)
2016-04-12 07:25:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '0020_postmaster_filter_auto_response_check' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to identify auto responses to prevent auto replies from Zammad.' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::AutoResponseCheck' ,
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '0030_postmaster_filter_out_of_office_check' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to identify out-of-office emails for follow-up detection and keeping current ticket state.' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::OutOfOfficeCheck' ,
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '0100_postmaster_filter_follow_up_check' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to identify follow-ups (based on admin settings).' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::FollowUpCheck' ,
frontend : false
)
2017-01-31 08:56:59 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2017-01-31 08:56:59 +00:00
name : '0200_postmaster_filter_follow_up_possible_check' ,
area : 'Postmaster::PreFilter' ,
description : 'Define postmaster filter to check if follow ups get created (based on admin settings).' ,
options : { } ,
state : 'Channel::Filter::FollowUpPossibleCheck' ,
frontend : false
)
2016-04-12 07:25:20 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '0900_postmaster_filter_bounce_check' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to identify postmaster bounced - to handle it as follow-up of the original ticket.' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::BounceCheck' ,
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 07:25:20 +00:00
name : '1000_postmaster_filter_database_check' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter for filters managed via admin interface.' ,
2016-04-12 07:25:20 +00:00
options : { } ,
state : 'Channel::Filter::Database' ,
frontend : false
)
2016-04-12 11:44:28 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 12:56:41 +00:00
name : '5000_postmaster_filter_icinga' ,
2016-04-12 11:44:28 +00:00
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to manage Icinga (http://www.icinga.org) emails.' ,
2016-04-12 11:44:28 +00:00
options : { } ,
state : 'Channel::Filter::Icinga' ,
frontend : false
)
2016-04-12 13:32:45 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines postmaster filter.' ,
2016-04-12 13:32:45 +00:00
name : '5100_postmaster_filter_nagios' ,
area : 'Postmaster::PreFilter' ,
2017-02-03 14:43:23 +00:00
description : 'Defines postmaster filter to manage Nagios (http://www.nagios.org) emails.' ,
2016-04-12 13:32:45 +00:00
options : { } ,
state : 'Channel::Filter::Nagios' ,
frontend : false
)
2016-04-12 11:44:28 +00:00
Setting . create_if_not_exists (
title : 'Icinga integration' ,
2016-04-12 12:56:41 +00:00
name : 'icinga_integration' ,
2016-04-15 21:56:10 +00:00
area : 'Integration::Switch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if Icinga (http://www.icinga.org) is enabled or not.' ,
2016-04-12 11:44:28 +00:00
options : {
form : [
{
display : '' ,
null : true ,
2016-04-12 12:56:41 +00:00
name : 'icinga_integration' ,
2016-04-12 11:44:28 +00:00
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 11:44:28 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Sender' ,
2016-04-12 12:56:41 +00:00
name : 'icinga_sender' ,
2016-04-12 11:44:28 +00:00
area : 'Integration::Icinga' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the sender email address of Icinga emails.' ,
2016-04-12 11:44:28 +00:00
options : {
form : [
{
display : '' ,
null : false ,
2016-04-12 12:56:41 +00:00
name : 'icinga_sender' ,
2016-04-12 11:44:28 +00:00
tag : 'input' ,
2016-04-15 21:56:10 +00:00
placeholder : 'icinga@monitoring.example.com' ,
2016-04-12 11:44:28 +00:00
} ,
] ,
} ,
state : 'icinga@monitoring.example.com' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 11:44:28 +00:00
frontend : false ,
)
Setting . create_if_not_exists (
title : 'Auto close' ,
2016-04-12 12:56:41 +00:00
name : 'icinga_auto_close' ,
2016-04-12 11:44:28 +00:00
area : 'Integration::Icinga' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if tickets should be closed if service is recovered.' ,
2016-04-12 11:44:28 +00:00
options : {
form : [
{
display : '' ,
null : true ,
2016-04-12 12:56:41 +00:00
name : 'icinga_auto_close' ,
2016-04-12 11:44:28 +00:00
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 3 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 11:44:28 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Auto close state' ,
2016-04-12 12:56:41 +00:00
name : 'icinga_auto_close_state_id' ,
2016-04-12 11:44:28 +00:00
area : 'Integration::Icinga' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the state of auto closed tickets.' ,
2016-04-12 11:44:28 +00:00
options : {
form : [
{
display : '' ,
null : false ,
2016-04-12 12:56:41 +00:00
name : 'icinga_auto_close_state_id' ,
2016-04-12 11:44:28 +00:00
tag : 'select' ,
relation : 'TicketState' ,
} ,
] ,
} ,
state : 4 ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 4 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 11:44:28 +00:00
frontend : false
)
2016-04-12 13:32:45 +00:00
Setting . create_if_not_exists (
title : 'Nagios integration' ,
name : 'nagios_integration' ,
2016-04-15 21:56:10 +00:00
area : 'Integration::Switch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if Nagios (http://www.nagios.org) is enabled or not.' ,
2016-04-12 13:32:45 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'nagios_integration' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 13:32:45 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Sender' ,
name : 'nagios_sender' ,
area : 'Integration::Nagios' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the sender email address of Nagios emails.' ,
2016-04-12 13:32:45 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'nagios_sender' ,
tag : 'input' ,
2016-04-15 21:56:10 +00:00
placeholder : 'nagios@monitoring.example.com' ,
2016-04-12 13:32:45 +00:00
} ,
] ,
} ,
state : 'nagios@monitoring.example.com' ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 13:32:45 +00:00
frontend : false ,
)
Setting . create_if_not_exists (
title : 'Auto close' ,
name : 'nagios_auto_close' ,
area : 'Integration::Nagios' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if tickets should be closed if service is recovered.' ,
2016-04-12 13:32:45 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'nagios_auto_close' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : true ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 3 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 13:32:45 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Auto close state' ,
name : 'nagios_auto_close_state_id' ,
area : 'Integration::Nagios' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the state of auto closed tickets.' ,
2016-04-12 13:32:45 +00:00
options : {
form : [
{
display : '' ,
null : false ,
name : 'nagios_auto_close_state_id' ,
tag : 'select' ,
relation : 'TicketState' ,
} ,
] ,
} ,
state : 4 ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 4 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-12 13:32:45 +00:00
frontend : false
)
2017-04-19 10:09:54 +00:00
Setting . create_if_not_exists (
title : 'LDAP integration' ,
name : 'ldap_integration' ,
area : 'Integration::Switch' ,
description : 'Defines if LDAP is enabled or not.' ,
options : {
form : [
{
display : '' ,
null : true ,
name : 'ldap_integration' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
preferences : {
prio : 1 ,
authentication : true ,
permission : [ 'admin.integration' ] ,
} ,
frontend : true
)
Setting . create_if_not_exists (
title : 'LDAP config' ,
name : 'ldap_config' ,
area : 'Integration::LDAP' ,
description : 'Defines the LDAP config.' ,
options : { } ,
state : { } ,
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
frontend : false ,
)
2016-05-03 00:36:44 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines sync transaction backend.' ,
2016-05-03 00:36:44 +00:00
name : '0100_trigger' ,
area : 'Transaction::Backend::Sync' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend to execute triggers.' ,
2016-05-03 00:36:44 +00:00
options : { } ,
state : 'Transaction::Trigger' ,
frontend : false
)
2016-04-15 21:56:10 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-04-15 21:56:10 +00:00
name : '0100_notification' ,
2016-05-03 00:36:44 +00:00
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend to send agent notifications.' ,
2016-04-15 21:56:10 +00:00
options : { } ,
state : 'Transaction::Notification' ,
frontend : false
)
2016-04-22 06:55:10 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-04-22 06:55:10 +00:00
name : '1000_signature_detection' ,
2016-05-03 00:36:44 +00:00
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend to detect customer signatures in emails.' ,
2016-04-22 06:55:10 +00:00
options : { } ,
state : 'Transaction::SignatureDetection' ,
frontend : false
)
2016-04-15 21:56:10 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-04-15 21:56:10 +00:00
name : '6000_slack_webhook' ,
2016-05-03 00:36:44 +00:00
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend which posts messages to Slack (http://www.slack.com).' ,
2016-04-15 21:56:10 +00:00
options : { } ,
state : 'Transaction::Slack' ,
frontend : false
)
Setting . create_if_not_exists (
title : 'Slack integration' ,
name : 'slack_integration' ,
area : 'Integration::Switch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if Slack (http://www.slack.org) is enabled or not.' ,
2016-04-15 21:56:10 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'slack_integration' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
2016-04-16 09:13:12 +00:00
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-15 21:56:10 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Slack config' ,
name : 'slack_config' ,
area : 'Integration::Slack' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the slack config.' ,
2016-04-15 21:56:10 +00:00
options : { } ,
state : {
items : [ ]
} ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-15 21:56:10 +00:00
frontend : false ,
)
2016-04-21 07:36:25 +00:00
Setting . create_if_not_exists (
title : 'sipgate.io integration' ,
name : 'sipgate_integration' ,
area : 'Integration::Switch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if sipgate.io (http://www.sipgate.io) is enabled or not.' ,
2016-04-21 07:36:25 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'sipgate_integration' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
2016-08-17 22:37:06 +00:00
preferences : {
prio : 1 ,
trigger : [ 'menu:render' , 'cti:reload' ] ,
authentication : true ,
2016-08-26 10:06:27 +00:00
permission : [ 'admin.integration' ] ,
2016-08-17 22:37:06 +00:00
} ,
frontend : true
2016-04-21 07:36:25 +00:00
)
Setting . create_if_not_exists (
title : 'sipgate.io config' ,
name : 'sipgate_config' ,
area : 'Integration::Sipgate' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the sipgate.io config.' ,
2016-04-21 07:36:25 +00:00
options : { } ,
state : { } ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-21 07:36:25 +00:00
frontend : false ,
)
2016-04-25 23:04:59 +00:00
Setting . create_if_not_exists (
title : 'Clearbit integration' ,
name : 'clearbit_integration' ,
area : 'Integration::Switch' ,
2017-02-03 14:43:23 +00:00
description : 'Defines if Clearbit (http://www.clearbit.com) is enabled or not.' ,
2016-04-25 23:04:59 +00:00
options : {
form : [
{
display : '' ,
null : true ,
name : 'clearbit_integration' ,
tag : 'boolean' ,
options : {
true = > 'yes' ,
false = > 'no' ,
} ,
} ,
] ,
} ,
state : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 1 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-25 23:04:59 +00:00
frontend : false
)
Setting . create_if_not_exists (
title : 'Clearbit config' ,
name : 'clearbit_config' ,
area : 'Integration::Clearbit' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the Clearbit config.' ,
2016-04-25 23:04:59 +00:00
options : { } ,
state : { } ,
frontend : false ,
2016-08-26 10:06:27 +00:00
preferences : {
prio : 2 ,
permission : [ 'admin.integration' ] ,
} ,
2016-04-25 23:04:59 +00:00
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-04-25 23:04:59 +00:00
name : '9000_clearbit_enrichment' ,
2016-05-03 00:36:44 +00:00
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend which will enrich customer and organization information from Clearbit (http://www.clearbit.com).' ,
2016-04-25 23:04:59 +00:00
options : { } ,
state : 'Transaction::ClearbitEnrichment' ,
frontend : false
)
2016-04-29 08:23:12 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-04-29 08:23:12 +00:00
name : '9100_cti_caller_id_detection' ,
2016-05-03 00:36:44 +00:00
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend which detects caller IDs in objects and store them for CTI lookups.' ,
2016-04-29 08:23:12 +00:00
options : { } ,
state : 'Transaction::CtiCallerIdDetection' ,
frontend : false
)
2016-07-10 22:47:21 +00:00
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines transaction backend.' ,
2016-07-10 22:47:21 +00:00
name : '9200_karma' ,
area : 'Transaction::Backend::Async' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the transaction backend which creates the karma score.' ,
2016-07-10 22:47:21 +00:00
options : { } ,
state : 'Transaction::Karma' ,
frontend : false
)
Setting . create_if_not_exists (
2017-02-03 14:43:23 +00:00
title : 'Defines karma levels.' ,
2016-07-10 22:47:21 +00:00
name : 'karma_levels' ,
area : 'Core::Karma' ,
2017-02-03 14:43:23 +00:00
description : 'Defines the karma levels.' ,
2016-07-10 22:47:21 +00:00
options : { } ,
state : [
{
name : 'Beginner' ,
start : 0 ,
end : 499 ,
} ,
{
name : 'Newbie' ,
start : 500 ,
end : 1999 ,
} ,
{
name : 'Intermediate' ,
start : 2000 ,
end : 4999 ,
} ,
{
name : 'Professional' ,
start : 5000 ,
end : 6999 ,
} ,
{
name : 'Expert' ,
start : 7000 ,
end : 8999 ,
} ,
{
name : 'Master' ,
start : 9000 ,
2016-07-10 22:48:46 +00:00
end : 18_999 ,
2016-07-10 22:47:21 +00:00
} ,
{
name : 'Evangelist' ,
2016-07-10 22:48:46 +00:00
start : 19_000 ,
end : 45_999 ,
2016-07-10 22:47:21 +00:00
} ,
{
name : 'Hero' ,
2016-07-10 22:48:46 +00:00
start : 50_000 ,
2016-07-10 22:47:21 +00:00
end : nil ,
} ,
] ,
frontend : false
)
2017-04-18 07:38:53 +00:00
Setting . create_if_not_exists (
title : 'Set limit of agents' ,
name : 'system_agent_limit' ,
area : 'Core::Online' ,
description : 'Defines the limit of the agents.' ,
options : { } ,
state : false ,
preferences : { online_service_disable : true } ,
frontend : false
)
2016-07-10 22:47:21 +00:00
2013-01-04 18:42:20 +00:00
signature = Signature . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'default' ,
body : '
2012-11-22 14:40:51 +00:00
#{user.firstname} #{user.lastname}
- -
Super Support - Waterford Business Park
5201 Blue Lagoon Drive - 8 th Floor & 9 th Floor - Miami , 33126 USA
Email : hot @example . com - Web : http : / / www . example . com /
2016-02-10 23:53:48 +00:00
- - ' . text2html ,
2015-04-27 13:42:53 +00:00
updated_by_id : 1 ,
created_by_id : 1
2012-11-22 14:40:51 +00:00
)
2012-04-13 13:51:10 +00:00
2013-01-04 18:42:20 +00:00
Role . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'Admin' ,
note : 'To configure your system.' ,
2016-08-12 17:58:02 +00:00
preferences : {
not : [ 'Customer' ] ,
} ,
default_at_signup : false ,
2015-04-27 13:42:53 +00:00
updated_by_id : 1 ,
created_by_id : 1
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Role . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 2 ,
name : 'Agent' ,
note : 'To work on Tickets.' ,
2016-08-12 17:58:02 +00:00
default_at_signup : false ,
preferences : {
not : [ 'Customer' ] ,
} ,
2015-04-27 13:42:53 +00:00
updated_by_id : 1 ,
created_by_id : 1
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Role . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 3 ,
name : 'Customer' ,
note : 'People who create Tickets ask for help.' ,
2016-08-12 17:58:02 +00:00
preferences : {
not : %w( Agent Admin ) ,
} ,
default_at_signup : true ,
2015-04-27 13:42:53 +00:00
updated_by_id : 1 ,
created_by_id : 1
2012-04-10 14:06:46 +00:00
)
2016-08-12 16:39:09 +00:00
Permission . create_if_not_exists (
name : 'admin' ,
note : 'Admin Interface' ,
preferences : { } ,
2015-11-05 15:25:20 +00:00
)
2016-08-12 16:39:09 +00:00
Permission . create_if_not_exists (
name : 'admin.user' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Users' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.group' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Groups' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.role' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Roles' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.organization' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Organizations' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.overview' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Overviews' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.text_module' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Text Modules' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.macro' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Macros' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.tag' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Tags' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.calendar' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Calendar' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.sla' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'SLA' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.scheduler' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Scheduler' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.report_profile' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Report Profiles' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.channel_web' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Web' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.channel_formular' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Formular' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.channel_email' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Email' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.channel_twitter' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Twitter' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.channel_facebook' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Facebook' ]
} ,
)
2017-02-15 02:35:22 +00:00
Permission . create_if_not_exists (
name : 'admin.channel_telegram' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Telegram' ]
} ,
)
2016-08-12 16:39:09 +00:00
Permission . create_if_not_exists (
name : 'admin.channel_chat' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Channel - Chat' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.branding' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Branding' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.setting_system' ,
note : 'Manage %s Settings' ,
preferences : {
translations : [ 'System' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.security' ,
note : 'Manage %s Settings' ,
preferences : {
translations : [ 'Security' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.ticket' ,
note : 'Manage %s Settings' ,
preferences : {
translations : [ 'Ticket' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.package' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Packages' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.integration' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Integrations' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.api' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'API' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.object' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Objects' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.translation' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Translations' ]
} ,
)
2016-11-23 14:25:44 +00:00
Permission . create_if_not_exists (
name : 'admin.monitoring' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Monitoring' ]
} ,
)
2016-08-12 16:39:09 +00:00
Permission . create_if_not_exists (
name : 'admin.maintenance' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Maintenance' ]
} ,
)
Permission . create_if_not_exists (
name : 'admin.session' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Sessions' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences' ,
note : 'User Preferences' ,
preferences : { } ,
)
Permission . create_if_not_exists (
name : 'user_preferences.password' ,
note : 'Change %s' ,
preferences : {
translations : [ 'Password' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.notifications' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Notifications' ] ,
required : [ 'ticket.agent' ] ,
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.access_token' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Token Access' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.language' ,
note : 'Change %s' ,
preferences : {
translations : [ 'Language' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.linked_accounts' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Linked Accounts' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.device' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Devices' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.avatar' ,
note : 'Manage %s' ,
preferences : {
translations : [ 'Avatar' ]
} ,
)
Permission . create_if_not_exists (
name : 'user_preferences.calendar' ,
note : 'Access to %s' ,
preferences : {
translations : [ 'Calendars' ] ,
required : [ 'ticket.agent' ] ,
} ,
2016-04-23 09:04:33 +00:00
)
2012-04-10 14:06:46 +00:00
2016-08-12 16:39:09 +00:00
Permission . create_if_not_exists (
name : 'report' ,
note : 'Report Interface' ,
preferences : { } ,
)
Permission . create_if_not_exists (
name : 'ticket' ,
note : 'Ticket Interface' ,
preferences : {
disabled : true
} ,
)
Permission . create_if_not_exists (
name : 'ticket.agent' ,
note : 'Access to Agent Tickets based on Group Access' ,
preferences : {
not : [ 'ticket.customer' ] ,
plugin : [ 'groups' ]
} ,
)
Permission . create_if_not_exists (
name : 'ticket.customer' ,
note : 'Access to Customer Tickets based on current_user.id and current_user.organization_id' ,
preferences : {
not : [ 'ticket.agent' ] ,
} ,
)
Permission . create_if_not_exists (
name : 'chat' ,
note : 'Access to %s' ,
preferences : {
translations : [ 'Chat' ]
} ,
)
Permission . create_if_not_exists (
name : 'chat.agent' ,
note : 'Access to %s' ,
preferences : {
translations : [ 'Chat' ] ,
not : [ 'chat.customer' ] ,
} ,
)
Permission . create_if_not_exists (
name : 'cti' ,
note : 'CTI' ,
preferences : {
disabled : true
} ,
)
Permission . create_if_not_exists (
name : 'cti.agent' ,
note : 'Access to %s' ,
preferences : {
translations : [ 'CTI' ] ,
not : [ 'cti.customer' ] ,
} ,
)
admin = Role . find_by ( name : 'Admin' )
2017-02-24 13:47:55 +00:00
admin . permission_grant ( 'user_preferences' )
admin . permission_grant ( 'admin' )
admin . permission_grant ( 'report' )
2016-08-12 16:39:09 +00:00
agent = Role . find_by ( name : 'Agent' )
2017-02-24 13:47:55 +00:00
agent . permission_grant ( 'user_preferences' )
agent . permission_grant ( 'ticket.agent' )
agent . permission_grant ( 'chat.agent' )
agent . permission_grant ( 'cti.agent' )
2016-08-12 16:39:09 +00:00
customer = Role . find_by ( name : 'Customer' )
2017-02-24 13:47:55 +00:00
customer . permission_grant ( 'user_preferences.password' )
customer . permission_grant ( 'user_preferences.language' )
customer . permission_grant ( 'user_preferences.linked_accounts' )
customer . permission_grant ( 'user_preferences.avatar' )
customer . permission_grant ( 'ticket.customer' )
2016-08-12 16:39:09 +00:00
2013-01-04 18:42:20 +00:00
Group . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'Users' ,
signature_id : signature . id ,
note : 'Standard Group/Pool for Tickets.' ,
updated_by_id : 1 ,
created_by_id : 1
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
user = User . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
login : '-' ,
firstname : '-' ,
lastname : '' ,
email : '' ,
active : false ,
updated_by_id : 1 ,
created_by_id : 1
2012-04-10 14:06:46 +00:00
)
2014-11-07 00:08:04 +00:00
2013-04-20 08:52:17 +00:00
UserInfo . current_user_id = 1
2016-02-29 23:52:51 +00:00
roles = Role . find_by ( name : 'Customer' )
2014-11-07 00:08:04 +00:00
organizations = Organization . all
groups = Group . all
org_community = Organization . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'Zammad Foundation' ,
2014-11-07 00:08:04 +00:00
)
user_community = User . create_or_update (
2015-04-27 13:42:53 +00:00
id : 2 ,
login : 'nicole.braun@zammad.org' ,
firstname : 'Nicole' ,
lastname : 'Braun' ,
email : 'nicole.braun@zammad.org' ,
password : '' ,
active : true ,
2016-02-29 23:55:40 +00:00
roles : [ roles ] ,
2015-04-27 13:42:53 +00:00
organization_id : org_community . id ,
2012-07-07 09:09:09 +00:00
)
2012-04-10 14:06:46 +00:00
2016-02-29 23:52:51 +00:00
Link :: Type . create_if_not_exists ( id : 1 , name : 'normal' )
Link :: Object . create_if_not_exists ( id : 1 , name : 'Ticket' )
Link :: Object . create_if_not_exists ( id : 2 , name : 'Announcement' )
Link :: Object . create_if_not_exists ( id : 3 , name : 'Question/Answer' )
Link :: Object . create_if_not_exists ( id : 4 , name : 'Idea' )
Link :: Object . create_if_not_exists ( id : 5 , name : 'Bug' )
2016-03-07 06:46:11 +00:00
Ticket :: StateType . create_if_not_exists ( id : 1 , name : 'new' )
Ticket :: StateType . create_if_not_exists ( id : 2 , name : 'open' )
2016-02-29 23:52:51 +00:00
Ticket :: StateType . create_if_not_exists ( id : 3 , name : 'pending reminder' )
Ticket :: StateType . create_if_not_exists ( id : 4 , name : 'pending action' )
Ticket :: StateType . create_if_not_exists ( id : 5 , name : 'closed' )
Ticket :: StateType . create_if_not_exists ( id : 6 , name : 'merged' )
Ticket :: StateType . create_if_not_exists ( id : 7 , name : 'removed' )
2017-02-12 17:21:03 +00:00
Ticket :: State . create_if_not_exists (
id : 1 ,
name : 'new' ,
state_type_id : Ticket :: StateType . find_by ( name : 'new' ) . id ,
default_create : true ,
)
Ticket :: State . create_if_not_exists (
id : 2 ,
name : 'open' ,
state_type_id : Ticket :: StateType . find_by ( name : 'open' ) . id ,
default_follow_up : true ,
)
Ticket :: State . create_if_not_exists (
id : 3 ,
name : 'pending reminder' ,
state_type_id : Ticket :: StateType . find_by ( name : 'pending reminder' ) . id ,
ignore_escalation : true ,
)
Ticket :: State . create_if_not_exists (
id : 4 ,
name : 'closed' ,
state_type_id : Ticket :: StateType . find_by ( name : 'closed' ) . id ,
ignore_escalation : true ,
)
Ticket :: State . create_if_not_exists (
id : 5 ,
name : 'merged' ,
state_type_id : Ticket :: StateType . find_by ( name : 'merged' ) . id ,
ignore_escalation : true ,
)
Ticket :: State . create_if_not_exists (
id : 6 ,
name : 'removed' ,
state_type_id : Ticket :: StateType . find_by ( name : 'removed' ) . id ,
active : false ,
ignore_escalation : true ,
)
Ticket :: State . create_if_not_exists (
id : 7 ,
name : 'pending close' ,
state_type_id : Ticket :: StateType . find_by ( name : 'pending action' ) . id ,
next_state_id : Ticket :: State . find_by ( name : 'closed' ) . id ,
ignore_escalation : true ,
)
2016-02-29 23:52:51 +00:00
Ticket :: Priority . create_if_not_exists ( id : 1 , name : '1 low' )
2017-02-12 17:21:03 +00:00
Ticket :: Priority . create_if_not_exists ( id : 2 , name : '2 normal' , default_create : true )
2016-02-29 23:52:51 +00:00
Ticket :: Priority . create_if_not_exists ( id : 3 , name : '3 high' )
Ticket :: Article :: Type . create_if_not_exists ( id : 1 , name : 'email' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 2 , name : 'sms' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 3 , name : 'chat' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 4 , name : 'fax' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 5 , name : 'phone' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 6 , name : 'twitter status' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 7 , name : 'twitter direct-message' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 8 , name : 'facebook feed post' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 9 , name : 'facebook feed comment' , communication : true )
Ticket :: Article :: Type . create_if_not_exists ( id : 10 , name : 'note' , communication : false )
Ticket :: Article :: Type . create_if_not_exists ( id : 11 , name : 'web' , communication : true )
2017-02-15 02:35:22 +00:00
Ticket :: Article :: Type . create_if_not_exists ( id : 12 , name : 'telegram personal-message' , communication : true )
2016-02-29 23:52:51 +00:00
Ticket :: Article :: Sender . create_if_not_exists ( id : 1 , name : 'Agent' )
Ticket :: Article :: Sender . create_if_not_exists ( id : 2 , name : 'Customer' )
Ticket :: Article :: Sender . create_if_not_exists ( id : 3 , name : 'System' )
2012-04-10 14:06:46 +00:00
2015-10-15 13:23:41 +00:00
Macro . create_if_not_exists (
name : 'Close & Tag as Spam' ,
perform : {
2016-01-15 17:22:57 +00:00
'ticket.state_id' = > {
2017-04-25 09:04:41 +00:00
value : Ticket :: State . by_category ( :closed ) . first . id ,
2015-10-15 13:23:41 +00:00
} ,
2016-01-15 17:22:57 +00:00
'ticket.tags' = > {
2015-10-15 13:23:41 +00:00
operator : 'add' ,
value : 'spam' ,
} ,
2016-03-13 22:58:46 +00:00
'ticket.owner_id' = > {
pre_condition : 'current_user.id' ,
value : '' ,
} ,
2015-10-15 13:23:41 +00:00
} ,
note : 'example macro' ,
active : true ,
)
2013-04-20 08:52:17 +00:00
UserInfo . current_user_id = user_community . id
2012-04-13 13:51:10 +00:00
ticket = Ticket . create (
2016-02-29 23:52:51 +00:00
group_id : Group . find_by ( name : 'Users' ) . id ,
customer_id : User . find_by ( login : 'nicole.braun@zammad.org' ) . id ,
2015-04-27 13:42:53 +00:00
title : 'Welcome to Zammad!' ,
2012-04-13 13:51:10 +00:00
)
Ticket :: Article . create (
2015-04-27 13:42:53 +00:00
ticket_id : ticket . id ,
2016-02-29 23:52:51 +00:00
type_id : Ticket :: Article :: Type . find_by ( name : 'phone' ) . id ,
sender_id : Ticket :: Article :: Sender . find_by ( name : 'Customer' ) . id ,
2015-04-27 13:42:53 +00:00
from : 'Zammad Feedback <feedback@zammad.org>' ,
body : ' Welcome !
2012-04-10 14:06:46 +00:00
2016-02-29 23:52:51 +00:00
Thank you for choosing Zammad .
2012-04-10 14:06:46 +00:00
2016-10-21 15:44:35 +00:00
You will find updates and patches at https : / / zammad . org / . Online
documentation is available at https : / / zammad . org / documentation . Get
involved ( discussions , contributing , ... ) at https : / / zammad . org / participate .
2012-04-13 13:51:10 +00:00
Regards ,
2016-10-19 03:20:00 +00:00
Your Zammad Team
2012-04-13 13:51:10 +00:00
' ,
2015-04-27 13:42:53 +00:00
internal : false ,
2012-04-13 13:51:10 +00:00
)
2012-04-10 14:06:46 +00:00
2013-04-20 08:52:17 +00:00
UserInfo . current_user_id = 1
2016-02-29 23:52:51 +00:00
overview_role = Role . find_by ( name : 'Agent' )
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-04-27 13:42:53 +00:00
name : 'My assigned Tickets' ,
link : 'my_assigned' ,
prio : 1000 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :open ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.owner_id' = > {
operator : 'is' ,
2015-10-14 14:33:26 +00:00
pre_condition : 'current_user.id' ,
2015-09-17 18:39:51 +00:00
} ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'ASC' ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer group created_at ) ,
s : %w( title customer group created_at ) ,
m : %w( number title customer group created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-11-05 15:25:20 +00:00
name : 'Unassigned & Open' ,
link : 'all_unassigned' ,
2015-04-27 13:42:53 +00:00
prio : 1010 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :work_on_all ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.owner_id' = > {
operator : 'is' ,
2016-04-12 07:25:20 +00:00
pre_condition : 'not_set' ,
2015-09-17 18:39:51 +00:00
} ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'ASC' ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer group created_at ) ,
s : %w( title customer group created_at ) ,
m : %w( number title customer group created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-11-05 15:25:20 +00:00
name : 'My pending reached Tickets' ,
link : 'my_pending_reached' ,
2015-04-27 13:42:53 +00:00
prio : 1020 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :pending_reminder ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.owner_id' = > {
operator : 'is' ,
2015-11-05 15:25:20 +00:00
pre_condition : 'current_user.id' ,
} ,
'ticket.pending_time' = > {
operator : 'within next (relative)' ,
value : 0 ,
range : 'minute' ,
2015-09-17 18:39:51 +00:00
} ,
2012-08-02 20:23:57 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'ASC' ,
2012-08-02 20:23:57 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer group created_at ) ,
s : %w( title customer group created_at ) ,
m : %w( number title customer group created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-11-05 15:25:20 +00:00
name : 'Open' ,
2015-04-27 13:42:53 +00:00
link : 'all_open' ,
prio : 1030 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :work_on_all ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'ASC' ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer group state owner created_at ) ,
s : %w( title customer group state owner created_at ) ,
m : %w( number title customer group state owner created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-04-10 14:06:46 +00:00
)
2015-01-26 06:55:14 +00:00
Overview . create_if_not_exists (
2015-11-05 15:25:20 +00:00
name : 'Pending reached' ,
2015-04-27 13:42:53 +00:00
link : 'all_pending_reached' ,
2015-11-05 15:25:20 +00:00
prio : 1040 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :pending_reminder ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.pending_time' = > {
2015-10-12 21:12:44 +00:00
operator : 'within next (relative)' ,
value : 0 ,
range : 'minute' ,
2015-09-17 18:39:51 +00:00
} ,
2015-01-26 06:55:14 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'ASC' ,
2015-01-26 06:55:14 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer group owner created_at ) ,
s : %w( title customer group owner created_at ) ,
m : %w( number title customer group owner created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2015-01-26 06:55:14 +00:00
} ,
)
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-11-05 15:25:20 +00:00
name : 'Escalated' ,
2015-04-27 13:42:53 +00:00
link : 'all_escalated' ,
2015-11-05 15:25:20 +00:00
prio : 1050 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2016-09-14 07:15:30 +00:00
'ticket.escalation_at' = > {
2015-10-12 21:12:44 +00:00
operator : 'within next (relative)' ,
value : '10' ,
range : 'minute' ,
2015-09-17 18:39:51 +00:00
} ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
2016-09-14 07:15:30 +00:00
by : 'escalation_at' ,
2015-04-27 13:42:53 +00:00
direction : 'ASC' ,
2012-04-10 14:06:46 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2016-09-14 07:15:30 +00:00
d : %w( title customer group owner escalation_at ) ,
s : %w( title customer group owner escalation_at ) ,
m : %w( number title customer group owner escalation_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-04-10 14:06:46 +00:00
)
2016-02-29 23:52:51 +00:00
overview_role = Role . find_by ( name : 'Customer' )
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-04-27 13:42:53 +00:00
name : 'My Tickets' ,
link : 'my_tickets' ,
2015-11-05 15:25:20 +00:00
prio : 1100 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :viewable ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.customer_id' = > {
operator : 'is' ,
2015-10-14 14:33:26 +00:00
pre_condition : 'current_user.id' ,
2015-09-17 18:39:51 +00:00
} ,
2012-09-04 21:28:49 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'DESC' ,
2012-09-04 21:28:49 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer state created_at ) ,
s : %w( number title state created_at ) ,
m : %w( number title state created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-09-20 12:08:02 +00:00
} ,
2012-09-04 21:28:49 +00:00
)
2013-01-04 18:42:20 +00:00
Overview . create_if_not_exists (
2015-04-27 13:42:53 +00:00
name : 'My Organization Tickets' ,
link : 'my_organization_tickets' ,
2015-11-05 15:25:20 +00:00
prio : 1200 ,
2017-04-19 19:54:04 +00:00
role_ids : [ overview_role . id ] ,
2015-04-27 13:42:53 +00:00
organization_shared : true ,
condition : {
2015-09-17 18:39:51 +00:00
'ticket.state_id' = > {
operator : 'is' ,
2017-03-27 14:06:18 +00:00
value : Ticket :: State . by_category ( :viewable ) . pluck ( :id ) ,
2015-09-17 18:39:51 +00:00
} ,
'ticket.organization_id' = > {
operator : 'is' ,
2015-10-14 14:33:26 +00:00
pre_condition : 'current_user.organization_id' ,
2015-09-17 18:39:51 +00:00
} ,
2012-11-13 10:34:45 +00:00
} ,
2015-04-27 13:42:53 +00:00
order : {
by : 'created_at' ,
direction : 'DESC' ,
2012-11-13 10:34:45 +00:00
} ,
2015-04-27 13:42:53 +00:00
view : {
2015-05-07 07:23:16 +00:00
d : %w( title customer state created_at ) ,
s : %w( number title customer state created_at ) ,
m : %w( number title customer state created_at ) ,
2015-04-27 13:42:53 +00:00
view_mode_default : 's' ,
2012-11-13 10:34:45 +00:00
} ,
)
2012-09-04 21:28:49 +00:00
2013-01-04 18:42:20 +00:00
Channel . create_if_not_exists (
2015-08-28 00:53:14 +00:00
area : 'Email::Notification' ,
2015-04-27 13:42:53 +00:00
options : {
2015-08-28 00:53:14 +00:00
outbound : {
adapter : 'smtp' ,
options : {
host : 'host.example.com' ,
user : '' ,
password : '' ,
ssl : true ,
} ,
} ,
2012-04-13 13:51:10 +00:00
} ,
2015-04-27 13:42:53 +00:00
group_id : 1 ,
2015-08-30 07:15:51 +00:00
preferences : { online_service_disable : true } ,
2015-04-27 13:42:53 +00:00
active : false ,
2012-04-13 13:51:10 +00:00
)
2013-01-04 18:42:20 +00:00
Channel . create_if_not_exists (
2015-08-28 00:53:14 +00:00
area : 'Email::Notification' ,
options : {
outbound : {
adapter : 'sendmail' ,
} ,
} ,
2015-08-30 07:15:51 +00:00
preferences : { online_service_disable : true } ,
2015-04-27 13:42:53 +00:00
active : true ,
2012-04-13 13:51:10 +00:00
)
2015-10-20 11:54:29 +00:00
Report :: Profile . create_if_not_exists (
name : '-all-' ,
condition : { } ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2015-12-06 14:28:19 +00:00
chat = Chat . create_if_not_exists (
2015-12-06 14:17:05 +00:00
name : 'default' ,
max_queue : 5 ,
note : '' ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2013-01-04 18:42:20 +00:00
network = Network . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'base' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category :: Type . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'Announcement' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category :: Type . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 2 ,
name : 'Idea' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category :: Type . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 3 ,
name : 'Question' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category :: Type . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 4 ,
name : 'Bug Report' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Privacy . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'logged in' ,
key : 'loggedIn' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Privacy . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 2 ,
name : 'logged in and moderator' ,
key : 'loggedInModerator' ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 1 ,
name : 'Announcements' ,
network_id : network . id ,
2016-02-29 23:52:51 +00:00
network_category_type_id : Network :: Category :: Type . find_by ( name : 'Announcement' ) . id ,
network_privacy_id : Network :: Privacy . find_by ( name : 'logged in and moderator' ) . id ,
2015-04-27 13:42:53 +00:00
allow_comments : true ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 2 ,
name : 'Questions' ,
network_id : network . id ,
allow_comments : true ,
2016-02-29 23:52:51 +00:00
network_category_type_id : Network :: Category :: Type . find_by ( name : 'Question' ) . id ,
network_privacy_id : Network :: Privacy . find_by ( name : 'logged in' ) . id ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 3 ,
name : 'Ideas' ,
network_id : network . id ,
2016-02-29 23:52:51 +00:00
network_category_type_id : Network :: Category :: Type . find_by ( name : 'Idea' ) . id ,
network_privacy_id : Network :: Privacy . find_by ( name : 'logged in' ) . id ,
2015-04-27 13:42:53 +00:00
allow_comments : true ,
2012-04-10 14:06:46 +00:00
)
2013-01-04 18:42:20 +00:00
Network :: Category . create_if_not_exists (
2015-04-27 13:42:53 +00:00
id : 4 ,
name : 'Bug Reports' ,
network_id : network . id ,
2016-02-29 23:52:51 +00:00
network_category_type_id : Network :: Category :: Type . find_by ( name : 'Bug Report' ) . id ,
network_privacy_id : Network :: Privacy . find_by ( name : 'logged in' ) . id ,
2015-04-27 13:42:53 +00:00
allow_comments : true ,
2012-04-10 14:06:46 +00:00
)
item = Network :: Item . create (
2015-04-27 13:42:53 +00:00
title : 'Example Announcement' ,
body : 'Some announcement....' ,
2016-02-29 23:52:51 +00:00
network_category_id : Network :: Category . find_by ( name : 'Announcements' ) . id ,
2012-04-10 14:06:46 +00:00
)
Network :: Item :: Comment . create (
2015-04-27 13:42:53 +00:00
network_item_id : item . id ,
body : 'Some comment....' ,
2012-04-10 14:06:46 +00:00
)
item = Network :: Item . create (
2015-04-27 13:42:53 +00:00
title : 'Example Question?' ,
body : 'Some questions....' ,
2016-02-29 23:52:51 +00:00
network_category_id : Network :: Category . find_by ( name : 'Questions' ) . id ,
2012-04-10 14:06:46 +00:00
)
Network :: Item :: Comment . create (
2015-04-27 13:42:53 +00:00
network_item_id : item . id ,
body : 'Some comment....' ,
2012-04-10 14:06:46 +00:00
)
item = Network :: Item . create (
2015-04-27 13:42:53 +00:00
title : 'Example Idea' ,
body : 'Some idea....' ,
2016-02-29 23:52:51 +00:00
network_category_id : Network :: Category . find_by ( name : 'Ideas' ) . id ,
2012-04-10 14:06:46 +00:00
)
Network :: Item :: Comment . create (
2015-04-27 13:42:53 +00:00
network_item_id : item . id ,
body : 'Some comment....' ,
2012-04-10 14:06:46 +00:00
)
item = Network :: Item . create (
2015-04-27 13:42:53 +00:00
title : 'Example Bug Report' ,
body : 'Some bug....' ,
2016-02-29 23:52:51 +00:00
network_category_id : Network :: Category . find_by ( name : 'Bug Reports' ) . id ,
2012-04-10 14:06:46 +00:00
)
Network :: Item :: Comment . create (
2015-04-27 13:42:53 +00:00
network_item_id : item . id ,
body : 'Some comment....' ,
2012-04-10 14:06:46 +00:00
)
2012-05-18 14:24:00 +00:00
2015-10-12 21:12:44 +00:00
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-10-12 21:12:44 +00:00
object : 'Ticket' ,
name : 'title' ,
display : 'Title' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 200 ,
null : false ,
translate : false ,
} ,
editable : false ,
active : true ,
screens : {
create_top : {
'-all-' = > {
null : false ,
} ,
} ,
edit : { } ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-10-12 21:12:44 +00:00
position : 15 ,
)
2015-09-27 11:18:04 +00:00
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'customer_id' ,
display : 'Customer' ,
data_type : 'user_autocompletion' ,
data_option : {
relation : 'User' ,
autocapitalize : false ,
multiple : false ,
2016-08-19 11:57:13 +00:00
guess : true ,
2015-09-27 11:18:04 +00:00
null : false ,
limit : 200 ,
placeholder : 'Enter Person or Organization/Company' ,
minLengt : 2 ,
translate : false ,
2017-04-03 21:38:55 +00:00
permission : [ 'ticket.agent' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
create_top : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
edit : { } ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 10 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'type' ,
display : 'Type' ,
data_type : 'select' ,
data_option : {
2016-05-19 08:20:38 +00:00
default : '' ,
2015-09-27 11:18:04 +00:00
options : {
'Incident' = > 'Incident' ,
'Problem' = > 'Problem' ,
'Request for Change' = > 'Request for Change' ,
} ,
nulloption : true ,
multiple : false ,
null : true ,
translate : true ,
} ,
2016-05-19 08:20:38 +00:00
editable : true ,
2015-09-27 11:18:04 +00:00
active : false ,
screens : {
create_middle : {
'-all-' = > {
null : false ,
item_class : 'column' ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 20 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'group_id' ,
display : 'Group' ,
data_type : 'select' ,
data_option : {
2016-05-19 08:20:38 +00:00
default : '' ,
2015-09-27 11:18:04 +00:00
relation : 'Group' ,
relation_condition : { access : 'rw' } ,
nulloption : true ,
multiple : false ,
null : false ,
translate : false ,
2016-03-07 06:46:11 +00:00
only_shown_if_selectable : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'ticket.agent' , 'ticket.customer' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
create_middle : {
'-all-' = > {
null : false ,
item_class : 'column' ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-10-12 21:12:44 +00:00
position : 25 ,
2015-09-27 11:18:04 +00:00
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'owner_id' ,
display : 'Owner' ,
data_type : 'select' ,
data_option : {
2016-05-19 08:20:38 +00:00
default : '' ,
2015-09-27 11:18:04 +00:00
relation : 'User' ,
relation_condition : { roles : 'Agent' } ,
nulloption : true ,
multiple : false ,
null : true ,
translate : false ,
2017-04-03 21:38:55 +00:00
permission : [ 'ticket.agent' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
create_middle : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : true ,
item_class : 'column' ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 30 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'state_id' ,
display : 'State' ,
data_type : 'select' ,
data_option : {
relation : 'TicketState' ,
nulloption : true ,
multiple : false ,
null : false ,
2017-04-25 09:04:41 +00:00
default : Ticket :: State . find_by ( default_follow_up : true ) . id ,
2015-09-27 11:18:04 +00:00
translate : true ,
2017-03-31 11:56:42 +00:00
filter : Ticket :: State . by_category ( :viewable ) . pluck ( :id ) ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
create_middle : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
item_class : 'column' ,
2017-03-31 11:56:42 +00:00
filter : Ticket :: State . by_category ( :viewable_agent_new ) . pluck ( :id ) ,
2015-09-27 11:18:04 +00:00
} ,
2017-04-03 21:38:55 +00:00
'ticket.customer' = > {
2015-09-27 11:18:04 +00:00
item_class : 'column' ,
nulloption : false ,
null : true ,
2017-03-31 11:56:42 +00:00
filter : Ticket :: State . by_category ( :viewable_customer_new ) . pluck ( :id ) ,
2017-04-25 09:04:41 +00:00
default : Ticket :: State . find_by ( default_create : true ) . id ,
2015-09-27 11:18:04 +00:00
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
nulloption : false ,
null : false ,
2017-03-31 11:56:42 +00:00
filter : Ticket :: State . by_category ( :viewable_agent_edit ) . pluck ( :id ) ,
2015-09-27 11:18:04 +00:00
} ,
2017-04-03 21:38:55 +00:00
'ticket.customer' = > {
2015-09-27 11:18:04 +00:00
nulloption : false ,
null : true ,
2017-03-31 11:56:42 +00:00
filter : Ticket :: State . by_category ( :viewable_customer_edit ) . pluck ( :id ) ,
2017-04-25 09:04:41 +00:00
default : Ticket :: State . find_by ( default_follow_up : true ) . id ,
2015-09-27 11:18:04 +00:00
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 40 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'pending_time' ,
display : 'Pending till' ,
data_type : 'datetime' ,
data_option : {
future : true ,
past : false ,
diff : 24 ,
null : true ,
translate : true ,
required_if : {
2017-03-31 11:56:42 +00:00
state_id : Ticket :: State . by_category ( :pending ) . pluck ( :id ) ,
2015-09-27 11:18:04 +00:00
} ,
shown_if : {
2017-03-31 11:56:42 +00:00
state_id : Ticket :: State . by_category ( :pending ) . pluck ( :id ) ,
2015-09-27 11:18:04 +00:00
} ,
} ,
editable : false ,
active : true ,
screens : {
create_middle : {
'-all-' = > {
null : false ,
item_class : 'column' ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 41 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'priority_id' ,
display : 'Priority' ,
data_type : 'select' ,
data_option : {
relation : 'TicketPriority' ,
2017-01-13 18:55:12 +00:00
nulloption : false ,
2015-09-27 11:18:04 +00:00
multiple : false ,
null : false ,
2017-04-25 09:04:41 +00:00
default : Ticket :: Priority . find_by ( default_create : true ) . id ,
2015-09-27 11:18:04 +00:00
translate : true ,
} ,
editable : false ,
active : true ,
screens : {
create_middle : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
item_class : 'column' ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 80 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Ticket' ,
name : 'tags' ,
display : 'Tags' ,
data_type : 'tag' ,
data_option : {
type : 'text' ,
null : true ,
translate : false ,
} ,
editable : false ,
active : true ,
screens : {
create_bottom : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
edit : { } ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 900 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'TicketArticle' ,
name : 'type_id' ,
display : 'Type' ,
data_type : 'select' ,
data_option : {
relation : 'TicketArticleType' ,
nulloption : false ,
multiple : false ,
null : false ,
2017-03-14 16:29:25 +00:00
default : Ticket :: Article :: Type . lookup ( name : 'note' ) . id ,
2015-09-27 11:18:04 +00:00
translate : true ,
} ,
editable : false ,
active : true ,
screens : {
create_middle : { } ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 100 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'TicketArticle' ,
name : 'internal' ,
display : 'Visibility' ,
data_type : 'select' ,
data_option : {
options : { true : 'internal' , false : 'public' } ,
nulloption : false ,
multiple : false ,
null : true ,
default : false ,
translate : true ,
} ,
editable : false ,
active : true ,
screens : {
create_middle : { } ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 200 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'TicketArticle' ,
name : 'to' ,
display : 'To' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 1000 ,
null : true ,
} ,
editable : false ,
active : true ,
screens : {
create_middle : { } ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 300 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'TicketArticle' ,
name : 'cc' ,
display : 'Cc' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 1000 ,
null : true ,
} ,
editable : false ,
active : true ,
screens : {
2016-03-03 13:39:10 +00:00
create_top : { } ,
2015-09-27 11:18:04 +00:00
create_middle : { } ,
edit : {
2017-04-03 21:38:55 +00:00
'ticket.agent' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 400 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'TicketArticle' ,
name : 'body' ,
display : 'Text' ,
data_type : 'richtext' ,
data_option : {
type : 'richtext' ,
maxlength : 20_000 ,
upload : true ,
rows : 8 ,
null : true ,
} ,
editable : false ,
active : true ,
screens : {
create_top : {
'-all-' = > {
null : false ,
} ,
} ,
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 600 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'login' ,
display : 'Login' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 100 ,
null : true ,
autocapitalize : false ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : { } ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 100 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'firstname' ,
display : 'Firstname' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 150 ,
null : false ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : {
'-all-' = > {
null : false ,
} ,
} ,
invite_agent : {
'-all-' = > {
null : false ,
} ,
} ,
2016-02-17 18:36:33 +00:00
invite_customer : {
'-all-' = > {
null : false ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 200 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'lastname' ,
display : 'Lastname' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 150 ,
null : false ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : {
'-all-' = > {
null : false ,
} ,
} ,
invite_agent : {
'-all-' = > {
null : false ,
} ,
} ,
2016-02-17 18:36:33 +00:00
invite_customer : {
'-all-' = > {
null : false ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 300 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'email' ,
display : 'Email' ,
data_type : 'input' ,
data_option : {
type : 'email' ,
maxlength : 150 ,
null : false ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : {
'-all-' = > {
null : false ,
} ,
} ,
invite_agent : {
'-all-' = > {
null : false ,
} ,
} ,
2016-02-17 18:36:33 +00:00
invite_customer : {
'-all-' = > {
null : false ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 400 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'web' ,
display : 'Web' ,
data_type : 'input' ,
data_option : {
type : 'url' ,
maxlength : 250 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 500 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'phone' ,
display : 'Phone' ,
data_type : 'input' ,
data_option : {
2016-05-29 18:03:00 +00:00
type : 'tel' ,
2015-09-27 11:18:04 +00:00
maxlength : 100 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 600 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'mobile' ,
display : 'Mobile' ,
data_type : 'input' ,
data_option : {
2016-05-29 18:03:00 +00:00
type : 'tel' ,
2015-09-27 11:18:04 +00:00
maxlength : 100 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 700 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'fax' ,
display : 'Fax' ,
data_type : 'input' ,
data_option : {
2016-05-29 18:03:00 +00:00
type : 'tel' ,
2015-09-27 11:18:04 +00:00
maxlength : 100 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 800 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'organization_id' ,
display : 'Organization' ,
data_type : 'autocompletion_ajax' ,
data_option : {
multiple : false ,
nulloption : true ,
null : true ,
relation : 'Organization' ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : {
'-all-' = > {
null : true ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 900 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'department' ,
display : 'Department' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 200 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
2016-05-19 08:20:38 +00:00
editable : true ,
2015-09-27 11:18:04 +00:00
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1000 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'street' ,
display : 'Street' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 100 ,
null : true ,
} ,
2016-03-07 06:46:11 +00:00
editable : true ,
active : false ,
2015-09-27 11:18:04 +00:00
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1100 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'zip' ,
display : 'Zip' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 100 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
2016-03-07 06:46:11 +00:00
editable : true ,
active : false ,
2015-09-27 11:18:04 +00:00
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1200 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'city' ,
display : 'City' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 100 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
2016-03-07 06:46:11 +00:00
editable : true ,
active : false ,
2015-09-27 11:18:04 +00:00
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1300 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'address' ,
display : 'Address' ,
data_type : 'textarea' ,
data_option : {
type : 'text' ,
maxlength : 500 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
2016-03-07 06:46:11 +00:00
editable : true ,
2015-09-27 11:18:04 +00:00
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1350 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'password' ,
display : 'Password' ,
data_type : 'input' ,
data_option : {
type : 'password' ,
maxlength : 100 ,
null : true ,
2017-04-18 23:12:06 +00:00
autocomplete : 'new-password' ,
2015-09-27 11:18:04 +00:00
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
signup : {
'-all-' = > {
null : false ,
} ,
} ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
2017-04-03 21:38:55 +00:00
'admin.user' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
view : { }
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1400 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'vip' ,
display : 'VIP' ,
data_type : 'boolean' ,
data_option : {
null : true ,
default : false ,
item_class : 'formGroup--halfSize' ,
options : {
false : 'no' ,
true : 'yes' ,
} ,
translate : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.user' , 'ticket.agent' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1490 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'note' ,
display : 'Note' ,
data_type : 'richtext' ,
data_option : {
type : 'text' ,
maxlength : 250 ,
null : true ,
note : 'Notes are visible to agents only, never to customers.' ,
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : {
'-all-' = > {
null : true ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1500 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'role_ids' ,
2016-05-19 08:20:38 +00:00
display : 'Permissions' ,
data_type : 'user_permission' ,
2015-09-27 11:18:04 +00:00
data_option : {
null : false ,
2016-05-19 08:20:38 +00:00
item_class : 'checkbox' ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.user' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : {
'-all-' = > {
null : false ,
2016-08-12 16:39:09 +00:00
default : [ Role . lookup ( name : 'Agent' ) . id ] ,
2015-09-27 11:18:04 +00:00
} ,
} ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 1600 ,
2015-09-27 11:18:04 +00:00
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'User' ,
name : 'active' ,
display : 'Active' ,
data_type : 'active' ,
data_option : {
2016-05-19 08:20:38 +00:00
null : true ,
2015-09-27 11:18:04 +00:00
default : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.user' , 'ticket.agent' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
signup : { } ,
invite_agent : { } ,
2016-02-17 18:36:33 +00:00
invite_customer : { } ,
2015-09-27 11:18:04 +00:00
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1800 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Organization' ,
name : 'name' ,
display : 'Name' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 150 ,
null : false ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
edit : {
'-all-' = > {
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 200 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Organization' ,
name : 'shared' ,
display : 'Shared organization' ,
data_type : 'boolean' ,
data_option : {
null : true ,
default : true ,
note : 'Customers in the organization can view each other items.' ,
item_class : 'formGroup--halfSize' ,
options : {
2016-08-12 16:39:09 +00:00
true : 'yes' ,
false : 'no' ,
} ,
translate : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.organization' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1400 ,
)
2016-11-13 22:59:39 +00:00
ObjectManager :: Attribute . add (
force : true ,
object : 'Organization' ,
name : 'domain_assignment' ,
display : 'Domain based assignment' ,
data_type : 'boolean' ,
data_option : {
null : true ,
default : false ,
note : 'Assign Users based on users domain.' ,
item_class : 'formGroup--halfSize' ,
options : {
true : 'yes' ,
false : 'no' ,
} ,
translate : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.organization' ] ,
2016-11-13 22:59:39 +00:00
} ,
editable : false ,
active : true ,
screens : {
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2016-11-13 22:59:39 +00:00
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 1410 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Organization' ,
name : 'domain' ,
display : 'Domain' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 150 ,
null : true ,
item_class : 'formGroup--halfSize' ,
} ,
editable : false ,
active : true ,
screens : {
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 1420 ,
)
2015-09-27 11:18:04 +00:00
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Organization' ,
name : 'note' ,
display : 'Note' ,
data_type : 'richtext' ,
data_option : {
type : 'text' ,
maxlength : 250 ,
null : true ,
note : 'Notes are visible to agents only, never to customers.' ,
} ,
editable : false ,
active : true ,
screens : {
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1500 ,
)
ObjectManager :: Attribute . add (
2016-05-19 08:20:38 +00:00
force : true ,
2015-09-27 11:18:04 +00:00
object : 'Organization' ,
name : 'active' ,
display : 'Active' ,
data_type : 'active' ,
data_option : {
2016-05-19 08:20:38 +00:00
null : true ,
default : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.organization' ] ,
2016-05-19 08:20:38 +00:00
} ,
editable : false ,
active : true ,
screens : {
edit : {
2017-04-03 21:38:55 +00:00
'-all-' = > {
2016-05-19 08:20:38 +00:00
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 1800 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'name' ,
display : 'Name' ,
data_type : 'input' ,
data_option : {
type : 'text' ,
maxlength : 150 ,
null : false ,
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : false ,
} ,
} ,
edit : {
'-all-' = > {
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 200 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'assignment_timeout' ,
display : 'Assignment Timeout' ,
data_type : 'integer' ,
data_option : {
maxlength : 150 ,
null : true ,
note : 'Assignment timeout in minutes if assigned agent is not working on it. Ticket will be shown as unassigend.' ,
min : 0 ,
max : 999_999 ,
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 300 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'follow_up_possible' ,
display : 'Follow up possible' ,
data_type : 'select' ,
data_option : {
default : 'yes' ,
options : {
yes : 'yes' ,
new_ticket : 'do not reopen Ticket but create new Ticket'
} ,
null : false ,
note : 'Follow up for closed ticket possible or not.' ,
translate : true
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 400 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'follow_up_assignment' ,
display : 'Assign Follow Ups' ,
data_type : 'select' ,
data_option : {
default : 'yes' ,
options : {
true : 'yes' ,
false : 'no' ,
} ,
null : false ,
note : 'Assign follow up to latest agent again.' ,
translate : true
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 500 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'email_address_id' ,
display : 'Email' ,
data_type : 'select' ,
data_option : {
default : '' ,
multiple : false ,
null : true ,
relation : 'EmailAddress' ,
nulloption : true ,
do_not_log : true ,
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 600 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'signature_id' ,
display : 'Signature' ,
data_type : 'select' ,
data_option : {
default : '' ,
multiple : false ,
null : true ,
relation : 'Signature' ,
nulloption : true ,
do_not_log : true ,
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 600 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'note' ,
display : 'Note' ,
data_type : 'richtext' ,
data_option : {
type : 'text' ,
maxlength : 250 ,
null : true ,
note : 'Notes are visible to agents only, never to customers.' ,
} ,
editable : false ,
active : true ,
screens : {
create : {
'-all-' = > {
null : true ,
} ,
} ,
edit : {
'-all-' = > {
null : true ,
} ,
} ,
view : {
'-all-' = > {
shown : true ,
} ,
} ,
} ,
to_create : false ,
to_migrate : false ,
to_delete : false ,
position : 1500 ,
)
ObjectManager :: Attribute . add (
force : true ,
object : 'Group' ,
name : 'active' ,
display : 'Active' ,
data_type : 'active' ,
data_option : {
null : true ,
2015-09-27 11:18:04 +00:00
default : true ,
2017-04-03 21:38:55 +00:00
permission : [ 'admin.group' ] ,
2015-09-27 11:18:04 +00:00
} ,
editable : false ,
active : true ,
screens : {
2016-05-19 08:20:38 +00:00
create : {
'-all-' = > {
null : true ,
} ,
} ,
2015-09-27 11:18:04 +00:00
edit : {
2017-04-03 21:38:55 +00:00
'-all-' : {
2015-09-27 11:18:04 +00:00
null : false ,
} ,
} ,
view : {
'-all-' = > {
shown : false ,
} ,
} ,
} ,
2016-05-19 08:20:38 +00:00
to_create : false ,
to_migrate : false ,
to_delete : false ,
2015-09-27 11:18:04 +00:00
position : 1800 ,
)
2015-09-26 15:14:42 +00:00
Scheduler . create_if_not_exists (
2015-09-26 13:56:55 +00:00
name : 'Process pending tickets' ,
method : 'Ticket.process_pending' ,
2017-04-19 10:09:54 +00:00
period : 15 . minutes ,
2015-09-26 13:56:55 +00:00
prio : 1 ,
active : true ,
)
2016-02-22 23:28:13 +00:00
Scheduler . create_if_not_exists (
name : 'Process escalation tickets' ,
method : 'Ticket.process_escalation' ,
2017-04-19 10:09:54 +00:00
period : 5 . minutes ,
2016-02-22 23:28:13 +00:00
prio : 1 ,
active : true ,
)
2015-09-26 15:14:42 +00:00
Scheduler . create_if_not_exists (
name : 'Import OTRS diff load' ,
method : 'Import::OTRS.diff_worker' ,
2017-04-19 10:09:54 +00:00
period : 3 . minutes ,
2015-09-26 15:14:42 +00:00
prio : 1 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_if_not_exists (
name : 'Check Channels' ,
method : 'Channel.fetch' ,
2017-04-19 10:09:54 +00:00
period : 30 . seconds ,
2015-09-26 15:14:42 +00:00
prio : 1 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2016-01-09 12:23:11 +00:00
Scheduler . create_if_not_exists (
2016-02-22 23:28:13 +00:00
name : 'Check streams for Channel' ,
2016-01-09 12:23:11 +00:00
method : 'Channel.stream' ,
2017-04-19 10:09:54 +00:00
period : 60 . seconds ,
2016-01-09 12:23:11 +00:00
prio : 1 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2015-09-26 15:14:42 +00:00
Scheduler . create_if_not_exists (
name : 'Generate Session data' ,
method : 'Sessions.jobs' ,
2017-04-19 10:09:54 +00:00
period : 60 . seconds ,
2015-09-26 15:14:42 +00:00
prio : 1 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2016-03-18 02:04:49 +00:00
Scheduler . create_if_not_exists (
name : 'Execute jobs' ,
method : 'Job.run' ,
2017-04-19 10:09:54 +00:00
period : 5 . minutes ,
2016-03-18 02:04:49 +00:00
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2015-09-26 15:14:42 +00:00
Scheduler . create_if_not_exists (
name : 'Cleanup expired sessions' ,
method : 'SessionHelper.cleanup_expired' ,
period : 60 * 60 * 12 ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_if_not_exists (
name : 'Delete old activity stream entries.' ,
method : 'ActivityStream.cleanup' ,
period : 1 . day ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_if_not_exists (
name : 'Delete old entries.' ,
method : 'RecentView.cleanup' ,
period : 1 . day ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_or_update (
name : 'Delete old online notification entries.' ,
method : 'OnlineNotification.cleanup' ,
period : 2 . hours ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_or_update (
name : 'Delete old token entries.' ,
method : 'Token.cleanup' ,
period : 30 . days ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2015-12-10 10:35:00 +00:00
Scheduler . create_or_update (
name : 'Closed chat sessions where participients are offline.' ,
method : 'Chat.cleanup_close' ,
2017-04-19 10:09:54 +00:00
period : 15 . minutes ,
2015-12-10 10:35:00 +00:00
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_or_update (
name : 'Cleanup closed sessions.' ,
method : 'Chat.cleanup' ,
period : 5 . days ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2016-05-20 10:21:55 +00:00
Scheduler . create_or_update (
name : 'Sync calendars with ical feeds.' ,
method : 'Calendar.sync' ,
period : 1 . day ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2016-10-19 03:20:00 +00:00
Scheduler . create_or_update (
name : 'Generate user based stats.' ,
method : 'Stats.generate' ,
period : 11 . minutes ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_or_update (
name : 'Delete old stats store entries.' ,
method : 'StatsStore.cleanup' ,
period : 31 . days ,
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
Scheduler . create_if_not_exists (
name : 'Cleanup HttpLog' ,
method : 'HttpLog.cleanup' ,
2017-04-19 10:09:54 +00:00
period : 1 . day ,
2016-10-19 03:20:00 +00:00
prio : 2 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1 ,
)
2017-04-19 10:09:54 +00:00
Scheduler . create_if_not_exists (
name : 'Import Jobs' ,
2017-04-21 09:25:28 +00:00
method : 'ImportJob.start_registered' ,
2017-04-19 10:09:54 +00:00
period : 1 . hour ,
prio : 1 ,
active : true ,
updated_by_id : 1 ,
created_by_id : 1
)
2015-09-26 13:56:55 +00:00
2016-05-03 13:51:07 +00:00
Trigger . create_or_update (
name : 'auto reply (on new tickets)' ,
condition : {
'ticket.action' = > {
'operator' = > 'is' ,
'value' = > 'create' ,
} ,
'ticket.state_id' = > {
'operator' = > 'is not' ,
2017-04-25 09:04:41 +00:00
'value' = > Ticket :: State . by_category ( :closed ) . first . id ,
2016-05-03 13:51:07 +00:00
} ,
'article.type_id' = > {
'operator' = > 'is' ,
'value' = > [
Ticket :: Article :: Type . lookup ( name : 'email' ) . id ,
Ticket :: Article :: Type . lookup ( name : 'phone' ) . id ,
Ticket :: Article :: Type . lookup ( name : 'web' ) . id ,
] ,
} ,
2016-05-05 15:09:35 +00:00
'article.sender_id' = > {
'operator' = > 'is' ,
'value' = > Ticket :: Article :: Sender . lookup ( name : 'Customer' ) . id ,
} ,
2016-05-03 13:51:07 +00:00
} ,
perform : {
'notification.email' = > {
2016-05-20 11:44:02 +00:00
'body' = > ' < div > Your request < b > ( #{config.ticket_hook}#{ticket.number})</b> has been received and will be reviewed by our support staff.</div>
2016-05-03 13:51:07 +00:00
< br / >
2017-01-13 18:55:12 +00:00
< div > To provide additional information , please reply to this email or click on the following link ( for initial login , please request a new password ) :
2016-05-03 13:51:07 +00:00
< a href = " #{ config . http_type } :// #{ config . fqdn } / # ticket/zoom/ #{ ticket . id } " > #{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}</a>
2016-05-19 08:20:38 +00:00
< / div>
2016-05-03 13:51:07 +00:00
< br / >
2016-05-19 08:20:38 +00:00
< div > Your #{config.product_name} Team</div>
2016-05-04 09:30:27 +00:00
< br / >
2016-10-24 05:38:45 +00:00
< div > < i > < a href = " https://zammad.com " > Zammad < / a>, your customer support system< /i > < / div>',
2016-05-03 13:51:07 +00:00
'recipient' = > 'ticket_customer' ,
'subject' = > 'Thanks for your inquiry (#{ticket.title})' ,
} ,
} ,
active : true ,
created_by_id : 1 ,
updated_by_id : 1 ,
)
Trigger . create_or_update (
name : 'auto reply (on follow up of tickets)' ,
condition : {
'ticket.action' = > {
'operator' = > 'is' ,
'value' = > 'update' ,
} ,
'article.sender_id' = > {
'operator' = > 'is' ,
'value' = > Ticket :: Article :: Sender . lookup ( name : 'Customer' ) . id ,
} ,
'article.type_id' = > {
'operator' = > 'is' ,
'value' = > [
Ticket :: Article :: Type . lookup ( name : 'email' ) . id ,
Ticket :: Article :: Type . lookup ( name : 'phone' ) . id ,
Ticket :: Article :: Type . lookup ( name : 'web' ) . id ,
] ,
} ,
} ,
perform : {
'notification.email' = > {
2016-05-20 11:44:02 +00:00
'body' = > ' < div > Your follow up for < b > ( #{config.ticket_hook}#{ticket.number})</b> has been received and will be reviewed by our support staff.</div>
2016-05-03 13:51:07 +00:00
< br / >
2016-05-19 08:20:38 +00:00
< div > To provide additional information , please reply to this email or click on the following link :
2016-05-03 13:51:07 +00:00
< a href = " #{ config . http_type } :// #{ config . fqdn } / # ticket/zoom/ #{ ticket . id } " > #{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}</a>
2016-05-19 08:20:38 +00:00
< / div>
2016-05-03 13:51:07 +00:00
< br / >
2016-05-19 08:20:38 +00:00
< div > Your #{config.product_name} Team</div>
2016-05-04 09:30:27 +00:00
< br / >
2016-10-24 05:38:45 +00:00
< div > < i > < a href = " https://zammad.com " > Zammad < / a>, your customer support system< /i > < / div>',
2016-05-03 13:51:07 +00:00
'recipient' = > 'ticket_customer' ,
'subject' = > 'Thanks for your follow up (#{ticket.title})' ,
} ,
} ,
2016-05-04 09:30:27 +00:00
active : false ,
2016-05-03 13:51:07 +00:00
created_by_id : 1 ,
updated_by_id : 1 ,
)
2016-07-16 22:18:08 +00:00
Trigger . create_or_update (
name : 'customer notification (on owner change)' ,
condition : {
'ticket.owner_id' = > {
'operator' = > 'has changed' ,
'pre_condition' = > 'current_user.id' ,
'value' = > '' ,
'value_completion' = > '' ,
}
} ,
perform : {
'notification.email' = > {
'body' = > ' < p > The owner of ticket ( Ticket ##{ticket.number}) has changed and is now "#{ticket.owner.firstname} #{ticket.owner.lastname}".<p>
< br / >
< p > To provide additional information , please reply to this email or click on the following link :
< a href = " #{ config . http_type } :// #{ config . fqdn } / # ticket/zoom/ #{ ticket . id } " > #{config.http_type}://#{config.fqdn}/#ticket/zoom/#{ticket.id}</a>
< / p>
< br / >
2016-10-24 05:38:45 +00:00
< p > < i > < a href = " https://zammad.com " > Zammad < / a>, your customer support system< /i > < / p>',
2016-07-16 22:18:08 +00:00
'recipient' = > 'ticket_customer' ,
'subject' = > 'Owner has changed (#{ticket.title})' ,
} ,
} ,
active : false ,
created_by_id : 1 ,
updated_by_id : 1 ,
)
2016-10-19 03:20:00 +00:00
Karma :: Activity . create_or_update (
name : 'ticket create' ,
description : 'You have created a ticket' ,
score : 10 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket close' ,
description : 'You have closed a ticket' ,
score : 5 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket answer 1h' ,
description : 'You have answered a ticket within 1h' ,
score : 25 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket answer 2h' ,
description : 'You have answered a ticket within 2h' ,
score : 20 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket answer 12h' ,
description : 'You have answered a ticket within 12h' ,
score : 10 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket answer 24h' ,
description : 'You have answered a ticket within 24h' ,
score : 5 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket pending state' ,
description : 'Usage of advanced features' ,
score : 2 ,
once_ttl : 60 ,
)
Karma :: Activity . create_or_update (
name : 'ticket escalated' ,
description : 'You have escalated tickets' ,
score : - 5 ,
once_ttl : 60 * 60 * 24 ,
)
Karma :: Activity . create_or_update (
name : 'ticket reminder overdue (+2 days)' ,
description : 'You have tickets that are over 2 days overdue' ,
score : - 5 ,
once_ttl : 60 * 60 * 24 ,
)
Karma :: Activity . create_or_update (
name : 'text module' ,
description : 'Usage of advanced features' ,
score : 4 ,
once_ttl : 60 * 30 ,
)
Karma :: Activity . create_or_update (
name : 'tagging' ,
description : 'Usage of advanced features' ,
score : 4 ,
once_ttl : 60 * 60 * 4 ,
)
2016-01-19 22:30:23 +00:00
# reset primary key sequences
2016-11-25 14:54:13 +00:00
DbHelper . import_post
2016-01-19 22:30:23 +00:00
2015-04-27 06:20:52 +00:00
# install locales and translations
2015-07-01 11:53:21 +00:00
Locale . create_if_not_exists (
2015-07-01 08:50:42 +00:00
locale : 'en-us' ,
alias : 'en' ,
name : 'English (United States)' ,
)
2016-12-03 19:37:37 +00:00
Locale . sync
Translation . sync
2015-09-22 14:48:43 +00:00
Calendar . init_setup
2013-01-07 08:34:03 +00:00
# install all packages in auto_install
2015-09-22 14:48:43 +00:00
Package . auto_install