Модуль Галерея v3.26.5
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

129 lines
4.3 KiB

<?php
/**
* AVE.cms - Модуль Галерея
*
* @package AVE.cms
* @subpackage module_Gallery
* @filesource
*/
if(!defined('BASE_DIR')) exit;
if (defined('ACP'))
{
$modul['ModuleName'] = 'Галерея';
$modul['ModuleSysName'] = 'gallery';
$modul['ModuleVersion'] = '3.2.2';
$modul['ModuleDescription'] = 'Gallery + Watermark<br />Внимание! У директорий<br />uploads/gallery/.upload/ и<br />uploads/gallery/.temp/<br />должны быть права на запись!<br /><br />Вы можете ограничить количество выводимых изображений, указав после Gallery-ID следующее: -3 (в этом случае количество будет ограничено тремя изображениями на страницу)';
$modul['ModuleAutor'] = 'AVE.CMS Team';
$modul['ModuleCopyright'] = '&copy; 2007-2013 AVE.CMS';
$modul['ModuleIsFunction'] = 1;
$modul['ModuleAdminEdit'] = 1;
$modul['ModuleFunction'] = 'mod_gallery';
$modul['ModuleTag'] = '[mod_gallery:XXX-Лимит]';
$modul['ModuleTagLink'] = null;
$modul['ModuleAveTag'] = '#\\\[mod_gallery:([\\\d-]+)]#';
$modul['ModulePHPTag'] = "<?php mod_gallery(''$1''); ?>";
}
/**
* Функция вывода галереи
*
* @param string $gallery_id идентификатор галереи
* и опционально количество изображений на странице
*/
function mod_gallery($gallery_id)
{
global $AVE_Template;
require_once(BASE_DIR . '/modules/gallery/class.gallery.php');
$gallery = new Gallery;
$own_lim = @explode('-', stripslashes($gallery_id));
$lim = (empty($own_lim[1])) ? '' : $own_lim[1];
$gallery_id = $own_lim[0];
$tpl_dir = BASE_DIR . '/modules/gallery/templates/';
$lang_file = BASE_DIR . '/modules/gallery/lang/' . $_SESSION['user_language'] . '.txt';
$AVE_Template->config_load($lang_file);
$gallery->galleryShow($tpl_dir, $gallery_id, $lim);
}
if (!defined('ACP') && isset($_REQUEST['module']) && $_REQUEST['module'] == 'gallery')
{
require_once(BASE_DIR . '/modules/gallery/class.gallery.php');
$gallery = new Gallery;
$tpl_dir = BASE_DIR . '/modules/gallery/templates/';
$lang_file = BASE_DIR . '/modules/gallery/lang/' . $_SESSION['user_language'] . '.txt';
$AVE_Template->config_load($lang_file);
define('ONLYCONTENT', 1);
if (isset($_REQUEST['sub']) && $_REQUEST['sub'] == 'allimages')
{
$AVE_Template->assign('tpl_dir', BASE_DIR . '/modules/gallery/templates');
$AVE_Template->assign('theme_folder', (defined('THEME_FOLDER') ? THEME_FOLDER : DEFAULT_THEME_FOLDER));
$gallery->galleryShow($tpl_dir, (int)$_REQUEST['gallery'], '', 1);
}
else
{
$gallery->galleryImageShow($tpl_dir, (int)$_REQUEST['image']);
}
}
//=======================================================
// Действия в админ-панели
//=======================================================
if (defined('ACP') && !empty($_REQUEST['moduleaction']))
{
require_once(BASE_DIR . '/modules/gallery/class.gallery.php');
$gallery = new Gallery;
$tpl_dir = BASE_DIR . '/modules/gallery/templates/';
$lang_file = BASE_DIR . '/modules/gallery/lang/' . $_SESSION['admin_language'] . '.txt';
$AVE_Template->config_load($lang_file, 'admin');
switch($_REQUEST['moduleaction'])
{
case '1': // Просмотр списка галерей
$gallery->galleryListShow($tpl_dir);
break;
case 'add': // Добавить изображения в галерею
define('IMAGE_TOOLBOX_DEFAULT_JPEG_QUALITY', 75);
include_once(BASE_DIR . '/class/class.thumbnail.php');
$Image_Toolbox = new Image_Toolbox;
$gallery->galleryImageUploadForm($tpl_dir, intval($_REQUEST['id']));
break;
case 'showimages': // Просмотр изображений галереи
$gallery->galleryImageListShow($tpl_dir, intval($_REQUEST['id']));
break;
case 'new': // Создать новую галерею
$gallery->galleryNew();
break;
case 'copygallery': // Копирование галереи
$gallery->galleryCopy(intval($_REQUEST['id']));
break;
case 'delgallery': // Удаление галереи
$gallery->galleryDelete(intval($_REQUEST['id']));
break;
case 'editgallery': // Редактирование галереи
$gallery->galleryEdit($tpl_dir, intval($_REQUEST['id']));
break;
}
}
?>