Sha256: 91639753d85499e0c9964a1c73e96d925d12fdf17c673c62dfd0ba80d43cdb30

Contents?: true

Size: 852 Bytes

Versions: 2

Compression:

Stored size: 852 Bytes

Contents

require 'sqlite3'
require_relative 'studentList'
require_relative 'studentFileAdapter'
require_relative 'logger_holder'
class StudentCreateFormController
  def initialize(controller)
    @controller = controller
  end

  def on_view_created
    begin
      #raise StandardError "Test"
      @student_rep = StudentList.new(StudentListDBAdapter.new)
    rescue SQLException::SQLException => e
      on_db_conn_error(e)
    end
  end

  def view=(view)
    @view = view
  end

  def process_fields(fields)
    student = Student.new(**fields)
    @student_rep.add_student(student)
    @view.close
    @controller.view.refresh_current_page
  end

  def on_db_conn_error(e)
    api = Win32API.new('user32', 'MessageBox', ['L', 'P', 'P', 'L'], 'I')
    api.call(0, "No connection to DB", "Error", 0)
    exit(false)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rafmycat-1.0.1 lib/source/student_create_form_controller.rb
rafmycat-1.0.0 lib/source/student_create_form_controller.rb