1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- # Fixes issue #2333 - Object country already exists
- # The country column already exists in the database, but there is no corresponding ObjectManager::Attribute for it
- # This migration adds the User.country attribute if and only if it does not exist already
- class AddCountryAttributeToUsers < ActiveRecord::Migration[5.1]
- def up
- # return if it's a new setup
- return if !Setting.find_by(name: 'system_init_done')
- # return if the country attribute already exists
- current_country_attribute = ObjectManager::Attribute.find_by(object_lookup_id: ObjectLookup.by_name('User'), name: 'country')
- return if current_country_attribute.present?
- ObjectManager::Attribute.add(
- force: true,
- object: 'User',
- name: 'country',
- display: 'Country',
- data_type: 'input',
- data_option: {
- type: 'text',
- maxlength: 100,
- null: true,
- item_class: 'formGroup--halfSize',
- },
- editable: true,
- active: false,
- screens: {
- signup: {},
- invite_agent: {},
- invite_customer: {},
- edit: {
- '-all-' => {
- null: true,
- },
- },
- view: {
- '-all-' => {
- shown: true,
- },
- },
- },
- to_create: false,
- to_migrate: false,
- to_delete: false,
- position: 1325,
- created_by_id: 1,
- updated_by_id: 1,
- )
- end
- end
|