aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/notification
diff options
context:
space:
mode:
authorDavid King <imkingdavid@gmail.com>2013-09-12 21:25:00 -0700
committerDavid King <imkingdavid@gmail.com>2013-09-12 21:25:00 -0700
commitf22b959257deba0f00a4330df9103c47673032b8 (patch)
tree36ca640a1a9744c0a17260e85a25e159b9421de3 /phpBB/phpbb/notification
parentd62973867511d4f2b337a4c1cf3654ee20a2a107 (diff)
parent32b92547400c14a402f64463661ce7c1b44e81b3 (diff)
downloadforums-f22b959257deba0f00a4330df9103c47673032b8.tar
forums-f22b959257deba0f00a4330df9103c47673032b8.tar.gz
forums-f22b959257deba0f00a4330df9103c47673032b8.tar.bz2
forums-f22b959257deba0f00a4330df9103c47673032b8.tar.xz
forums-f22b959257deba0f00a4330df9103c47673032b8.zip
Merge pull request #1620 from EXreaction/ticket/11745
Group join approved notification
Diffstat (limited to 'phpBB/phpbb/notification')
-rw-r--r--phpBB/phpbb/notification/type/group_request.php6
-rw-r--r--phpBB/phpbb/notification/type/group_request_approved.php118
2 files changed, 122 insertions, 2 deletions
diff --git a/phpBB/phpbb/notification/type/group_request.php b/phpBB/phpbb/notification/type/group_request.php
index 490b9e16a3..1a3b5b6992 100644
--- a/phpBB/phpbb/notification/type/group_request.php
+++ b/phpBB/phpbb/notification/type/group_request.php
@@ -38,7 +38,8 @@ class phpbb_notification_type_group_request extends phpbb_notification_type_base
public function is_available()
{
// Leader of any groups?
- $sql = 'SELECT group_id FROM ' . USER_GROUP_TABLE . '
+ $sql = 'SELECT group_id
+ FROM ' . USER_GROUP_TABLE . '
WHERE user_id = ' . (int) $this->user->data['user_id'] . '
AND group_leader = 1';
$result = $this->db->sql_query_limit($sql, 1);
@@ -74,7 +75,8 @@ class phpbb_notification_type_group_request extends phpbb_notification_type_base
'ignore_users' => array(),
), $options);
- $sql = 'SELECT user_id FROM ' . USER_GROUP_TABLE . '
+ $sql = 'SELECT user_id
+ FROM ' . USER_GROUP_TABLE . '
WHERE group_leader = 1
AND group_id = ' . (int) $group['group_id'];
$result = $this->db->sql_query($sql);
diff --git a/phpBB/phpbb/notification/type/group_request_approved.php b/phpBB/phpbb/notification/type/group_request_approved.php
new file mode 100644
index 0000000000..ce83329ff3
--- /dev/null
+++ b/phpBB/phpbb/notification/type/group_request_approved.php
@@ -0,0 +1,118 @@
+<?php
+/**
+*
+* @package notifications
+* @copyright (c) 2013 phpBB Group
+* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
+*
+*/
+
+/**
+* @ignore
+*/
+if (!defined('IN_PHPBB'))
+{
+ exit;
+}
+
+class phpbb_notification_type_group_request_approved extends phpbb_notification_type_base
+{
+ /**
+ * {@inheritdoc}
+ */
+ public function get_type()
+ {
+ return 'group_request_approved';
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function is_available()
+ {
+ return false;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function get_item_id($group)
+ {
+ return (int) $group['group_id'];
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public static function get_item_parent_id($group)
+ {
+ return 0;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function find_users_for_notification($group, $options = array())
+ {
+ $users = array();
+
+ $group['user_ids'] = (!is_array($group['user_ids'])) ? array($group['user_ids']) : $group['user_ids'];
+
+ foreach ($group['user_ids'] as $user_id)
+ {
+ $users[$user_id] = array('');
+ }
+
+ return $users;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_title()
+ {
+ return $this->user->lang('NOTIFICATION_GROUP_REQUEST_APPROVED', $this->get_data('group_name'));
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_url()
+ {
+ return append_sid($this->phpbb_root_path . 'memberlist.' . $this->php_ext, "mode=group&g={$this->item_id}");
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function create_insert_array($group, $pre_create_data = array())
+ {
+ $this->set_data('group_name', $group['group_name']);
+
+ return parent::create_insert_array($group, $pre_create_data);
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function users_to_query()
+ {
+ return array();
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_email_template()
+ {
+ return false;
+ }
+
+ /**
+ * {@inheritdoc}
+ */
+ public function get_email_template_variables()
+ {
+ return array();
+ }
+}