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
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.3'; |
|
$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'] = '© 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; |
|
|
|
} |
|
|
|
} |
|
|
|
?>
|