Skip to content

Commit

Permalink
bug:2152 no special parameter for updated comment validation
Browse files Browse the repository at this point in the history
git-svn-id: http://piwigo.org/svn/trunk@10122 68402e56-0260-453c-a942-63ccdbb3a9ee
  • Loading branch information
mistic100 committed Apr 6, 2011
1 parent f631530 commit 2f34440
Show file tree
Hide file tree
Showing 9 changed files with 80 additions and 53 deletions.
1 change: 0 additions & 1 deletion admin/configuration.php
Expand Up @@ -63,7 +63,6 @@
$comments_checkboxes = array(
'comments_forall',
'comments_validation',
'comments_update_validation',
'email_admin_on_comment',
'email_admin_on_comment_validation',
'user_can_delete_comment',
Expand Down
7 changes: 0 additions & 7 deletions admin/themes/default/template/configuration.tpl
Expand Up @@ -143,13 +143,6 @@
<input type="checkbox" name="comments_validation" {if ($comments.comments_validation)}checked="checked"{/if}>
</label>
</li>

<li>
<label>
<span class="property">{'Update Validation'|@translate}</span>
<input type="checkbox" name="comments_update_validation" {if ($comments.comments_update_validation)}checked="checked"{/if}>
</label>
</li>

<li>
<label>
Expand Down
2 changes: 1 addition & 1 deletion include/functions_comment.inc.php
Expand Up @@ -265,7 +265,7 @@ function update_user_comment($comment, $post_key)
}

// should the updated comment must be validated
if (!$conf['comments_update_validation'] or is_admin())
if (!$conf['comments_validation'] or is_admin())
{
$comment_action='validate'; //one of validate, moderate, reject
}
Expand Down
79 changes: 38 additions & 41 deletions include/picture_comment.inc.php
Expand Up @@ -38,55 +38,52 @@
}
}

if (!isset($comment_action))
if ( $page['show_comments'] and isset( $_POST['content'] ) )
{
if ( $page['show_comments'] and isset( $_POST['content'] ) )
if ( is_a_guest() and !$conf['comments_forall'] )
{
if ( is_a_guest() and !$conf['comments_forall'] )
{
die ('Session expired');
}

$comm = array(
'author' => trim( @$_POST['author'] ),
'content' => trim( $_POST['content'] ),
'image_id' => $page['image_id'],
);

include_once(PHPWG_ROOT_PATH.'include/functions_comment.inc.php');
die ('Session expired');
}

$comment_action = insert_user_comment($comm, @$_POST['key'], $infos );
$comm = array(
'author' => trim( @$_POST['author'] ),
'content' => trim( $_POST['content'] ),
'image_id' => $page['image_id'],
);

switch ($comment_action)
{
case 'moderate':
array_push( $infos, l10n('An administrator must authorize your comment before it is visible.') );
case 'validate':
array_push( $infos, l10n('Your comment has been registered'));
break;
case 'reject':
set_status_header(403);
array_push($infos, l10n('Your comment has NOT been registered because it did not pass the validation rules') );
break;
default:
trigger_error('Invalid comment action '.$comment_action, E_USER_WARNING);
}
include_once(PHPWG_ROOT_PATH.'include/functions_comment.inc.php');

$template->assign(
($comment_action=='reject') ? 'errors' : 'infos',
$infos
);
$comment_action = insert_user_comment($comm, @$_POST['key'], $infos );

// allow plugins to notify what's going on
trigger_action( 'user_comment_insertion',
array_merge($comm, array('action'=>$comment_action) )
);
}
elseif ( isset($_POST['content']) )
switch ($comment_action)
{
set_status_header(403);
die('ugly spammer');
case 'moderate':
array_push( $infos, l10n('An administrator must authorize your comment before it is visible.') );
case 'validate':
array_push( $infos, l10n('Your comment has been registered'));
break;
case 'reject':
set_status_header(403);
array_push($infos, l10n('Your comment has NOT been registered because it did not pass the validation rules') );
break;
default:
trigger_error('Invalid comment action '.$comment_action, E_USER_WARNING);
}

$template->assign(
($comment_action=='reject') ? 'errors' : 'infos',
$infos
);

// allow plugins to notify what's going on
trigger_action( 'user_comment_insertion',
array_merge($comm, array('action'=>$comment_action) )
);
}
elseif ( isset($_POST['content']) )
{
set_status_header(403);
die('ugly spammer');
}

if ($page['show_comments'])
Expand Down
1 change: 0 additions & 1 deletion install/config.sql
Expand Up @@ -3,7 +3,6 @@
INSERT INTO piwigo_config (param,value,comment) VALUES ('nb_comment_page','10','number of comments to display on each page');
INSERT INTO piwigo_config (param,value,comment) VALUES ('log','true','keep an history of visits on your website');
INSERT INTO piwigo_config (param,value,comment) VALUES ('comments_validation','false','administrators validate users comments before becoming visible');
INSERT INTO piwigo_config (param,value,comment) VALUES ('comments_update_validation','false','administrators validate users updated comments before becoming visible');
INSERT INTO piwigo_config (param,value,comment) VALUES ('comments_forall','false','even guest not registered can post comments');
INSERT INTO piwigo_config (param,value,comment) VALUES ('user_can_delete_comment','false','administrators can allow user delete their own comments');
INSERT INTO piwigo_config (param,value,comment) VALUES ('user_can_edit_comment','false','administrators can allow user edit their own comments');
Expand Down
40 changes: 40 additions & 0 deletions install/db/99-database.php
@@ -0,0 +1,40 @@
<?php
// +-----------------------------------------------------------------------+
// | Piwigo - a PHP based photo gallery |
// +-----------------------------------------------------------------------+
// | Copyright(C) 2008-2011 Piwigo Team http://piwigo.org |
// | Copyright(C) 2003-2008 PhpWebGallery Team http://phpwebgallery.net |
// | Copyright(C) 2002-2003 Pierrick LE GALL http://le-gall.net/pierrick |
// +-----------------------------------------------------------------------+
// | This program is free software; you can redistribute it and/or modify |
// | it under the terms of the GNU General Public License as published by |
// | the Free Software Foundation |
// | |
// | This program is distributed in the hope that it will be useful, but |
// | WITHOUT ANY WARRANTY; without even the implied warranty of |
// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
// | General Public License for more details. |
// | |
// | You should have received a copy of the GNU General Public License |
// | along with this program; if not, write to the Free Software |
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
// | USA. |
// +-----------------------------------------------------------------------+

if (!defined('PHPWG_ROOT_PATH'))
{
die('Hacking attempt!');
}

$upgrade_description = 'delete the config parameter comments_update_validation';

$query = 'DELETE FROM '.CONFIG_TABLE.' WHERE param = \'comments_update_validation\';';

pwg_query($query);

echo
"\n"
. $upgrade_description
."\n"
;
?>
1 change: 0 additions & 1 deletion language/en_UK/admin.lang.php
Expand Up @@ -729,7 +729,6 @@
$lang['user_status_webmaster'] = "Webmaster";
$lang['Validate'] = "Validate";
$lang['Validation'] = "Validation";
$lang['Update Validation'] = "Validation when a comment is modified";
$lang['Version of create_listing_file.php on the remote site and Piwigo must be the same'] = "Versions of create_listing_file.php on the remote site and Piwigo must be the same";
$lang['Version'] = "Version";
$lang['Virtual album added'] = "Virtual album added";
Expand Down
1 change: 0 additions & 1 deletion language/fr_FR/admin.lang.php
Expand Up @@ -169,7 +169,6 @@
$lang['Users'] = "Utilisateurs";
$lang['Validate'] = "Valider";
$lang['Validation'] = "Validation";
$lang['Update Validation'] = "Validation quand un commentaire est modifié";
$lang['Version'] = "Version";
$lang['Virtual albums to move'] = 'Albums virtuels à déplacer';
$lang['Virtual album name'] = 'Nom de l\'album virtuel';
Expand Down
1 change: 1 addition & 0 deletions picture.php
Expand Up @@ -362,6 +362,7 @@ function default_picture_content($content, $element_info)
$infos
);

unset($_POST['content']);
break;
}
else
Expand Down

0 comments on commit 2f34440

Please sign in to comment.