aboutsummaryrefslogtreecommitdiff
path: root/app/controllers/course/messenger.php
diff options
context:
space:
mode:
authorMarcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de>2023-06-13 06:18:55 +0000
committerMarcus Eibrink-Lunzenauer <lunzenauer@elan-ev.de>2023-06-13 06:18:55 +0000
commit86504cf65b83145bffb9c2bfc487373049b76722 (patch)
treed8e6b4be1213cd5a12a8169f2f5b7c57c18a5d74 /app/controllers/course/messenger.php
parentb2bbd2919fd458184f681a26bf56c15cc823c343 (diff)
Refactor Blubber using vue, closes #1695
Closes #1695 Merge request studip/studip!1791
Diffstat (limited to 'app/controllers/course/messenger.php')
-rw-r--r--app/controllers/course/messenger.php47
1 files changed, 20 insertions, 27 deletions
diff --git a/app/controllers/course/messenger.php b/app/controllers/course/messenger.php
index 79db849..8acd24b 100644
--- a/app/controllers/course/messenger.php
+++ b/app/controllers/course/messenger.php
@@ -6,7 +6,8 @@ class Course_MessengerController extends AuthenticatedController
parent::before_filter($action, $args);
PageLayout::setBodyElementId('blubber-index');
- PageLayout::setHelpKeyword("Basis/InteraktionBlubber");
+ PageLayout::setHelpKeyword('Basis/InteraktionBlubber');
+ PageLayout::setTitle(_('Blubber'));
}
public function course_action($thread_id = null)
@@ -17,6 +18,7 @@ class Course_MessengerController extends AuthenticatedController
Navigation::activateItem('/course/blubber');
}
+ $this->search = '';
$this->threads = BlubberThread::findByContext(Context::get()->id, true, Context::getType());
$this->thread = null;
$this->threads_more_down = 0;
@@ -32,17 +34,26 @@ class Course_MessengerController extends AuthenticatedController
}
}
}
- if (!$this->thread || Request::get("thread") === "new") {
+ if (!$this->thread || Request::get('thread') === 'new') {
$threads = array_reverse($this->threads);
$this->thread = array_pop($threads);
}
- $this->thread->markAsRead();
- $this->thread_data = $this->thread->getJSONData();
- $_SESSION['already_asked_for_avatar'] = false;
- if (!Avatar::getAvatar($GLOBALS['user']->id)->is_customized() && !$_SESSION['already_asked_for_avatar']) {
+ if ($this->thread) {
+ $this->thread->markAsRead();
+ }
+
+ if (!Avatar::getAvatar($GLOBALS['user']->id)->is_customized()) {
$_SESSION['already_asked_for_avatar'] = true;
- PageLayout::postInfo(sprintf(_("Wollen Sie ein Avatar-Bild nutzen? %sLaden Sie jetzt ein Bild hoch%s."), '<a href="'.URLHelper::getURL("dispatch.php/avatar/update/user/".$GLOBALS['user']->id).'" data-dialog>', '</a>'));
+ PageLayout::postInfo(
+ sprintf(
+ _('Wollen Sie ein Avatar-Bild nutzen? %sLaden Sie jetzt ein Bild hoch%s.'),
+ '<a href="' .
+ URLHelper::getURL('dispatch.php/avatar/update/user/' . $GLOBALS['user']->id) .
+ '" data-dialog>',
+ '</a>'
+ )
+ );
}
$this->buildSidebar();
@@ -57,25 +68,7 @@ class Course_MessengerController extends AuthenticatedController
protected function buildSidebar()
{
$sidebar = Sidebar::Get();
- $search = new SearchWidget("#");
- $search->addNeedle(
- _("Suche nach ..."),
- "search",
- true,
- null,
- null,
- null,
- []
- );
- $sidebar->addWidget($search, "blubbersearch");
-
- $threads_widget = new BlubberThreadsWidget();
- foreach ($this->threads as $thread) {
- $threads_widget->addThread($thread);
- }
- if ($this->thread) {
- $threads_widget->setActive($this->thread->getId());
- }
- $sidebar->addWidget($threads_widget, "threads");
+ $sidebar->addWidget(new VueWidget('blubber-search-widget'));
+ $sidebar->addWidget(new VueWidget('blubber-threads-widget'));
}
}