diff options
| author | Joas Schilling <nickvergessen@gmx.de> | 2013-03-06 07:35:47 +0100 |
|---|---|---|
| committer | Joas Schilling <nickvergessen@gmx.de> | 2013-03-06 07:35:47 +0100 |
| commit | 0bbde4c12291de7c2effdfbce2f87b212190799e (patch) | |
| tree | 917287070d7cabc4e419939033fa6133e028627b /phpBB/includes/notification/method/base.php | |
| parent | 001572f76425a1fdb6621d26dae875438152cc97 (diff) | |
| parent | 597c16a9363858e343480f70b1852bce2bba5ca3 (diff) | |
| download | forums-0bbde4c12291de7c2effdfbce2f87b212190799e.tar forums-0bbde4c12291de7c2effdfbce2f87b212190799e.tar.gz forums-0bbde4c12291de7c2effdfbce2f87b212190799e.tar.bz2 forums-0bbde4c12291de7c2effdfbce2f87b212190799e.tar.xz forums-0bbde4c12291de7c2effdfbce2f87b212190799e.zip | |
Merge branch 'develop' of https://github.com/phpbb/phpbb3 into ticket/11166
* 'develop' of https://github.com/phpbb/phpbb3: (799 commits)
[ticket/11402] Fix undefined index in post/topic_in_queue
[ticket/11400] If email is disabled, disable it for notifications
[ticket/11398] Correctly call permission_set method in permission tool
[ticket/11394] Relax Migration Tools
[ticket/11386] Fix missing ;
[ticket/10714] Get log from container in install, update and download/file
[feature/avatars] Update module_auth of ucp module and fix small issues
[ticket/11396] Rename insert_migration to set_migration_state
[ticket/11395] Prevent acp_modules::get_modules_info from reincluding files
[ticket/11393] Give more information on database updater
[ticket/11386] Send list of migrations instead of using load_migrations
[feature/avatars] Add migrations data file for avatars
[feature/avatars] Reduce module auth of ucp avatar settings
[ticket/10714] Use $phpbb_adm_relative_path instead of hardcoded adm/
[ticket/10714] Logs are disabled for this page call only
[ticket/6723] Show info that message has been deleted before delivery
[ticket/11385] Fix issue with migration module tool not getting extension module info
[ticket/11386] Fix failing tests from constructor changes
[ticket/11386] Fix circular reference error & serialize error
[ticket/11386] Remove tests that check if finder cache is working
...
Conflicts:
phpBB/assets/javascript/core.js
Diffstat (limited to 'phpBB/includes/notification/method/base.php')
| -rw-r--r-- | phpBB/includes/notification/method/base.php | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/phpBB/includes/notification/method/base.php b/phpBB/includes/notification/method/base.php new file mode 100644 index 0000000000..22418c9be8 --- /dev/null +++ b/phpBB/includes/notification/method/base.php @@ -0,0 +1,116 @@ +<?php +/** +* +* @package notifications +* @copyright (c) 2012 phpBB Group +* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 +* +*/ + +/** +* @ignore +*/ +if (!defined('IN_PHPBB')) +{ + exit; +} + +/** +* Base notifications method class +* @package notifications +*/ +abstract class phpbb_notification_method_base implements phpbb_notification_method_interface +{ + /** @var phpbb_notification_manager */ + protected $notification_manager; + + /** @var phpbb_user_loader */ + protected $user_loader; + + /** @var phpbb_db_driver */ + protected $db; + + /** @var phpbb_cache_service */ + protected $cache; + + /** @var phpbb_template */ + protected $template; + + /** @var phpbb_extension_manager */ + protected $extension_manager; + + /** @var phpbb_user */ + protected $user; + + /** @var phpbb_auth */ + protected $auth; + + /** @var phpbb_config */ + protected $config; + + /** @var string */ + protected $phpbb_root_path; + + /** @var string */ + protected $php_ext; + + /** + * Queue of messages to be sent + * + * @var array + */ + protected $queue = array(); + + /** + * Notification Method Base Constructor + * + * @param phpbb_user_loader $user_loader + * @param phpbb_db_driver $db + * @param phpbb_cache_driver_interface $cache + * @param phpbb_user $user + * @param phpbb_auth $auth + * @param phpbb_config $config + * @param string $phpbb_root_path + * @param string $php_ext + * @return phpbb_notification_method_base + */ + public function __construct(phpbb_user_loader $user_loader, phpbb_db_driver $db, phpbb_cache_driver_interface $cache, $user, phpbb_auth $auth, phpbb_config $config, $phpbb_root_path, $php_ext) + { + $this->user_loader = $user_loader; + $this->db = $db; + $this->cache = $cache; + $this->user = $user; + $this->auth = $auth; + $this->config = $config; + $this->phpbb_root_path = $phpbb_root_path; + $this->php_ext = $php_ext; + } + + /** + * Set notification manager (required) + * + * @param phpbb_notification_manager $notification_manager + */ + public function set_notification_manager(phpbb_notification_manager $notification_manager) + { + $this->notification_manager = $notification_manager; + } + + /** + * Add a notification to the queue + * + * @param phpbb_notification_type_interface $notification + */ + public function add_to_queue(phpbb_notification_type_interface $notification) + { + $this->queue[] = $notification; + } + + /** + * Empty the queue + */ + protected function empty_queue() + { + $this->queue = array(); + } +} |
