Sha256: 73e146deb185e131ca710e73c7dbfa219f471e78f39c4a318738e94407f9f713
Contents?: true
Size: 1.17 KB
Versions: 2
Compression:
Stored size: 1.17 KB
Contents
# frozen_string_literal: true require 'win32api' class StudentInputFormController def initialize(parent_controller) @parent_controller = parent_controller end def set_view(view) @view = view end def on_view_created begin @student_list = StudentListAdv.new(StudentsListDBAdapter.new(StudentListDB.instance)) rescue Mysql2::Error::ConnectionError on_db_conn_error end end def process_fields(fields) begin last_name = fields.delete(:last_name) first_name = fields.delete(:first_name) parental_name = fields.delete(:parental_name) return if last_name.nil? || first_name.nil? || parental_name.nil? student = Student.new(last_name, first_name, parental_name, **fields) @student_list.add_student(student) @view.close rescue ArgumentError => e api = Win32API.new('user32', 'MessageBox', ['L', 'P', 'P', 'L'], 'I') api.call(0, e.message, 'Error', 0) end end 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
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
mvcStudentXD-1.0.1 | lib/student_input_form_controller.rb |
model_XD-0.1.0 | lib/student_input_form_controller.rb |