1234567891011121314151617181920212223242526272829303132333435 |
- # frozen_string_literal: true
- class Form::IpBlockBatch
- include ActiveModel::Model
- include Authorization
- include AccountableConcern
- attr_accessor :ip_block_ids, :action, :current_account
- def save
- case action
- when 'delete'
- delete!
- end
- end
- private
- def ip_blocks
- @ip_blocks ||= IpBlock.where(id: ip_block_ids)
- end
- def delete!
- verify_authorization(:destroy?)
- ip_blocks.each do |ip_block|
- ip_block.destroy
- log_action :destroy, ip_block
- end
- end
- def verify_authorization(permission)
- ip_blocks.each { |ip_block| authorize(ip_block, permission) }
- end
- end
|