From b70bc19f88b21da74ff2c780df39b75cfdb8bd67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michaela=20Br=C3=BCckner?= Date: Mon, 15 Aug 2022 13:45:42 +0200 Subject: first step: looking for room, re #1327 --- app/controllers/admin/courses.php | 1 + app/controllers/course/room_requests.php | 56 +++++++++++++ .../room_requests/_new_request_form_header.php | 0 .../course/room_requests/_new_request_header.php | 4 + .../course/room_requests/find_by_property.php | 1 + .../course/room_requests/find_by_roomname.php | 92 +++++++++++++++++++++ app/views/course/room_requests/new_request.php | 93 ++++++++++++++++++++++ .../course/room_requests/request_first_step.php | 1 + app/views/course/timesrooms/_roomRequest.php | 2 +- lib/modules/CoreAdmin.class.php | 3 + 10 files changed, 252 insertions(+), 1 deletion(-) create mode 100644 app/views/course/room_requests/_new_request_form_header.php create mode 100644 app/views/course/room_requests/_new_request_header.php create mode 100644 app/views/course/room_requests/find_by_property.php create mode 100644 app/views/course/room_requests/find_by_roomname.php create mode 100644 app/views/course/room_requests/new_request.php create mode 100644 app/views/course/room_requests/request_first_step.php diff --git a/app/controllers/admin/courses.php b/app/controllers/admin/courses.php index 711494a..5a89dba 100644 --- a/app/controllers/admin/courses.php +++ b/app/controllers/admin/courses.php @@ -1070,6 +1070,7 @@ class Admin_CoursesController extends AuthenticatedController 'attributes' => ['data-dialog' => 'size=big'], ]; } + ksort($actions); foreach (PluginManager::getInstance()->getPlugins('AdminCourseAction') as $plugin) { diff --git a/app/controllers/course/room_requests.php b/app/controllers/course/room_requests.php index 8747e9b..3b8d4c2 100644 --- a/app/controllers/course/room_requests.php +++ b/app/controllers/course/room_requests.php @@ -245,6 +245,62 @@ class Course_RoomRequestsController extends AuthenticatedController } + + public function new_request_action($request_id = '') + { + if (!Config::get()->RESOURCES_ALLOW_ROOM_REQUESTS) { + throw new AccessDeniedException( + _('Das Erstellen von Raumanfragen ist nicht erlaubt!') + ); + } + Helpbar::get()->addPlainText( + _('Information'), + _('Hier können Sie Angaben zu gewünschten Raumeigenschaften machen.') + ); + + $this->request_id = $request_id; + if (Request::submitted('request_id')) { + $this->request_id = Request::get('request_id'); + } + if (!$this->request_id) { + $this->request_id = md5(uniqid('RoomRequest')); + } + + $this->request = null; + $this->request = RoomRequest::find(Request::get('request_id')); + $this->available_room_categories = ResourceCategory::findByClass_name( + 'Room' + ); + + } + + public function request_first_step_action($request_id) + { + $this->request_id = $request_id; + + if (Request::isPost()) { + CSRFProtection::verifyUnsafeRequest(); + $this->room_name = Request::get('room_name'); + $this->category_id = Request::get('category_id'); + + if ($this->room_name != null) { + $_SESSION[$request_id]['room_name'] = $this->room_name; + $this->redirect( + 'course/room_requests/find_by_roomname/' . $this->request_id + ); + } + } + + } + + public function find_by_roomname_action($request_id) + { + $this->request_id = $request_id; + + } + + + /************ OLD STUFF *******/ /** * This action is the entry point for adding properties to a room request. */ diff --git a/app/views/course/room_requests/_new_request_form_header.php b/app/views/course/room_requests/_new_request_form_header.php new file mode 100644 index 0000000..e69de29 diff --git a/app/views/course/room_requests/_new_request_header.php b/app/views/course/room_requests/_new_request_header.php new file mode 100644 index 0000000..7575786 --- /dev/null +++ b/app/views/course/room_requests/_new_request_header.php @@ -0,0 +1,4 @@ +Achtung: Um später einen passenden Raum für Ihre Veranstaltung zu bekommen, geben Sie bitte immer die gewünschten Eigenschaften mit an!')] +)?> diff --git a/app/views/course/room_requests/find_by_property.php b/app/views/course/room_requests/find_by_property.php new file mode 100644 index 0000000..b3d9bbc --- /dev/null +++ b/app/views/course/room_requests/find_by_property.php @@ -0,0 +1 @@ +controller->link_for('course/room_requests/request_first_step/' . $request_id) ?>" + > + + + + + render_partial( + 'course/room_requests/_new_request_header') ?> + + + +
+
+
+ + + + + + +
+
+ +
+
+ + + +
+ +
+
+render_partial('course/room_requests/_request_form_footer') ?> + diff --git a/app/views/course/room_requests/new_request.php b/app/views/course/room_requests/new_request.php new file mode 100644 index 0000000..e1b554d --- /dev/null +++ b/app/views/course/room_requests/new_request.php @@ -0,0 +1,93 @@ +
> + + + + +render_partial( + 'course/room_requests/_new_request_header') ?> + + + + +
+
+
+ + + + + + +
+
+ +
+
+ + + +
+ +
+
+render_partial('course/room_requests/_request_form_footer') ?> + diff --git a/app/views/course/room_requests/request_first_step.php b/app/views/course/room_requests/request_first_step.php new file mode 100644 index 0000000..b3d9bbc --- /dev/null +++ b/app/views/course/room_requests/request_first_step.php @@ -0,0 +1 @@ + -