You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
535 B
25 lines
535 B
# frozen_string_literal: true |
|
|
|
class Form::Migration |
|
include ActiveModel::Validations |
|
|
|
attr_accessor :acct, :account |
|
|
|
def initialize(attrs = {}) |
|
@account = attrs[:account] |
|
@acct = attrs[:account].acct unless @account.nil? |
|
@acct = attrs[:acct].gsub(/\A@/, '').strip unless attrs[:acct].nil? |
|
end |
|
|
|
def valid? |
|
return false unless super |
|
set_account |
|
errors.empty? |
|
end |
|
|
|
private |
|
|
|
def set_account |
|
self.account = (ResolveAccountService.new.call(acct) if account.nil? && acct.present?) |
|
end |
|
end
|
|
|