⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 adminregeneratepreviewaction.class.php

📁 一个用PHP编写的
💻 PHP
字号:
<?phplt_include( PLOG_CLASS_PATH."class/action/admin/adminaction.class.php" );lt_include( PLOG_CLASS_PATH."class/view/admin/adminresourceslistview.class.php" );lt_include( PLOG_CLASS_PATH."class/view/admin/admineditresourceview.class.php" );lt_include( PLOG_CLASS_PATH."class/data/validator/integervalidator.class.php" );lt_include( PLOG_CLASS_PATH."class/gallery/resizers/galleryresizer.class.php" );lt_include( PLOG_CLASS_PATH."class/gallery/dao/galleryresources.class.php" );lt_include( PLOG_CLASS_PATH."class/gallery/dao/galleryresourcestorage.class.php" );    /**     * \ingroup Action     * @private     */ class AdminRegeneratePreviewAction extends AdminAction{            var $_resourceId;            function AdminRegeneratePreviewAction( $actionInfo, $request ){        $this->AdminAction( $actionInfo, $request );                    $this->registerFieldValidator( "resourceId", new IntegerValidator());        $view = new AdminResourcesListView( $this->_blogInfo );        $view->setErrorMessage( $this->_locale->tr("error_loading_resource"));        $this->setValidationErrorView( $view );    }        	function perform(){            // first of all, fetch the resource        $this->_resourceId = $this->_request->getValue( "resourceId" );        $resources = new GalleryResources();        $resource = $resources->getResource( $this->_resourceId, $this->_blogInfo->getId());                        // check if it was loaded ok        if( !$resource ) {            $this->_view = new AdminResourcesListView( $this->_blogInfo );            $this->_view->setErrorMessage( $this->_locale->tr("error_loading_resource"));            $this->setCommonData();                            return false;        }                        // if so, continue... first by checking if the resource is an image or not            // because if not, then there is no point in generating a thumbnail of it!        if( !$resource->isImage()) {            $this->_view = new AdminResourcesListView( $this->_blogInfo );            $this->_view->setErrorMessage( $this->_locale->tr("error_resource_is_not_an_image" ));        }                                $previewHeight = $this->_config->getValue( "thumbnail_height" );        $previewWidth  = $this->_config->getValue( "thumbnail_width" );        $previewKeepAspectRatio = $this->_config->getValue( "thumbnails_keep_aspect_ratio" );            // build the filename        $fileNameParts = explode( ".", $resource->getFileName());        $fileExt = strtolower($fileNameParts[count($fileNameParts)-1]);        $fileName = $resource->getOwnerId()."-".$resource->getId().".".$fileExt;            // and start the resizing process        $resourceStorage = new GalleryResourceStorage();        $resizer = new GalleryResizer( $resourceStorage->getResourcePath( $resource ));        $resourceStorage->checkPreviewsStorageFolder( $resource->getOwnerId());        $outFile = $resourceStorage->getPreviewsFolder( $resource->getOwnerId()).$fileName;                        // and finally, we can generate the preview!        $result = $resizer->generate( $outFile, $previewHeight, $previewWidth, $previewKeepAspectRatio );                    $previewFormat = $resizer->getThumbnailFormat();        $resource->setThumbnailFormat( $previewFormat );        $resources->updateResource( $resource );                    if( !$result ) {            $this->_view = new AdminResourcesListView( $this->_blogInfo );            $this->_view->setErrorMessage( $this->_locale->tr("error_generating_resource_preview" ));        }        else {            $previewHeight = $this->_config->getValue( "medium_size_thumbnail_height" );            $previewWidth  = $this->_config->getValue( "medium_size_thumbnail_width" );                        // and start the resizing process            $resourceStorage = new GalleryResourceStorage();            $resizer = new GalleryResizer( $resourceStorage->getResourcePath( $resource ));            $resourceStorage->checkMediumSizePreviewsStorageFolder( $resource->getOwnerId());            $outFile = $resourceStorage->getMediumSizePreviewsFolder( $resource->getOwnerId()).$fileName;                        // and finally, we can generate the preview!            $result = $resizer->generate( $outFile, $previewHeight, $previewWidth, $previewKeepAspectRatio );                        $previewFormat = $resizer->getThumbnailFormat();            $resource->setThumbnailFormat( $previewFormat );            $resources->updateResource( $resource );            if( !$result ) {                $this->_view = new AdminResourcesListView( $this->_blogInfo );                $this->_view->setErrorMessage( $this->_locale->tr("error_generating_resource_medium" ));            }            else {                $this->_view = new AdminEditResourceView( $this->_blogInfo );                $this->_view->setSuccessMessage( $message = $this->_locale->tr("resource_preview_generated_ok" ));                $this->_view->setValue( "resourceDescription", $resource->getDescription());                $this->_view->setValue( "albumId", $resource->getAlbumId());                $this->_view->setValue( "resource", $resource );            }        }        $this->setCommonData();                    return true;    }}?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -