public function getProcessForQueue($request_queue) { $owner = SystemEvent::OWNER_APP; $custom_queues = array(); $this->event_manager->processEvent(Event::SYSTEM_EVENT_GET_CUSTOM_QUEUES, array('queues' => &$custom_queues)); if (isset($custom_queues[$request_queue])) { $this->logger = $custom_queues[$request_queue]->getLogger(); $this->logger->debug('Processing ' . $request_queue . ' queue.'); $process = new SystemEventProcessCustomQueue($request_queue); $owner = $custom_queues[$request_queue]->getOwner(); } else { switch ($request_queue) { case SystemEvent::OWNER_APP: $this->logger->debug('Processing default queue as app user.'); $process = new SystemEventProcessApplicationOwnerDefaultQueue(); break; case SystemEvent::DEFAULT_QUEUE: $this->logger->debug('Processing default queue as root user.'); $owner = SystemEvent::OWNER_ROOT; $process = new SystemEventProcessRootDefaultQueue(); break; default: $this->logger->debug('Ignoring ' . $request_queue . ' queue.'); exit(0); } } if ($owner === SystemEvent::OWNER_APP) { return new SystemEventProcessor_ApplicationOwner($process, $this->system_event_manager, new SystemEventDao(), $this->logger); } return new SystemEventProcessor_Root($process, $this->system_event_manager, new SystemEventDao(), $this->logger, Backend::instance('Aliases'), Backend::instance('CVS'), Backend::instance('SVN'), Backend::instance('System'), new SiteCache($this->logger)); }
public function getStatistics($statistic_name, $date_start, $date_end) { $statistics_data = array(); $params = array('statistic_name' => $statistic_name, 'date_start' => $date_start, 'date_end' => $date_end, 'result' => &$statistics_data); $this->event_manager->processEvent('get_statistics_aggregation', $params); return $statistics_data; }
private function getModFromPlugins(array $project_info, $requested_authentication_method, $project_authorizes_tokens) { $svn_apache_auth = null; $params = array('svn_apache_auth' => &$svn_apache_auth, 'svn_conf_auth' => $requested_authentication_method, 'project_authorizes_tokens' => $project_authorizes_tokens, 'project_info' => $project_info); $this->event_manager->processEvent(Event::SVN_APACHE_AUTH, $params); return $svn_apache_auth; }
public function getMilestoneRepresentation(Planning_Milestone $milestone, PFUser $user) { $milestone_representation = new MilestoneRepresentation(); $milestone_representation->build($milestone, $this->milestone_factory->getMilestoneStatusCount($user, $milestone), $this->getBacklogTrackers($milestone), $this->milestone_factory->userCanChangePrioritiesInMilestone($milestone, $user)); $this->event_manager->processEvent(AGILEDASHBOARD_EVENT_REST_GET_MILESTONE, array('version' => 'v1', 'user' => $user, 'milestone' => $milestone, 'milestone_representation' => &$milestone_representation)); return $milestone_representation; }
public function update(Codendi_Request $request, Response $response) { $emailgateway_mode = $request->get('emailgateway_mode'); if ($emailgateway_mode && $this->config->setEmailgatewayMode($emailgateway_mode)) { $response->addFeedback(Feedback::INFO, $GLOBALS['Language']->getText('plugin_tracker_config', 'successfully_updated')); } $this->event_manager->processEvent(Event::UPDATE_ALIASES, null); $response->redirect($_SERVER['REQUEST_URI']); }
public function itFallbackToCallHookIfGivenCallbackDoesNotExist() { $event = 'an_event'; $params = array('some_params'); $listener = new Event2MockEventListener($this); stub($listener)->CallHook($event, $params)->once(); $em = new EventManager(); $em->addListener($event, $listener, 'doSomething', false); $em->processEvent($event, $params); }
/** * Import cardwall ontop from XML input * * @param SimpleXMLElement $xml_input * @throws CardwallFromXmlImportCannotBeEnabledException */ public function import(SimpleXMLElement $xml_input) { if (!$xml_input->{CardwallConfigXml::NODE_CARDWALL}) { return; } $rng_path = realpath(CARDWALL_BASE_DIR . '/../www/resources/xml_project_cardwall.rng'); $this->xml_validator->validate($xml_input->{CardwallConfigXml::NODE_CARDWALL}, $rng_path); $this->importCardwalls($xml_input->{CardwallConfigXml::NODE_CARDWALL}); $this->event_manager->processEvent(Event::IMPORT_XML_PROJECT_CARDWALL_DONE, array('project_id' => $this->group_id, 'xml_content' => $xml_input, 'mapping' => $this->mapping)); }
private function allowSVNTokensForProject($project_to_migrate) { $project = $this->project_manager->getProjectFromAutocompleter($project_to_migrate); if ($project && $this->token_manager->canAuthorizeTokens($project)) { $this->token_manager->setProjectAuthorizesTokens($project); $this->event_manager->processEvent(Event::SVN_AUTHORIZE_TOKENS, array('group_id' => $project->getID())); $GLOBALS['Response']->addFeedback(Feedback::INFO, $GLOBALS['Language']->getText('svn_tokens', 'allowed_project_allow_project')); } else { $this->sendUpdateProjectListError(); } }
private function importContent($project_id, $file_contents) { $this->logger->info("Importing project in project {$project_id}"); $this->checkFileIsValidXML($file_contents); $xml_element = simplexml_load_string($file_contents); $project = $this->getProject($project_id); $this->importUgroups($project, $xml_element); $this->logger->info("Ask to plugin to import data from XML"); $this->event_manager->processEvent(Event::IMPORT_XML_PROJECT, array('project' => $project, 'xml_content' => $xml_element)); $this->logger->info("Finish importing project in project {$project_id}"); }
public function __viewIndexEventNames($context) { $EventManager = new EventManager($this->_Parent); $events = $EventManager->listAll(); $options = array(); foreach ($events as $event) { $selected = $this->_driver->isEventNameSelected($event['handle']); $options[] = array($event['handle'], $selected, $event['name']); } $section = Widget::Label('Selected'); $section->appendChild(Widget::Select('settings[event-names][]', $options, array('multiple' => 'multiple'))); $context->appendChild($section); }
private function importContent(Project $project, $xml_contents, $extraction_path) { $project_id = $project->getID(); $this->logger->info("Importing project in project {$project_id}"); $this->checkFileIsValidXML($xml_contents); $xml_element = simplexml_load_string($xml_contents); $this->importUgroups($project, $xml_element); $svn = new SVNXMLImporter($this->logger, $this->xml_validator); $svn->import($project, $xml_element, $extraction_path); $this->logger->info("Ask to plugin to import data from XML"); $this->event_manager->processEvent(Event::IMPORT_XML_PROJECT, array('project' => $project, 'xml_content' => $xml_element, 'extraction_path' => $extraction_path, 'user_finder' => $this->user_finder)); $this->logger->info("Finish importing project in project {$project_id}"); }
public function updateAccess($new_value, $old_value) { if ($new_value === $old_value) { return; } $property_name = ForgeAccess::CONFIG; $this->config_dao->save($property_name, $new_value); $this->event_manager->processEvent(Event::SITE_ACCESS_CHANGE, array('new_value' => $new_value, 'old_value' => $old_value)); if ($old_value === ForgeAccess::RESTRICTED || $new_value === ForgeAccess::RESTRICTED) { $this->project_manager->disableAllowRestrictedForAll(); $this->permission_manager->disableRestrictedAccess(); } }
function run() { try { $repository = new SapphireEventRepository(); $tx_manager = SapphireTransactionManager::getInstance(); $event_manager = new EventManager($repository, new EventRegistrationRequestFactory(), null, new SapphireEventPublishingService(), new EventValidatorFactory(), $tx_manager); $rss_events = $event_manager->rssEvents(10000); $events_array = $event_manager->rss2events($rss_events); $event_manager->saveRssEvents($events_array); return 'OK'; } catch (Exception $ex) { SS_Log::log($ex, SS_Log::ERR); echo $ex->getMessage(); } }
function _content($params) { if (isset($params['version_number'])) { $version_factory =& $this->_getVersionFactory($params); $version =& $version_factory->getSpecificVersion($params['item'], $params['version_number']); } else { $version =& $params['item']->getCurrentVersion(); } if ($version) { if (file_exists($version->getPath())) { $event_manager =& EventManager::instance(); $event_manager->processEvent('plugin_docman_event_access', array('group_id' => $params['group_id'], 'item' => &$params['item'], 'version' => $version->getNumber(), 'user' => &$params['user'])); $mime = explode('/', $version->getFiletype()); if (in_array($mime[1], array('plain', 'css', 'javascript'))) { $balise = 'pre'; } else { $balise = 'div'; } echo '<' . $balise . ' class="docman_embedded_file_content">'; echo $this->hp->purify(file_get_contents($version->getPath()), CODENDI_PURIFIER_FULL); echo '</' . $balise . '>'; } else { $this->_controller->feedback->log('error', $GLOBALS['Language']->getText('plugin_docman', 'error_filenotfound')); $v =& new Docman_View_DocmanError($this->_controller); $v->display($params); } } }
private function initializeEvents() { EventManager::bind("GetGroupForumsMessageEvent"); EventManager::bind("GetGroupForumDataMessageEvent"); EventManager::bind("GetGroupForumThreadRootMessageEvent"); EventManager::bind("UpdateThreadMessageEvent"); EventManager::bind("UpdateForumSettingsMessageEvent"); EventManager::bind("AlterForumThreadStateMessageEvent"); EventManager::bind("PublishForumThreadMessageEvent"); EventManager::bind("ReadForumThreadMessageEvent"); EventManager::bind("RequestLeaveGroupMessageEvent"); EventManager::bind("ConfirmLeaveGroupMessageEvent"); EventManager::bind("AcceptGroupRequestMessageEvent"); EventManager::bind("CreateGuildMessageEvent"); EventManager::bind("GetGroupFurnitureMessageEvent"); EventManager::bind("GetGroupInfoMessageEvent"); EventManager::bind("GetGroupMembersMessageEvent"); EventManager::bind("GetGroupPurchaseBoxMessageEvent"); EventManager::bind("GetGroupPurchasingInfoMessageEvent"); EventManager::bind("GroupDeclineMembershipRequestMessageEvent"); EventManager::bind("GroupMakeAdministratorMessageEvent"); EventManager::bind("GroupManageMessageEvent"); EventManager::bind("GroupUpdateBadgeMessageEvent"); EventManager::bind("GroupUpdateColoursMessageEvent"); EventManager::bind("GroupUpdateNameMessageEvent"); EventManager::bind("GroupUpdateSettingsMessageEvent"); EventManager::bind("GroupUserJoinMessageEvent"); EventManager::bind("SetFavoriteGroupMessageEvent"); EventManager::bind("RemoveFavouriteGroupMessageEvent"); EventManager::bind("RemoveGroupAdminMessageEvent"); EventManager::bind("DeleteGroupMessageEvent"); }
public function tearDown() { unlink($GLOBALS['alias_file']); unset($GLOBALS['alias_file']); //clear the cache between each tests Backend::clearInstances(); EventManager::clearInstance(); }
public function getContent() { $request =& HTTPRequest::instance(); $group_id = $request->get('group_id'); $pm = ProjectManager::instance(); $project = $pm->getProject($group_id); $res_admin = db_query("SELECT user.user_id AS user_id,user.user_name AS user_name, user.realname as realname " . "FROM user,user_group " . "WHERE user_group.user_id=user.user_id AND user_group.group_id=" . db_ei($group_id) . " AND " . "user_group.admin_flags = 'A'"); if (db_numrows($res_admin) > 0) { $user_helper = UserHelper::instance(); $hp = Codendi_HTMLPurifier::instance(); $em = EventManager::instance(); echo '<span class="develtitle">' . $GLOBALS['Language']->getText('include_project_home', 'proj_admins') . ':</span><br />'; while ($row_admin = db_fetch_array($res_admin)) { $display_name = ''; $em->processEvent('get_user_display_name', array('user_id' => $row_admin['user_id'], 'user_name' => $row_admin['user_name'], 'realname' => $row_admin['realname'], 'user_display_name' => &$display_name)); if (!$display_name) { $display_name = $hp->purify($user_helper->getDisplayNameFromUserId($row_admin['user_id'])); } echo '<a href="/users/' . $row_admin['user_name'] . '/">' . $display_name . '</a><br />'; } } echo '<span class="develtitle">' . $GLOBALS['Language']->getText('include_project_home', 'proj_members') . ':</span><br />'; // count of developers on this project $res_count = db_query("SELECT user_id FROM user_group WHERE group_id=" . db_ei($group_id)); echo db_numrows($res_count); echo ' <a href="/project/memberlist.php?group_id=' . $group_id . '">[' . $GLOBALS['Language']->getText('include_project_home', 'view_members') . ']</a>'; }
/** * Returns the toolbar data in json format * * @return string */ function asJSON() { $container = $this->dispatcher->getContainer(); $request = $container->get('request'); // check if security key is defined $secKey = isset($container['log.to_debug_toolbar_seckey']) ? $container['log.to_debug_toolbar_seckey'] : false; // if so - get client seckey from http header if (!empty($secKey)) { $requestSecKey = $request->getServer()->get('HTTP_X_ZIKULA_DEBUGTOOLBAR'); // if client seckey is not valid - do not return data if ($secKey != $requestSecKey) { return ''; } } $data = array(); $data['__meta'] = array('realpath' => realpath('.')); $data['http_request'] = array('method' => $request->getMethod(), 'get' => (array) $request->getGet()->getCollection(), 'post' => (array) $request->getPost()->getCollection(), 'files' => (array) $request->getFiles()->getCollection(), 'cookie' => (array) $request->getCookie()->getCollection(), 'server' => (array) $request->getServer()->getCollection(), 'env' => (array) $request->getEnv()->getCollection()); foreach ($this->_panels as $name => $panel) { $title = $panel->getPanelTitle(); $data[$name] = array('title' => $title ? $title : $name, 'content' => $panel->getPaneldata()); } // need to suppress errors due to recursion warrnings $data = @json_encode($data); $html = "<script type=\"text/javascript\">Zikula.DebugToolbarData = {$data}</script>"; return $html; }
/** @return User_LoginPresenter */ public function build($return_to, $printer_version, $form_loginname) { $presenter = new User_LoginPresenter($return_to, $printer_version, $form_loginname, $this->getToggleSSL()); $authoritative = false; EventManager::instance()->processEvent('login_presenter', array('presenter' => &$presenter, 'authoritative' => &$authoritative)); return $presenter; }
protected function __construct() { $this->charts = null; $this->chart_factories = array(); $em = EventManager::instance(); $em->processEvent('graphontrackersv5_load_chart_factories', array('factories' => &$this->chart_factories)); }
private function initializeEvents() { EventManager::bind("WiredSaveConditionMessageEvent"); EventManager::bind("WiredSaveEffectMessageEvent"); EventManager::bind("WiredSaveMatchingMessageEvent"); EventManager::bind("WiredSaveTriggerMessageEvent"); }
private function initializeEvents() { EventManager::bind("EnterPrivateRoomMessageEvent"); EventManager::bind("RoomGetHeightmapMessageEvent"); EventManager::bind("RoomGetInfoMessageEvent"); EventManager::bind("RoomUserActionMessageEvent"); EventManager::bind("RoomOnLoadMessageEvent"); EventManager::bind("RoomDeleteMessageEvent"); EventManager::bind("RoomEventUpdateMessageEvent"); EventManager::bind("RoomGetSettingsInfoMessageEvent"); EventManager::bind("RoomSaveSettingsMessageEvent"); EventManager::bind("RoomSettingsMuteAllMessageEvent"); EventManager::bind("RoomSettingsMuteUserMessageEvent"); EventManager::bind("RoomLoadByDoorbellMessageEvent"); EventManager::bind("DoorbellAnswerMessageEvent"); EventManager::bind("RoomGetFilterMessageEvent"); EventManager::bind("RoomAlterFilterMessageEvent"); EventManager::bind("GetRoomBannedUsersMessageEvent"); EventManager::bind("GetRoomRightsListMessageEvent"); EventManager::bind("RoomRemoveAllRightsMessageEvent"); EventManager::bind("RoomRemoveUserRightsMessageEvent"); EventManager::bind("GetFloorPlanFurnitureMessageEvent"); EventManager::bind("GetFloorPlanDoorMessageEvent"); EventManager::bind("SaveFloorPlanEditorMessageEvent"); EventManager::bind("SaveRoomThumbnailMessageEvent"); EventManager::bind("SetInvitationsPreferenceMessageEvent"); EventManager::bind("SubmitRoomToCompetitionMessageEvent"); EventManager::bind("VoteForRoomMessageEvent"); }
private function initializeEvents() { EventManager::bind("GetCatalogIndexMessageEvent"); EventManager::bind("GetCatalogPageMessageEvent"); EventManager::bind("GetCatalogClubPageMessageEvent"); EventManager::bind("GetCatalogOfferMessageEvent"); EventManager::bind("CatalogueOfferConfigMessageEvent"); EventManager::bind("PurchaseFromCatalogMessageEvent"); EventManager::bind("PurchaseFromCatalogAsGiftMessageEvent"); EventManager::bind("GetSellablePetBreedsMessageEvent"); EventManager::bind("ReloadRecyclerMessageEvent"); EventManager::bind("GetGiftWrappingConfigurationMessageEvent"); EventManager::bind("GetRecyclerRewardsMessageEvent"); EventManager::bind("CatalogPromotionGetRoomsMessageEvent"); EventManager::bind("GetCatalogClubGiftsMessageEvent"); EventManager::bind("ChooseClubGiftMessageEvent"); EventManager::bind("PromoteRoomMessageEvent"); EventManager::bind("RetrieveSongIDMessageEvent"); EventManager::bind("CheckPetnameMessageEvent"); EventManager::bind("EcotronRecycleMessageEvent"); EventManager::bind("RedeemVoucherMessageEvent"); EventManager::bind("BuildersClubUpdateFurniCount"); EventManager::bind("PlaceBuildersFurniture"); EventManager::bind("PurchaseTargetedOfferMessageEvent"); }
public function testListener() { $subject1 = $this->getMockBuilder('Jivoo\\Core\\EventSubject')->getMock(); $subject1->method('getEvents')->willReturn(array('someEvent')); $subject2 = $this->getMockBuilder('Jivoo\\Core\\EventSubject')->getMock(); $subject2->method('getEvents')->willReturn(array('someEvent')); $em1 = new EventManager($subject1); $em2 = new EventManager($subject2, $em1); $l = $this->getMockBuilder('Jivoo\\Core\\EventListener')->setMethods(array('getEventHandlers', 'someEvent'))->getMock(); $l->method('getEventHandlers')->wilLReturn(array(get_class($subject2) . '.someEvent')); $l->expects($this->once())->method('someEvent')->willReturn(false); $em1->attachListener($l); $this->assertFalse($em2->trigger('someEvent')); $em1->detachListener($l); $this->assertTrue($em2->trigger('someEvent')); }
private function initializeEvents() { EventManager::bind("ChatMessageEvent"); EventManager::bind("ShoutMessageEvent"); EventManager::bind("UserWhisperMessageEvent"); EventManager::bind("UserWalkMessageEvent"); EventManager::bind("UserDanceMessageEvent"); EventManager::bind("UserSignMessageEvent"); EventManager::bind("RoomBanUserMessageEvent"); EventManager::bind("RoomUnbanUserMessageEvent"); EventManager::bind("RoomKickUserMessageEvent"); EventManager::bind("RateRoomMessageEvent"); EventManager::bind("DropHanditemMessageEvent"); EventManager::bind("GiveHanditemMessageEvent"); EventManager::bind("GiveRespectMessageEvent"); EventManager::bind("GiveRightsMessageEvent"); EventManager::bind("StartTypingMessageEvent"); EventManager::bind("StopTypingMessageEvent"); EventManager::bind("IgnoreUserMessageEvent"); EventManager::bind("UnignoreUserMessageEvent"); EventManager::bind("LookAtUserMessageEvent"); EventManager::bind("TradeAcceptMessageEvent"); EventManager::bind("TradeAddItemOfferMessageEvent"); EventManager::bind("TradeCancelMessageEvent"); EventManager::bind("TradeConfirmMessageEvent"); EventManager::bind("TradeDiscardMessageEvent"); EventManager::bind("TradeRemoveItemMessageEvent"); EventManager::bind("TradeStartMessageEvent"); EventManager::bind("TradeUnacceptMessageEvent"); EventManager::bind("SetChatPreferenceMessageComposer"); EventManager::bind("SetRoomCameraPreferencesMessageComposer"); }
public function testClearSingle() { $calls = 0; $this->object->subscribe("hook", function () use(&$calls) { ++$calls; }); $malls = 0; $this->object->subscribe("pook", function () use(&$malls) { ++$malls; }); $this->object->clear("pook"); $this->object->publish("hook"); $this->object->publish("pook"); $this->assertSame(1, $calls); $this->assertSame(0, $malls); }
/** * Setter for pageUrl * * @param string $pageUrl */ public function setPageUrl($pageUrl) { if ($pageUrl && $this->pageUrl != $pageUrl) { $this->eventManager->dispatchEvent(['page_changed'], [sprintf('Page changed from url %s to url %s', $this->pageUrl, $pageUrl)]); $this->pageUrl = $pageUrl; } }
/** * The singleton method * * @return EventManager */ public static function instance() { if (!self::$instance) { self::$instance = new EventManager(); } return self::$instance; }
/** * Say if we can display the remove button on a wiki page * * The wiki page may be driven by another item in the forge (eg a docman document), * therefore wiki administrator shouldn't be able to remove the page. * * @return bool */ function display_remove_button($pagename) { $display_remove_button = true; $em = EventManager::instance(); $em->processEvent(Event::WIKI_DISPLAY_REMOVE_BUTTON, array('display_remove_button' => &$display_remove_button, 'group_id' => GROUP_ID, 'wiki_page' => $pagename)); return $display_remove_button; }
public function handleGetEvents() { $student = $this->getUser()->getIdentity()->student; $events = EventManager::getEvents($student); fd($events); $this->terminate(new JsonResponse($events)); }