*/ /** * This ItemAddOption enforces moderation * Add the newly added item to "ToApprove" table in db. * * @package Moderation * @subpackage UserInterface */ class ModerateOption extends ItemAddOption { /** * @see ItemAddOption::isAppropriate */ function isAppropriate() { return array(null, true); } /** * @see ItemAddOption::handleRequestAfterAdd */ function handleRequestAfterAdd($form, $items) { // GalleryCoreApi::relativeRequireOnce('modules/quotas/classes/GalleryQuotasHelper.class'); global $gallery; $warnings = array(); $errors = array(); /** * @if the current user is admin do not start the moderation process, just return so the pic * @is added to the gallery immediately */ list ($ret, $isAdmin) = GalleryCoreApi::isUserInSiteAdminGroup(); if ($isAdmin) { return array(null, $errors, $warnings); } list ($ret, $core) = GalleryCoreApi::fetchAllPluginParameters('module', 'core'); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } for ($j = 0; $j < count($items); $j++) { $ret = GalleryCoreApi::removeItemPermissions($items[$j]->getId()); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } $ret = GalleryCoreApi::addGroupPermission($items[$j]->getId(), $core['id.adminGroup'], 'core.all'); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } list ($ret, $childCounts) = GalleryCoreApi::fetchChildCounts(array($items[$j]->getParentId())); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } /* if (!$childCounts) { $ret = GalleryCoreApi::removeItemPermissions($items[$j]->getParentId()); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } $ret = GalleryCoreApi::addGroupPermission($items[$j]->getParentId(), $core['id.adminGroup'], 'core.all'); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } $ret = GalleryCoreApi::addUserPermission($items[$j]->getParentId(), $items[$j]->getOwnerId(), 'core.all'); if ($ret) { return $ret->wrap(__FILE__, __LINE__); } } */ $itemid = $items[$j]->getId(); $ownerid = $items[$j]->getOwnerId(); $query = "INSERT INTO ToApprove (g_id, ownerid) VALUES ($itemid, $ownerid)"; $myresult = mysql_query($query) or die(mysql_error()); } return array(null, $errors, $warnings); } } ?>