hasPerm('basic')) { $gridimage_id=intval($_POST['gridimage_id']); $status=$_POST['user_status']; $image=new GridImage; if ($image->loadFromId($gridimage_id)) { if ($image->user_id == $USER->user_id) { if ($image->moderation_status == 'rejected') die ("CANT EDIT REJECTED IMAGES"); switch ($status) { case $MESSAGES['moderation']['geograph']. $user_status = ''; break; case $MESSAGES['moderation']['supplemental']: $user_status = 'accepted'; break; case $MESSAGES['moderation']['reject']: $user_status = 'rejected'; break; default: echo "UNKNOWN STATUS"; exit; } if ($user_status == 'rejected' || $image->moderation_status != 'pending' || $db->getOne("SELECT COUNT(*) FROM gridsquare_moderation_lock WHERE gridsquare_id = {$image->gridsquare_id} AND lock_obtained > DATE_SUB(NOW(),INTERVAL 1 HOUR)") ) { $ticket=new GridImageTroubleTicket(); $ticket->setSuggester($USER->user_id); $ticket->setImage($gridimage_id); $ticket->setNotes("Auto-generated ticket, as a result of Self Moderation. Please leave a comment (in the reply box just below this message) to explain the reason for suggesting '$status'."); $status=$ticket->commit('pending'); } $db->Query("update gridimage set user_status = '$user_status' where gridimage_id={$gridimage_id}"); header("Location:/editimage.php?id={$gridimage_id}"); exit; } else { echo "UNABLE TO MODERATE"; } } else { echo "FAIL"; } } else { echo "NOT LOGGED IN"; } exit; } echo "NO IMAGE SELECTED"; ?>