*/ /** * This ItemAddOption allows the user to choose to create thumbnails * when the image is uploaded. * * @package GalleryCore * @subpackage UserInterface */ class CreateThumbnailOption extends ItemAddOption { /** * @see ItemAddOption::loadTemplate */ function loadTemplate(&$template, &$form, $item) { return array(null, 'modules/core/templates/CreateThumbnailOption.tpl', 'modules_core'); } /** * @see ItemAddOption::isAppropriate */ function isAppropriate() { return array(null, true); } /** * @see ItemAddOption::handleRequestAfterAdd */ function handleRequestAfterAdd($form, $items) { $errors = array(); foreach ($items as $item) { $itemIds[] = $item->getId(); $warnings[] = array(); } if (empty($form['CreateThumbnailOption']['createThumbnail'])) { return array(null, $errors, $warnings); } list ($ret, $thumbTable) = GalleryCoreApi::fetchThumbnailsByItemIds($itemIds); if ($ret) { return array($ret->wrap(__FILE__, __LINE__), null, null); } foreach ($items as $item) { $itemId = $item->getId(); if (!empty($thumbTable[$itemId])) { $thumbnail = $thumbTable[$item->getId()]; list ($ret) = GalleryCoreApi::rebuildDerivativeCacheIfNotCurrent($thumbnail->getId()); if ($ret) { return array($ret->wrap(__FILE__, __LINE__), null, null); } } } return array(null, $errors, $warnings); } } ?>