*/ /** * This controller will handle storing rating options for Gallery albums * * @package Rating * */ class RatingItemEdit extends ItemEditOption { /** * @see ItemEditOption::handleRequestAfterEdit */ function handleRequestAfterEdit($form, &$item, &$preferred) { global $gallery; if (isset($form['changeInDescendents']['rating'])) { list ($ret, $subAlbumIds) = GalleryCoreApi::fetchDescendentAlbumItemIds($item); if ($ret) { return array($ret->wrap(__FILE__, __LINE__), null, null); } array_unshift($subAlbumIds, $item->getId()); } else { $subAlbumIds = array($item->getId()); } foreach ($subAlbumIds as $id) { $ret = GalleryCoreApi::setPluginParameter('module', 'rating', 'enabled', (empty($form['rating']['enabled']) ? 0 : 1), $id); if ($ret) { return array($ret->wrap(__FILE__, __LINE__), null, null); } } return array(null, array(), array()); } /** * @see ItemEditOption::loadTemplate */ function loadTemplate(&$template, &$form, $item, $thumbnail) { if (empty($form['error'])) { list ($ret, $form['rating']['enabled']) = GalleryCoreApi::getPluginParameter('module', 'rating', 'enabled', $item->getId()); if ($ret) { return array($ret->wrap(__FILE__, __LINE__), null, null); } } return array(null, 'modules/rating/templates/RatingItemEdit.tpl', 'modules_rating'); } /** * @see ItemEditOption::isAppropriate */ function isAppropriate($item, $thumbnail) { return array(null, true); } } ?>