diff --git a/app/controllers/account/settings_controller.rb b/app/controllers/account/settings_controller.rb index 6b08abba2..29a037ab5 100644 --- a/app/controllers/account/settings_controller.rb +++ b/app/controllers/account/settings_controller.rb @@ -1,6 +1,17 @@ class Account::SettingsController < ApplicationController + before_action def show @account = Account.sole @users = User.active.alphabetically end + + def update + Account.sole.update!(account_params) + redirect_to account_settings_path + end + + private + def account_params + params.expect account: %i[ name ] + end end diff --git a/app/javascript/controllers/form_controller.js b/app/javascript/controllers/form_controller.js index db1602feb..68d6b554b 100644 --- a/app/javascript/controllers/form_controller.js +++ b/app/javascript/controllers/form_controller.js @@ -20,7 +20,7 @@ export default class extends Controller { const input = this.hasInputTarget ? this.inputTarget : null if (input) { - const value = (input.value || "").trim() + const value = (input.value || "").trim() if (value.length === 0) { event.preventDefault() } diff --git a/app/models/account.rb b/app/models/account.rb index 38f67d0da..357d0cc29 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -5,6 +5,8 @@ class Account < ApplicationRecord after_create :create_join_code + validates :name, presence: true + class << self def create_with_admin_user(account:, owner:) create!(**account).tap do diff --git a/app/views/account/settings/_name.html.erb b/app/views/account/settings/_name.html.erb new file mode 100644 index 000000000..475b92924 --- /dev/null +++ b/app/views/account/settings/_name.html.erb @@ -0,0 +1,9 @@ +