Exemplo n.º 1
0
 /**
  * @covers \thebuggenie\core\framework\Event::getParameters
  * @covers \thebuggenie\core\framework\Event::getParameter
  * @depends testCreateNew
  */
 public function testParameters(\thebuggenie\core\framework\Event $event)
 {
     $this->assertArrayHasKey('param1', $event->getParameters());
     $this->assertEquals(1, $event->getParameter('param1'));
     $this->assertArrayHasKey('param2', $event->getParameters());
     $this->assertEquals(2, $event->getParameter('param2'));
 }
Exemplo n.º 2
0
 public function listen_accountSaveNotificationSettings(framework\Event $event)
 {
     $request = $event->getParameter('request');
     $notificationsettings = $this->_getNotificationSettings();
     foreach ($notificationsettings as $setting => $description) {
         if ($request->hasParameter('mailing_' . $setting)) {
             framework\Context::getUser()->setNotificationSetting($setting, true, 'mailing')->save();
         } else {
             framework\Context::getUser()->setNotificationSetting($setting, false, 'mailing')->save();
         }
     }
 }
Exemplo n.º 3
0
 public function listen_projectconfig_panel(framework\Event $event)
 {
     include_component('vcs_integration/projectconfig_panel', array('selected_tab' => $event->getParameter('selected_tab'), 'access_level' => $event->getParameter('access_level'), 'project' => $event->getParameter('project')));
 }
Exemplo n.º 4
0
 /**
  * Header wiki menu and search dropdown / list
  *
  * @Listener(module="core", identifier="templates/headermainmenu::projectmenulinks")
  *
  * @param \thebuggenie\core\framework\Event $event
  */
 public function listen_MenustripLinks(framework\Event $event)
 {
     $project_url = framework\Context::isProjectContext() ? framework\Context::getRouting()->generate('publish_article', array('article_name' => ucfirst(framework\Context::getCurrentProject()->getKey()) . ':MainPage')) : null;
     $wiki_url = framework\Context::isProjectContext() && framework\Context::getCurrentProject()->hasWikiURL() ? framework\Context::getCurrentProject()->getWikiURL() : null;
     $url = framework\Context::getRouting()->generate('publish');
     framework\ActionComponent::includeComponent('publish/menustriplinks', array('url' => $url, 'project_url' => $project_url, 'wiki_url' => $wiki_url, 'selected_tab' => $event->getParameter('selected_tab')));
 }
Exemplo n.º 5
0
 public function listenIssueSaveAddComment(\thebuggenie\core\framework\Event $event)
 {
     $this->comment_lines = $event->getParameter('comment_lines');
     $this->comment = $event->getParameter('comment');
 }
Exemplo n.º 6
0
 public function listen_accountSaveNotificationSettings(framework\Event $event)
 {
     $request = $event->getParameter('request');
     $notificationsettings = $this->_getNotificationSettings();
     foreach ($notificationsettings as $setting => $description) {
         if ($request->hasParameter('mailing_' . $setting)) {
             framework\Context::getUser()->setNotificationSetting($setting, true, 'mailing')->save();
         } else {
             framework\Context::getUser()->setNotificationSetting($setting, false, 'mailing')->save();
         }
     }
     // Currently you can only select one category of new issues to be notified regardless of multiple modules implementing notifications. However in this module's code local constant "NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY" will be referenced and that's why code below update its value based on core module's notifications settings.
     if ($request->hasParameter('core_' . framework\Settings::SETTINGS_USER_NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY)) {
         framework\Context::getUser()->setNotificationSetting(self::NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY, $request->getParameter('core_' . framework\Settings::SETTINGS_USER_NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY), 'mailing')->save();
     } else {
         framework\Context::getUser()->setNotificationSetting(self::NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY, false, 'mailing')->save();
     }
 }
Exemplo n.º 7
0
 public function listenPublishFixtureArticleCreated(\thebuggenie\core\framework\Event $event)
 {
     $this->cliEcho($event->getParameter('imported') ? "Importing " : "Skipping ");
     $this->cliEcho($event->getSubject() . "\n", 'white', 'bold');
 }
Exemplo n.º 8
0
 public function listen_accountSaveNotificationSettings(framework\Event $event)
 {
     $request = $event->getParameter('request');
     $notificationsettings = $this->_getNotificationSettings();
     $category_key = self::NOTIFY_NEW_ISSUES_MY_PROJECTS_CATEGORY;
     foreach ($notificationsettings as $setting => $description) {
         if ($setting == $category_key) {
             continue;
         }
         if ($request->hasParameter('mailing_' . $setting)) {
             framework\Context::getUser()->setNotificationSetting($setting, true, 'mailing')->save();
         } else {
             framework\Context::getUser()->setNotificationSetting($setting, false, 'mailing')->save();
         }
     }
     foreach ($event->getParameter('categories') as $category_id => $category) {
         if ($request->hasParameter('mailing_' . $category_key . '_' . $category_id)) {
             framework\Context::getUser()->setNotificationSetting($category_key . '_' . $category_id, true, 'mailing')->save();
         } else {
             framework\Context::getUser()->setNotificationSetting($category_key . '_' . $category_id, false, 'mailing')->save();
         }
     }
 }