mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-08 04:18:52 +00:00
Merge branch '3.3.x'
This commit is contained in:
commit
d56597b02f
5 changed files with 16 additions and 3 deletions
|
@ -62,6 +62,7 @@ class ucp_notifications
|
||||||
foreach ($notification_methods as $method => $method_data)
|
foreach ($notification_methods as $method => $method_data)
|
||||||
{
|
{
|
||||||
$is_set_notify = $request->is_set_post(str_replace('.', '_', $type . '_' . $method_data['id']));
|
$is_set_notify = $request->is_set_post(str_replace('.', '_', $type . '_' . $method_data['id']));
|
||||||
|
$is_available = $method_data['method']->is_available($type_data['type']);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Event to perform additional actions before ucp_notifications is submitted
|
* Event to perform additional actions before ucp_notifications is submitted
|
||||||
|
@ -70,21 +71,26 @@ class ucp_notifications
|
||||||
* @var array type_data The notification type data
|
* @var array type_data The notification type data
|
||||||
* @var array method_data The notification method data
|
* @var array method_data The notification method data
|
||||||
* @var bool is_set_notify The notification is set or not
|
* @var bool is_set_notify The notification is set or not
|
||||||
|
* @var bool is_available The notification is available or not
|
||||||
|
* @var array subscriptions The subscriptions data
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'type_data',
|
'type_data',
|
||||||
'method_data',
|
'method_data',
|
||||||
'is_set_notify',
|
'is_set_notify',
|
||||||
|
'is_available',
|
||||||
|
'subscriptions',
|
||||||
];
|
];
|
||||||
extract($phpbb_dispatcher->trigger_event('core.ucp_notifications_submit_notification_is_set', compact($vars)));
|
extract($phpbb_dispatcher->trigger_event('core.ucp_notifications_submit_notification_is_set', compact($vars)));
|
||||||
|
|
||||||
if ($is_set_notify && (!isset($subscriptions[$type]) || !in_array($method_data['id'], $subscriptions[$type])))
|
if ($is_set_notify && $is_available && (!isset($subscriptions[$type]) || !in_array($method_data['id'], $subscriptions[$type])))
|
||||||
{
|
{
|
||||||
$phpbb_notifications->add_subscription($type, 0, $method_data['id']);
|
$phpbb_notifications->add_subscription($type, 0, $method_data['id']);
|
||||||
}
|
}
|
||||||
else if (!$is_set_notify && isset($subscriptions[$type]) && in_array($method_data['id'], $subscriptions[$type]))
|
else if ((!$is_set_notify || !$is_available) && isset($subscriptions[$type]) && in_array($method_data['id'], $subscriptions[$type]))
|
||||||
{
|
{
|
||||||
$phpbb_notifications->delete_subscription($type, 0, $method_data['id']);
|
$phpbb_notifications->delete_subscription($type, 0, $method_data['id']);
|
||||||
}
|
}
|
||||||
|
@ -225,13 +231,16 @@ class ucp_notifications
|
||||||
* @var array type_data The notification type data
|
* @var array type_data The notification type data
|
||||||
* @var array method_data The notification method data
|
* @var array method_data The notification method data
|
||||||
* @var array tpl_ary The template variables
|
* @var array tpl_ary The template variables
|
||||||
|
* @var array subscriptions The subscriptions data
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'type_data',
|
'type_data',
|
||||||
'method_data',
|
'method_data',
|
||||||
'tpl_ary',
|
'tpl_ary',
|
||||||
|
'subscriptions',
|
||||||
];
|
];
|
||||||
extract($phpbb_dispatcher->trigger_event('core.ucp_notifications_output_notification_types_modify_template_vars', compact($vars)));
|
extract($phpbb_dispatcher->trigger_event('core.ucp_notifications_output_notification_types_modify_template_vars', compact($vars)));
|
||||||
|
|
||||||
|
|
|
@ -350,6 +350,7 @@ class manager
|
||||||
* @var array notify_users User list to notify
|
* @var array notify_users User list to notify
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'notification_type_name',
|
'notification_type_name',
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
<!-- IF notification_types.EXPLAIN --><br /> {notification_types.EXPLAIN}<!-- ENDIF -->
|
<!-- IF notification_types.EXPLAIN --><br /> {notification_types.EXPLAIN}<!-- ENDIF -->
|
||||||
</td>
|
</td>
|
||||||
<!-- BEGIN notification_methods -->
|
<!-- BEGIN notification_methods -->
|
||||||
<td class="mark"><input type="checkbox" name="{notification_types.TYPE}_{notification_types.notification_methods.METHOD}"<!-- IF notification_types.notification_methods.AVAILABLE and notification_types.notification_methods.SUBSCRIBED --> checked="checked"<!-- ENDIF --><!-- IF not notification_types.notification_methods.AVAILABLE --> disabled="disabled"<!-- ENDIF --> /></td>
|
<td class="mark"><input type="checkbox" name="{notification_types.TYPE}_{notification_types.notification_methods.METHOD}"<!-- IF notification_types.notification_methods.SUBSCRIBED --> checked="checked"<!-- ENDIF --><!-- IF not notification_types.notification_methods.AVAILABLE --> disabled="disabled"<!-- ENDIF --> /></td>
|
||||||
<!-- END notification_methods -->
|
<!-- END notification_methods -->
|
||||||
</tr>
|
</tr>
|
||||||
<!-- ENDIF -->
|
<!-- ENDIF -->
|
||||||
|
|
|
@ -365,6 +365,7 @@ if ($module->is_active('zebra', 'friends'))
|
||||||
* @var array sql_ary SQL query array for listing of friends
|
* @var array sql_ary SQL query array for listing of friends
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'sql_ary',
|
'sql_ary',
|
||||||
|
@ -395,6 +396,7 @@ if ($module->is_active('zebra', 'friends'))
|
||||||
* @var string which friend is 'online' or 'offline'
|
* @var string which friend is 'online' or 'offline'
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'row',
|
'row',
|
||||||
|
|
|
@ -723,6 +723,7 @@ if (count($topic_list))
|
||||||
* @var array sql_array SQL query array for obtaining topics/stickies
|
* @var array sql_array SQL query array for obtaining topics/stickies
|
||||||
*
|
*
|
||||||
* @since 3.2.10-RC1
|
* @since 3.2.10-RC1
|
||||||
|
* @since 3.3.1-RC1
|
||||||
*/
|
*/
|
||||||
$vars = [
|
$vars = [
|
||||||
'forum_id',
|
'forum_id',
|
||||||
|
|
Loading…
Add table
Reference in a new issue