mirror of
https://github.com/phpbb/phpbb.git
synced 2025-05-05 15:16:16 +02:00
[ticket/9776] Delete poll if no poll options were submitted.
PHPBB3-9776
This commit is contained in:
parent
86f8851c40
commit
4fae5eef68
@ -1870,9 +1870,9 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $u
|
||||
|
||||
case 'edit_topic':
|
||||
case 'edit_first_post':
|
||||
if (isset($poll['poll_options']) && !empty($poll['poll_options']))
|
||||
if (isset($poll['poll_options']))
|
||||
{
|
||||
$poll_start = ($poll['poll_start']) ? $poll['poll_start'] : $current_time;
|
||||
$poll_start = ($poll['poll_start'] || empty($poll['poll_options'])) ? $poll['poll_start'] : $current_time;
|
||||
$poll_length = $poll['poll_length'] * 86400;
|
||||
if ($poll_length < 0)
|
||||
{
|
||||
@ -2075,11 +2075,11 @@ function submit_post($mode, $subject, $username, $topic_type, &$poll, &$data, $u
|
||||
}
|
||||
|
||||
// Update Poll Tables
|
||||
if (isset($poll['poll_options']) && !empty($poll['poll_options']))
|
||||
if (isset($poll['poll_options']))
|
||||
{
|
||||
$cur_poll_options = array();
|
||||
|
||||
if ($poll['poll_start'] && $mode == 'edit')
|
||||
if ($mode == 'edit')
|
||||
{
|
||||
$sql = 'SELECT *
|
||||
FROM ' . POLL_OPTIONS_TABLE . '
|
||||
|
@ -904,6 +904,23 @@ if ($submit || $preview || $refresh)
|
||||
$message_parser->warn_msg[] = $user->lang['NO_DELETE_POLL_OPTIONS'];
|
||||
}*/
|
||||
}
|
||||
else if ($mode == 'edit' && $post_id == $post_data['topic_first_post_id'] && $auth->acl_get('f_poll', $forum_id))
|
||||
{
|
||||
// The user removed all poll options, this is equal to deleting the poll.
|
||||
$poll = array(
|
||||
'poll_title' => '',
|
||||
'poll_length' => 0,
|
||||
'poll_max_options' => 0,
|
||||
'poll_option_text' => '',
|
||||
'poll_start' => 0,
|
||||
'poll_last_vote' => 0,
|
||||
'poll_vote_change' => 0,
|
||||
'poll_options' => array(),
|
||||
);
|
||||
|
||||
$post_data['poll_options'] = $post_data['poll_title'] = '';
|
||||
$post_data['poll_start'] = $post_data['poll_length'] = $post_data['poll_max_options'] = $post_data['poll_last_vote'] = $post_data['poll_vote_change'] = 0;
|
||||
}
|
||||
else if (!$auth->acl_get('f_poll', $forum_id) && ($mode == 'edit') && ($post_id == $post_data['topic_first_post_id']) && ($original_poll_data['poll_title'] != ''))
|
||||
{
|
||||
// We have a poll but the editing user is not permitted to create/edit it.
|
||||
|
Loading…
x
Reference in New Issue
Block a user