Class: StudentCreateFormController
- Inherits:
-
Object
- Object
- StudentCreateFormController
- Defined in:
- lib/source/controllers/student_create_form_controller.rb
Instance Method Summary collapse
-
#initialize(controller) ⇒ StudentCreateFormController
constructor
A new instance of StudentCreateFormController.
- #on_db_conn_error(e) ⇒ Object
- #on_view_created ⇒ Object
- #process_fields(fields) ⇒ Object
- #view=(view) ⇒ Object
Constructor Details
#initialize(controller) ⇒ StudentCreateFormController
Returns a new instance of StudentCreateFormController.
7 8 9 10 |
# File 'lib/source/controllers/student_create_form_controller.rb', line 7 def initialize(controller) @controller = controller LoggerHolder.instance.debug('StudentCreateFormController: initialized') end |
Instance Method Details
#on_db_conn_error(e) ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/source/controllers/student_create_form_controller.rb', line 41 def on_db_conn_error(e) LoggerHolder.instance.debug('StudentCreateFormController: DB connection error:') LoggerHolder.instance.error(error.) script = "display dialog \"Отсутсвует подключение к БД #{e.}\" with title \"Ошибка\"" system 'osascript', '-e', script exit(false) end |
#on_view_created ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/source/controllers/student_create_form_controller.rb', line 12 def on_view_created begin @student_rep = StudentList.new(StudentListDbAdapter.new) rescue SQLException::SQLException => e on_db_conn_error(e) end end |
#process_fields(fields) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/source/controllers/student_create_form_controller.rb', line 25 def process_fields(fields) last_name = fields.delete(:last_name) first_name = fields.delete(:first_name) paternal_name = fields.delete(:paternal_name) # TODO написать пользователю что он не прав return if last_name.nil? || first_name.nil? || paternal_name.nil? student = Student.new(last_name, first_name, paternal_name, **fields) @student_rep.add_student(student) @view.close @controller.view.refresh_current_page LoggerHolder.instance.debug('StudentCreateFormController: add student') end |
#view=(view) ⇒ Object
20 21 22 23 |
# File 'lib/source/controllers/student_create_form_controller.rb', line 20 def view=(view) @view = view LoggerHolder.instance.debug('StudentCreateFormController: setter view') end |