Sha256: f594b50c55939752d0a8d20f2c01af4dc0c9c52b7850283ced799960b5062b19
Contents?: true
Size: 1.3 KB
Versions: 1
Compression:
Stored size: 1.3 KB
Contents
# frozen_string_literal: true require 'win32api' class OwnerInputFormControllerEdit def initialize(parent_controller, item) @parent_controller = parent_controller @item = item @owner_rep = OwnerDBDataSource.new end def set_view(view) @view = view end def on_view_created # begin # @student_rep = StudentRepository.new(DBSourceAdapter.new) # rescue Mysql2::Error::ConnectionError # on_db_conn_error # end # @item = @author_rep.get(@item_id) # @view.make_readonly(:git, :telegram, :email, :phone) populate_fields(@item) end def populate_fields(item) @view.set_value(:first_name, item.first_name) @view.set_value(:last_name, item.last_name) @view.set_value(:father_name, item.father_name) end def process_fields(fields) begin item = Owner.new(@item.owner_id, *fields.values) item = @owner_rep.change(item) @parent_controller.state_notifier.replace(@item, item) @view.close rescue ArgumentError => e api = Win32API.new('user32', 'MessageBox', ['L', 'P', 'P', 'L'], 'I') api.call(0, e.message, 'Error', 0) end end private def on_db_conn_error api = Win32API.new('user32', 'MessageBox', ['L', 'P', 'P', 'L'], 'I') api.call(0, "No connection to DB", "Error", 0) @view.close end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
shnaider_carproj-0.1.0 | lib/owner/controllers/owner_input_form_controller_edit.rb |