Class: StudentListController
- Inherits:
-
Object
- Object
- StudentListController
- Defined in:
- lib/source/controllers/student_list_controller.rb
Instance Attribute Summary collapse
-
#view ⇒ Object
readonly
Returns the value of attribute view.
Instance Method Summary collapse
- #delete_selected(current_page, per_page, selected_row) ⇒ Object
-
#initialize(view) ⇒ StudentListController
constructor
A new instance of StudentListController.
-
#on_db_conn_error ⇒ Object
разрыв соединения с бд.
- #on_view_created ⇒ Object
-
#refresh_data(k, n) ⇒ Object
rescue on_db_conn_error end.
- #show_add_student ⇒ Object
- #show_contact_student(current_page, per_page, selected_row) ⇒ Object
- #show_edit_student(current_page, per_page, selected_row) ⇒ Object
- #show_git_student(current_page, per_page, selected_row) ⇒ Object
- #show_view ⇒ Object
Constructor Details
#initialize(view) ⇒ StudentListController
Returns a new instance of StudentListController.
19 20 21 22 23 24 25 |
# File 'lib/source/controllers/student_list_controller.rb', line 19 def initialize(view) LoggerHolder.instance.debug('StudentListController: init start') @view = view @data_list = DataListStudentShort.new([]) @data_list.add_observer(@view) LoggerHolder.instance.debug('StudentListController: init done') end |
Instance Attribute Details
#view ⇒ Object (readonly)
Returns the value of attribute view.
18 19 20 |
# File 'lib/source/controllers/student_list_controller.rb', line 18 def view @view end |
Instance Method Details
#delete_selected(current_page, per_page, selected_row) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'lib/source/controllers/student_list_controller.rb', line 84 def delete_selected(current_page, per_page, selected_row) # begin #student_num = (current_page - 1) * per_page + selected_row student_num = selected_row puts student_num @data_list.select_elem(student_num) student_id = @data_list.selected_id @student_list.remove_student(student_id) # rescue # on_db_conn_error # end end |
#on_db_conn_error ⇒ Object
разрыв соединения с бд
107 108 109 110 111 |
# File 'lib/source/controllers/student_list_controller.rb', line 107 def on_db_conn_error script = 'display dialog "Отсутсвует подключение к БД" with title "Ошибка"' system 'osascript', '-e', script exit(false) end |
#on_view_created ⇒ Object
27 28 29 30 31 32 33 34 35 36 |
# File 'lib/source/controllers/student_list_controller.rb', line 27 def on_view_created #@student_list = StudentList.new(StudentListFileAdapter.new(StudentListJSON.new, './LabStudents/test_data/students.json')) begin @student_list=StudentList.new(StudentListDbAdapter.new) LoggerHolder.instance.debug('StudentListController: view create') rescue on_db_conn_error end end |
#refresh_data(k, n) ⇒ Object
rescue on_db_conn_error end
96 97 98 99 100 101 102 103 104 |
# File 'lib/source/controllers/student_list_controller.rb', line 96 def refresh_data(k, n) # begin #raise StandardError, "Error DB" @data_list = @student_list.k_n_student_short_list(k, n, @data_list) @view.update_student_count(@student_list.student_count) # rescue # on_db_conn_error # end end |
#show_add_student ⇒ Object
43 44 45 46 47 48 49 |
# File 'lib/source/controllers/student_list_controller.rb', line 43 def show_add_student() LoggerHolder.instance.debug('StudentListController: show add student') controller = StudentCreateFormController.new(self) view = StudentCreateForm.new(controller) controller.view=view view.create.show end |
#show_contact_student(current_page, per_page, selected_row) ⇒ Object
73 74 75 76 77 78 79 80 81 82 |
# File 'lib/source/controllers/student_list_controller.rb', line 73 def show_contact_student(current_page, per_page, selected_row) LoggerHolder.instance.debug('StudentListController: show edit git') student_num = selected_row @data_list.select_elem(student_num) student_id = @data_list.selected_id controller = StudentContactFormController.new(self, student_id) view = StudentCreateForm.new(controller) controller.view=view view.create.show end |
#show_edit_student(current_page, per_page, selected_row) ⇒ Object
51 52 53 54 55 56 57 58 59 60 |
# File 'lib/source/controllers/student_list_controller.rb', line 51 def show_edit_student(current_page, per_page, selected_row) LoggerHolder.instance.debug('StudentListController: show edit name') student_num = selected_row @data_list.select_elem(student_num) student_id = @data_list.selected_id controller = StudentEditFormController.new(self, student_id) view = StudentCreateForm.new(controller) controller.view=view view.create.show end |
#show_git_student(current_page, per_page, selected_row) ⇒ Object
62 63 64 65 66 67 68 69 70 71 |
# File 'lib/source/controllers/student_list_controller.rb', line 62 def show_git_student(current_page, per_page, selected_row) LoggerHolder.instance.debug('StudentListController: show edit git') student_num = selected_row @data_list.select_elem(student_num) student_id = @data_list.selected_id controller = StudentGitFormController.new(self, student_id) view = StudentCreateForm.new(controller) controller.view=view view.create.show end |
#show_view ⇒ Object
39 40 41 |
# File 'lib/source/controllers/student_list_controller.rb', line 39 def show_view @view.create.show end |