20180508182850_ticket_create_types_setting_issue_1987.rb 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. class TicketCreateTypesSettingIssue1987 < ActiveRecord::Migration[5.1]
  2. def up
  3. # return if it's a new setup
  4. return if !Setting.find_by(name: 'system_init_done')
  5. Setting.create_if_not_exists(
  6. title: 'Default type for a new ticket',
  7. name: 'ui_ticket_create_default_type',
  8. area: 'UI::TicketCreate',
  9. description: 'Select default ticket type',
  10. options: {
  11. form: [
  12. {
  13. display: '',
  14. null: false,
  15. multiple: false,
  16. name: 'ui_ticket_create_default_type',
  17. tag: 'select',
  18. options: {
  19. 'phone-in' => '1. Phone inbound',
  20. 'phone-out' => '2. Phone outbound',
  21. 'email-out' => '3. Email outbound',
  22. },
  23. },
  24. ],
  25. },
  26. state: 'phone-in',
  27. preferences: {
  28. permission: ['admin.ui']
  29. },
  30. frontend: true
  31. )
  32. Setting.create_if_not_exists(
  33. title: 'Available types for a new ticket',
  34. name: 'ui_ticket_create_available_types',
  35. area: 'UI::TicketCreate',
  36. description: 'Set available ticket types',
  37. options: {
  38. form: [
  39. {
  40. display: '',
  41. null: false,
  42. multiple: true,
  43. name: 'ui_ticket_create_available_types',
  44. tag: 'select',
  45. options: {
  46. 'phone-in' => '1. Phone inbound',
  47. 'phone-out' => '2. Phone outbound',
  48. 'email-out' => '3. Email outbound',
  49. },
  50. },
  51. ],
  52. },
  53. state: %w[phone-in phone-out email-out],
  54. preferences: {
  55. permission: ['admin.ui']
  56. },
  57. frontend: true
  58. )
  59. end
  60. end