Сергей Варламов
9 years ago
commit
d23771407a
12 changed files with 2621 additions and 0 deletions
@ -0,0 +1,16 @@ |
|||||||
|
## gallery |
||||||
|
|
||||||
|
# Модуль Галерея v3.2.2 |
||||||
|
|
||||||
|
|
||||||
|
## Данный модуль предназначен для построения карты вашего сайта на основе существующих пунктов меню навигации. |
||||||
|
|
||||||
|
* Gallery + Watermark<br />Внимание! У директорий<br />uploads/gallery/.upload/ и<br />uploads/gallery/.temp/<br />должны быть права на запись!<br /><br /> |
||||||
|
* Вы можете ограничить количество выводимых изображений, указав после Gallery-ID следующее: -3 (в этом случае количество будет ограничено тремя изображениями на страницу) |
||||||
|
|
||||||
|
|
||||||
|
## Перед копированием модуля в папку modules, удалите файл README.md, копируйте только корневую папку gallery со всем ее содержимым внутри! |
||||||
|
|
||||||
|
## Changelog: |
||||||
|
|
||||||
|
01.05.2014 - версия 3.2.2 |
@ -0,0 +1,139 @@ |
|||||||
|
NoTitle = "Без названия" |
||||||
|
NoDescr = "Описания нет. Извините." |
||||||
|
MoreImages = "<strong>» Ещё изображения...</strong>" |
||||||
|
WinClose = "Закрыть окно" |
||||||
|
|
||||||
|
[admin] |
||||||
|
ModName = "Галерея" |
||||||
|
ModTitle = "В данном разделе находится список всех галерей." |
||||||
|
GalleryList = "Список галерей" |
||||||
|
|
||||||
|
MaxImagesPage = "Количество миниатюр на странице" |
||||||
|
Shrink = "Уменьшать изображения" |
||||||
|
To100 = "100%" |
||||||
|
To75 = "до 75% от оригинала" |
||||||
|
To50 = "до 50% от оригинала" |
||||||
|
To25 = "до 25% от оригинала" |
||||||
|
|
||||||
|
|
||||||
|
ModSettingGal = "Общие настройки" |
||||||
|
ModSettingGalT = "В данном разделе приведены общие настройки данной галереи." |
||||||
|
|
||||||
|
Upload = "Добавление изображений" |
||||||
|
UploadProg = "Обработка изображений" |
||||||
|
|
||||||
|
Overview = "Просмотр изображений" |
||||||
|
OverviewT = "В данном разделе приведен список изображений данной галереи." |
||||||
|
|
||||||
|
UploadProgT = "Создаются миниатюры..." |
||||||
|
FilePrev = "Предпросмотр" |
||||||
|
FileTitle = "Название изображения" |
||||||
|
FileDesc = "Описание изображения" |
||||||
|
CheckboxCreate = "Если поставить галочку и нажать кнопку Cоздать папку, то для данной галереи создается своя папка. Все картинки принадлежащие этой галерее переместятся в данную папку." |
||||||
|
Folder = "Папка" |
||||||
|
CreateFolder = "Создать папки" |
||||||
|
GalleryFolder = "Имя папки<br /><small>(латинскими буквами)</small>" |
||||||
|
GalleryFolderP = "Имя папки" |
||||||
|
GalleryFolderDesc = "Если вы хотите удалить персональную папку галереи и перенести все файлы галереи в папку "uploads", то оставьте поле пустым" |
||||||
|
NewGallery = "Добавить новую галерею" |
||||||
|
GalleryTitle = "Название галереи" |
||||||
|
FolderExists = "Такая папка уже существует" |
||||||
|
EmptyGalleryTitle = "Укажите название галереи" |
||||||
|
GalleryDesc = "Описание галереи" |
||||||
|
MaxWidth = "Ширина миниатюр (в пикселях)" |
||||||
|
MaxHeight = "Высота миниатюр (в пикселях)" |
||||||
|
MaxImagesERow = "Количество миниатюр в строке" |
||||||
|
MaxWidthWarn = "<b>Внимание!</b> Изменения размеров, ранее загруженных изображений, выполняется при просмотре изображений галереи в панели администратора!" |
||||||
|
MaxHeightWarn = "<b>Внимание!</b> Изменения размеров, ранее загруженных изображений, выполняется при просмотре изображений галереи в панели администратора!" |
||||||
|
ThumbMethod = "Метод формирования миниатюр" |
||||||
|
Crop = "Crop" |
||||||
|
Resize = "Resize" |
||||||
|
GalleryAuthor = "Автор" |
||||||
|
Gcreated = "Создана" |
||||||
|
IName = "Название изображения" |
||||||
|
ISelect = "Выберите изображение" |
||||||
|
IncImages = "Изображений" |
||||||
|
MarDel = "Отметить для удаления" |
||||||
|
MarAllDel = "Отметить все для удаления" |
||||||
|
MarAct = "Активно" |
||||||
|
MarAllAct = "Отметить все" |
||||||
|
LinknewGal = "Добавить новую галерею" |
||||||
|
ImagesMore = "Загрузить изображения в галерею" |
||||||
|
GalView = "Вернуться к списку галерей" |
||||||
|
CpTag = "Тег в системе" |
||||||
|
AddnewImages = "Добавить изображения" |
||||||
|
EditGallery = "Редактировать галерею" |
||||||
|
DeleteGallery = "Удалить галерею" |
||||||
|
UploadInfo = "Пожалуйста, используйте только следующие типы файлов:" |
||||||
|
DeleteGalleryC = "Вы уверены, что хотите удалить данную галерею?" |
||||||
|
MoreInfos = "Дополнительная информация" |
||||||
|
Filesize = "Размер файла" |
||||||
|
Filename = "Имя файла" |
||||||
|
Uploader = "Опубликовал" |
||||||
|
UploadOn = "Дата загрузки" |
||||||
|
Showdescr = "Показывать описание изображения" |
||||||
|
ShowSize = "Показывать размер изображения" |
||||||
|
ShowHeader = "Показывать название изображения" |
||||||
|
TypeOut = "Тип вывода изображений" |
||||||
|
TypeOut1 = "Только миниатюры" |
||||||
|
TypeOut2 = "PopUp" |
||||||
|
TypeOut3 = "LightBox" |
||||||
|
TypeOut4 = "LightView" |
||||||
|
TypeOut5 = "Sexy Lightbox" |
||||||
|
TypeOut6 = "Highslide" |
||||||
|
TypeOut7 = "Настраиваемый тип" |
||||||
|
ErrorFolderStart = "<h2>Ошибка!</h2><br /><br /><b>Директория "" |
||||||
|
ErrorFolderEnd = "" отсутствует или имеет права только для чтения.<br />Необходимо создать дирректорию и/или установить права доступа (Unix: chmod 777)</b>" |
||||||
|
Watermark = "Имя Watermark-файла" |
||||||
|
ButtonSave = "Сохранить" |
||||||
|
ButtonSaveEdit = "Сохранить и продолжить редактировать" |
||||||
|
ButtonAdd = "Добавить" |
||||||
|
DateFormat = "%d-%m-%Y г. в %H:%M" |
||||||
|
Actions = "Действия" |
||||||
|
LoadFromFolder = "Загрузить из папки /temp/" |
||||||
|
Position = "Позиция" |
||||||
|
ImageView = "Просмотр изображений" |
||||||
|
UserProfile = "Учетная запись пользователя" |
||||||
|
MaxSize = "Максимальный размер" |
||||||
|
OrderImage = "Порядок сортировки" |
||||||
|
OrderPosition = "по позиции" |
||||||
|
OrderDateAsc = "по дате" |
||||||
|
OrderDateDesc = "по дате в обратном порядке" |
||||||
|
OrderTitleAsc = "по названию" |
||||||
|
OrderTitleDesc = "по названию в обратном порядке" |
||||||
|
GalleryScripts = "Основной шаблон оформления галереи" |
||||||
|
ImageTpl = "Шаблон вывода изображения" |
||||||
|
GalleryScriptsTag = "Системные теги шаблона скриптов" |
||||||
|
ImageTplTag = "Системные теги шаблона изображения" |
||||||
|
GalleryTagId = "Системный тег идентификатора галереи" |
||||||
|
GalleryTagFolder = "Системный тег имени папки галереи" |
||||||
|
GalleryTagImgId = "Системный тег идентификатора изображения" |
||||||
|
GalleryTagImgTitle = "Системный тег названия изображения" |
||||||
|
GalleryTagImgDesc = "Системный тег описания изображения" |
||||||
|
GalleryTagImgFilename = "Системный тег имени файла изображения" |
||||||
|
GalleryTagImgThumb = "Системный тег миниатюры изображения" |
||||||
|
GalleryTagTitl = "Системный тег названия галереи" |
||||||
|
GalleryTagDesc = "Системный тег описания галереи" |
||||||
|
GalleryTagPath = "Системный тег определяющий корень установки" |
||||||
|
GalleryTagLink = "Ссылка на документ" |
||||||
|
GalleryTags = "HTML tags" |
||||||
|
GalleryIfElse = "Условия" |
||||||
|
GallerySample = "Пример" |
||||||
|
GallerySample1 = "четный" |
||||||
|
GallerySample2 = "нечетный" |
||||||
|
GallerySetParam = "Параметр" |
||||||
|
GallerySetVal = "Значение" |
||||||
|
GalleryTagContent = "Системный тег отвечающий за вывод элементов галереи, указанных в поле «Шаблон вывода изображения»" |
||||||
|
GalleryTagPages = "Системный тег отвечающий за вывод постраничной навигации для галереи (< 1 2 3 >)" |
||||||
|
GalleryTagImgSize = "Системный тег размера файла изображения (Kb)" |
||||||
|
GallerySeppLine = "То, что будет выводится после N миниатюр в строке (см. «Количество миниатюр в строке»)" |
||||||
|
GalleryMediaPath = "Системный тег определяющий путь до папки с шаблоном<br /><strong>Например:</strong><br />[tag:mediapath]images/logo.gif" |
||||||
|
GalleryCopy = "Копировать галерею" |
||||||
|
GalleryCopyT = "Пожалуйста, укажите название галереи." |
||||||
|
CopyGallery = "Копировать галерею" |
||||||
|
GallerryNoItems = "В настоящий момент не существует ни одной галереи." |
||||||
|
SavedOk = "Настройки успешно сохранены" |
||||||
|
Or = " или " |
||||||
|
LinkToDoc = "Связать с существующим документом" |
||||||
|
LinkDoc = "Ссылка на документ" |
||||||
|
GalleryReportCopy = "Создал копию галерии" |
@ -0,0 +1,129 @@ |
|||||||
|
<?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'] = '© 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; |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
?> |
@ -0,0 +1,106 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
/** |
||||||
|
* AVE.cms - Модуль Галерея. |
||||||
|
* |
||||||
|
* @package AVE.cms |
||||||
|
* @subpackage module_Gallery |
||||||
|
* @filesource |
||||||
|
*/ |
||||||
|
|
||||||
|
/** |
||||||
|
* mySQL-запросы для установки, обновления и удаления модуля |
||||||
|
*/ |
||||||
|
|
||||||
|
$module_sql_install = array(); |
||||||
|
$module_sql_deinstall = array(); |
||||||
|
$module_sql_update = array(); |
||||||
|
|
||||||
|
//Удаление модуля |
||||||
|
$module_sql_deinstall[] = "DROP TABLE IF EXISTS CPPREFIX_module_gallery;"; |
||||||
|
$module_sql_deinstall[] = "DROP TABLE IF EXISTS CPPREFIX_module_gallery_images;"; |
||||||
|
|
||||||
|
//Установка модуля |
||||||
|
$module_sql_install[] = "CREATE TABLE `CPPREFIX_module_gallery` ( |
||||||
|
`id` int(10) unsigned NOT NULL auto_increment, |
||||||
|
`gallery_title` varchar(255) NOT NULL, |
||||||
|
`gallery_description` text NOT NULL, |
||||||
|
`gallery_author_id` int(10) unsigned NOT NULL default '0', |
||||||
|
`gallery_created` int(10) unsigned NOT NULL default '0', |
||||||
|
`gallery_thumb_width` smallint(3) unsigned NOT NULL default '120', |
||||||
|
`gallery_thumb_height` smallint(3) unsigned NOT NULL default '120', |
||||||
|
`gallery_thumb_method` enum('c','r') NOT NULL default 'c', |
||||||
|
`gallery_image_on_line` tinyint(1) unsigned NOT NULL default '4', |
||||||
|
`gallery_image_on_page` tinyint(1) unsigned NOT NULL default '12', |
||||||
|
`gallery_watermark` varchar(255) NOT NULL, |
||||||
|
`gallery_folder` varchar(255) NOT NULL, |
||||||
|
`gallery_orderby` enum('datedesc','dateasc','titleasc','titledesc','position') NOT NULL default 'datedesc', |
||||||
|
`gallery_script` text NOT NULL, |
||||||
|
`gallery_image_template` text NOT NULL, |
||||||
|
`gallery_sepp_line` text NOT NULL, |
||||||
|
PRIMARY KEY (`id`) |
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;"; |
||||||
|
|
||||||
|
$module_sql_install[] = "CREATE TABLE `CPPREFIX_module_gallery_images` ( |
||||||
|
`id` int(10) unsigned NOT NULL auto_increment, |
||||||
|
`gallery_id` int(10) unsigned NOT NULL default '0', |
||||||
|
`image_filename` varchar(255) NOT NULL, |
||||||
|
`image_author_id` int(10) unsigned NOT NULL default '0', |
||||||
|
`image_title` varchar(255) NOT NULL, |
||||||
|
`image_description` text NOT NULL, |
||||||
|
`image_file_ext` char(4) NOT NULL, |
||||||
|
`image_date` int(10) unsigned NOT NULL default '0', |
||||||
|
`image_position` smallint(3) unsigned NOT NULL default '1', |
||||||
|
`image_link` varchar(255) NOT NULL, |
||||||
|
`image_status` enum('1','0') NOT NULL DEFAULT '1', |
||||||
|
PRIMARY KEY (`id`), |
||||||
|
KEY `image_position` (`image_position`), |
||||||
|
KEY `image_date` (`image_date`), |
||||||
|
KEY `gallery_id` (`gallery_id`), |
||||||
|
KEY `image_title` (`image_title`) |
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0;"; |
||||||
|
|
||||||
|
// Обновление модуля |
||||||
|
$module_sql_update[] = " |
||||||
|
UPDATE |
||||||
|
`CPPREFIX_module` |
||||||
|
SET |
||||||
|
ModuleAveTag = '" . $modul['ModuleAveTag'] . "', |
||||||
|
ModulePHPTag = '" . $modul['ModulePHPTag'] . "', |
||||||
|
ModuleVersion = '" . $modul['ModuleVersion'] . "' |
||||||
|
WHERE |
||||||
|
ModuleSysName = '" . $modul['ModuleSysName'] . "' |
||||||
|
LIMIT 1; |
||||||
|
"; |
||||||
|
|
||||||
|
$module_sql_update[] = " |
||||||
|
RENAME TABLE |
||||||
|
`CPPREFIX_modul_gallery` |
||||||
|
TO |
||||||
|
`CPPREFIX_module_gallery` |
||||||
|
"; |
||||||
|
|
||||||
|
$module_sql_update[] = " |
||||||
|
RENAME TABLE |
||||||
|
`CPPREFIX_modul_gallery_images` |
||||||
|
TO |
||||||
|
`CPPREFIX_module_gallery_images` |
||||||
|
"; |
||||||
|
|
||||||
|
$module_sql_update[] = " |
||||||
|
ALTER TABLE `".PREFIX."_module_gallery_images` |
||||||
|
ADD |
||||||
|
`image_link` |
||||||
|
varchar(255) NOT NULL default '' AFTER |
||||||
|
`image_position` |
||||||
|
"; |
||||||
|
|
||||||
|
$module_sql_update[] = " |
||||||
|
ALTER TABLE `".PREFIX."_module_gallery_images` |
||||||
|
ADD |
||||||
|
`image_status` |
||||||
|
enum('1','0') NOT NULL DEFAULT '1' AFTER |
||||||
|
`image_link` |
||||||
|
"; |
||||||
|
|
||||||
|
?> |
@ -0,0 +1,401 @@ |
|||||||
|
<div class="title"><h5>{#ModSettingGal#}</h5></div> |
||||||
|
|
||||||
|
<div class="widget" style="margin-top: 0px;"> |
||||||
|
<div class="body"> |
||||||
|
{#ModSettingGalT#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="breadCrumbHolder module"> |
||||||
|
<div class="breadCrumb module"> |
||||||
|
<ul> |
||||||
|
<li class="firstB"><a href="index.php" title="{#MAIN_PAGE#}">{#MAIN_PAGE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&cp={$sess}">{#MODULES_SUB_TITLE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=1&cp={$sess}">{#ModName#}</a></li> |
||||||
|
<li>{#Overview#}</li> |
||||||
|
<li><strong class="code">{$gallery.gallery_title|escape}</strong></li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<form class="mainForm" method="post" name="gallery_form" id="gallery_form" action="index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$smarty.request.id|escape}&cp={$sess}&sub=save"> |
||||||
|
|
||||||
|
<div class="widget first"> |
||||||
|
<div class="head"> |
||||||
|
<h5 class="iFrames">{#ModSettingGal#}</h5> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=add&id={$smarty.request.id|escape}&cp={$sess}">{#AddnewImages#}</a></div> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$smarty.request.id|escape}&cp={$sess}&compile=1">{#ImageView#}</a></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic"> |
||||||
|
<col width="250"> |
||||||
|
<col> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<td>{#GallerySetParam#}</td> |
||||||
|
<td>{#GallerySetVal#}</td> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#GalleryTitle#}</td> |
||||||
|
<td> |
||||||
|
<input class="mousetrap" placeholder="{#GalleryTitle#}" name="gallery_title" type="text" id="gallery_title" value="{$gallery.gallery_title|escape}" size="40" style="width:500px" /> |
||||||
|
<input name="gallery_title_old" type="hidden" value="{$gallery.gallery_title|escape}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#GalleryDesc#}</td> |
||||||
|
<td> |
||||||
|
<textarea class="mousetrap" placeholder="{#GalleryDesc#}" name="gallery_description" cols="40" rows="5" id="gallery_description" style="width:500px">{$gallery.gallery_description|escape}</textarea> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#GalleryFolder#}</td> |
||||||
|
<td> |
||||||
|
<input name="gallery_folder_old" type="hidden" value="{$gallery.gallery_folder|escape}" /> |
||||||
|
<input class="mousetrap rightDir" placeholder="{#GalleryFolderP#}" name="gallery_folder" title="{#GalleryFolderDesc#}" type="text" id="dir__0" size="40" value="{$gallery.gallery_folder|escape}" style="width:500px" /> |
||||||
|
<input type="button" class="basicBtn topDir" value="..." title="{#MAIN_OPEN_MEDIAPATH#}" onclick="browse_uploads('dir__0');" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#Watermark#}</td> |
||||||
|
<td> |
||||||
|
<div><img id="preview__0" src="{if $gallery.gallery_watermark != ""}../{$gallery.gallery_watermark|escape}{else}{$blank}{/if}" alt="" border="0" /></div> |
||||||
|
<input class="mousetrap" placeholder="{#Watermark#}" name="gallery_watermark" type="text" id="image__0" value="{$gallery.gallery_watermark|escape}" size="40" style="width:500px" /> |
||||||
|
<input type="button" class="basicBtn topDir" value="..." title="{#MAIN_OPEN_MEDIAPATH#}" onclick="browse_uploads('image__0');" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#MaxWidth#}</td> |
||||||
|
<td> |
||||||
|
<input class="mousetrap rightDir" name="gallery_thumb_width" title="{#MaxWidthWarn#}" type="text" id="gallery_thumb_width" value="{$gallery.gallery_thumb_width}" size="5" maxlength="3" style="width: 35px;" /> |
||||||
|
<input name="thumb_width_old" type="hidden" value="{$gallery.gallery_thumb_width}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>{#MaxHeight#}</td> |
||||||
|
<td> |
||||||
|
<input class="mousetrap rightDir" name="gallery_thumb_height" title="{#MaxHeightWarn#}" type="text" id="gallery_thumb_height" value="{$gallery.gallery_thumb_height}" size="5" maxlength="3" style="width: 35px;" /> |
||||||
|
<input name="gallery_thumb_old" type="hidden" value="{$gallery.gallery_thumb_height}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>{#ThumbMethod#}</td> |
||||||
|
<td> |
||||||
|
<select name="gallery_thumb_method" style="width:250px"> |
||||||
|
<option value="c" {if $gallery.gallery_thumb_method == 'c'}selected="selected" {/if}/>{#Crop#}</option> |
||||||
|
<option value="r" {if $gallery.gallery_thumb_method == 'r'}selected="selected" {/if}/>{#Resize#}</option> |
||||||
|
</select> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>{#MaxImagesERow#}</td> |
||||||
|
<td> |
||||||
|
<input class="mousetrap" name="gallery_image_on_line" type="text" id="gallery_image_on_line" value="{$gallery.gallery_image_on_line}" size="5" maxlength="2" style="width: 35px;" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td class="first">{#MaxImagesPage#}</td> |
||||||
|
<td> |
||||||
|
<input class="mousetrap" name="gallery_image_on_page" type="text" id="gallery_image_on_page" value="{$gallery.gallery_image_on_page}" size="5" maxlength="4" style="width: 35px;" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td>{#OrderImage#}</td> |
||||||
|
<td> |
||||||
|
<select name="gallery_orderby" style="width:250px"> |
||||||
|
<option value="dateasc" {if $gallery.gallery_orderby == 'dateasc'}selected="selected" {/if}/>{#OrderDateAsc#}</option> |
||||||
|
<option value="datedesc" {if $gallery.gallery_orderby == 'datedesc'}selected="selected" {/if}/>{#OrderDateDesc#}</option> |
||||||
|
<option value="titleasc" {if $gallery.gallery_orderby == 'titleasc'}selected="selected" {/if}/>{#OrderTitleAsc#}</option> |
||||||
|
<option value="titledesc" {if $gallery.gallery_orderby == 'titledesc'}selected="selected" {/if}/>{#OrderTitleDesc#}</option> |
||||||
|
<option value="position" {if $gallery.gallery_orderby == 'position'}selected="selected" {/if}/>{#OrderPosition#}</option> |
||||||
|
</select> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td colspan="2"> |
||||||
|
<input type="submit" class="basicBtn" value="{#ButtonSave#}" /> |
||||||
|
<input type="submit" class="blackBtn SaveEdit" value="{#ButtonSaveEdit#}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</table> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="widget first"> |
||||||
|
<div class="head"><h5 class="iFrames">{#GalleryScripts#}</h5></div> |
||||||
|
|
||||||
|
<link rel="stylesheet" href="{$ABS_PATH}admin/codemirror/lib/codemirror.css"> |
||||||
|
|
||||||
|
<script src="{$ABS_PATH}admin/codemirror/lib/codemirror.js" type="text/javascript"></script> |
||||||
|
<script src="{$ABS_PATH}admin/codemirror/mode/xml/xml.js"></script> |
||||||
|
<script src="{$ABS_PATH}admin/codemirror/mode/javascript/javascript.js"></script> |
||||||
|
<script src="{$ABS_PATH}admin/codemirror/mode/css/css.js"></script> |
||||||
|
<script src="{$ABS_PATH}admin/codemirror/mode/clike/clike.js"></script> |
||||||
|
<script src="{$ABS_PATH}admin/codemirror/mode/php/php.js"></script> |
||||||
|
|
||||||
|
{literal} |
||||||
|
<style type="text/css"> |
||||||
|
.activeline {background: #e8f2ff !important;} |
||||||
|
.CodeMirror-scroll {height: 300px;} |
||||||
|
</style> |
||||||
|
{/literal} |
||||||
|
|
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic"> |
||||||
|
<col width="250"> |
||||||
|
<col> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<td>{#GalleryScriptsTag#}</td> |
||||||
|
<td>{#GalleryScripts#}</td> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagId#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:id]', '');">[tag:gal:id]</a></strong></td> |
||||||
|
<td rowspan="9"><textarea name="gallery_script" cols="80" rows="10" id="gallery_script" style="width:100%">{$gallery.gallery_script|escape}</textarea></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagFolder#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:folder]', '');">[tag:gal:folder]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagTitl#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:title]', '');">[tag:gal:title]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagDesc#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:description]', '');">[tag:gal:description]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagContent#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:content]', '');">[tag:gal:content]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagPages#}" href="javascript:void(0);" onclick="textSelection('[tag:gal:pages]', '');">[tag:gal:pages]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagPath#}" href="javascript:void(0);" onclick="textSelection('[tag:path]', '');">[tag:path]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryMediaPath#}" href="javascript:void(0);" onclick="textSelection('[tag:mediapath]', '');">[tag:mediapath]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>{#GalleryTags#}</td> |
||||||
|
<td> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<ol>', '</ol>');"><strong>OL</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<ul>', '</ul>');"><strong>UL</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<li>', '</li>');"><strong>LI</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<p class="">', '</p>');"><strong>P</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<strong>', '</strong>');"><strong>B</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<em>', '</em>');"><strong>I</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<h1>', '</h1>');"><strong>H1</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<h2>', '</h2>');"><strong>H2</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<h3>', '</h3>');"><strong>H3</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<h4>', '</h4>');"><strong>H4</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<h5>', '</h5>');"><strong>H5</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<div class="" id="">', '</div>');"><strong>DIV</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<a href="" title="">', '</a>');"><strong>A</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<img src="" alt="" />', '');"><strong>IMG</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<span>', '</span>');"><strong>SPAN</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<pre>', '</pre>');"><strong>PRE</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('<br />', '');"><strong>BR</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection('\t', '');"><strong>TAB</strong></a> | |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<div class="widget first"> |
||||||
|
<div class="head"><h5 class="iFrames">{#ImageTpl#}</h5></div> |
||||||
|
|
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic"> |
||||||
|
<col width="250"> |
||||||
|
<col> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<td>{#ImageTplTag#}</td> |
||||||
|
<td>{#ImageTpl#}</td> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<tr> |
||||||
|
<td>{#GalleryIfElse#}</td> |
||||||
|
<td> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_first]', '[tag:/if]');"><strong>[tag:if_first]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_not_first]', '[tag:/if]');"><strong>[tag:if_not_first]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_last]', '[tag:/if]');"><strong>[tag:if_last]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_not_last]', '[tag:/if]');"><strong>[tag:if_not_last]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_every:]', '[tag:/if]');"><strong>[tag:if_every:XXX]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_not_every:]', '[tag:/if]');"><strong>[tag:if_not_every:XXX]</strong></a> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('[tag:if_every:2]\r\n\t{#GallerySample1#}\r\n[tag:if:else]\r\n\t{#GallerySample2#}\r\n[tag:/if]', '');"><strong>{#GallerySample#}</strong></a> |
||||||
|
| |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagId#}" href="javascript:void(0);" onclick="textSelection2('[tag:gal:id]', '');">[tag:gal:id]</a></strong></td> |
||||||
|
<td rowspan="11"><textarea name="gallery_image_template" cols="80" rows="11" id="gallery_image_template" style="width:100%">{$gallery.gallery_image_template|escape}</textarea></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagFolder#}" href="javascript:void(0);" onclick="textSelection2('[tag:gal:folder]', '');">[tag:gal:folder]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagTitl#}" href="javascript:void(0);" onclick="textSelection2('[tag:gal:title]', '');">[tag:gal:title]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<strong><a class="rightDir" title="{#GalleryTagPath#}" href="javascript:void(0);" onclick="textSelection2('[tag:path]', '');">[tag:path]</a></strong> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgId#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:id]', '');">[tag:img:id]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgTitle#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:title]', '');">[tag:img:title]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgDesc#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:description]', '');">[tag:img:description]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgFilename#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:original]', '');">[tag:img:original]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgThumb#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:thumbnail]', '');">[tag:img:thumbnail]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagImgSize#}" href="javascript:void(0);" onclick="textSelection2('[tag:img:size]', '');">[tag:img:size]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td><strong><a class="rightDir" title="{#GalleryTagLink#}" href="javascript:void(0);" onclick="textSelection2('[tag:link]', '');">[tag:link]</a></strong></td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td>{#GalleryTags#}</td> |
||||||
|
<td> |
||||||
|
| |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<ol>', '</ol>');"><strong>OL</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<ul>', '</ul>');"><strong>UL</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<li>', '</li>');"><strong>LI</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<p class="">', '</p>');"><strong>P</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<strong>', '</strong>');"><strong>B</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<em>', '</em>');"><strong>I</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<h1>', '</h1>');"><strong>H1</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<h2>', '</h2>');"><strong>H2</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<h3>', '</h3>');"><strong>H3</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<h4>', '</h4>');"><strong>H4</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<h5>', '</h5>');"><strong>H5</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<div class="" id="">', '</div>');"><strong>DIV</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<a href="" title="">', '</a>');"><strong>A</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<img src="" alt="" />', '');"><strong>IMG</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<span>', '</span>');"><strong>SPAN</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<pre>', '</pre>');"><strong>PRE</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('<br />', '');"><strong>BR</strong></a> | |
||||||
|
<a href="javascript:void(0);" onclick="textSelection2('\t', '');"><strong>TAB</strong></a> | |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td colspan="2"> |
||||||
|
<input type="submit" class="basicBtn" value="{#ButtonSave#}" /> |
||||||
|
{#Or#} |
||||||
|
<input type="submit" class="blackBtn SaveEdit" value="{#ButtonSaveEdit#}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
|
||||||
|
|
||||||
|
<script language="javascript"> |
||||||
|
var sett_options = {ldelim} |
||||||
|
url: 'index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$smarty.request.id|escape}&cp={$sess}&sub=save', |
||||||
|
beforeSubmit: Request, |
||||||
|
success: Response |
||||||
|
{rdelim} |
||||||
|
|
||||||
|
function Request(){ldelim} |
||||||
|
$.alerts._overlay('show'); |
||||||
|
{rdelim} |
||||||
|
|
||||||
|
function Response(){ldelim} |
||||||
|
$.alerts._overlay('hide'); |
||||||
|
$.jGrowl('{#SavedOk#}'); |
||||||
|
{rdelim} |
||||||
|
|
||||||
|
$(document).ready(function(){ldelim} |
||||||
|
|
||||||
|
Mousetrap.bind(['ctrl+s', 'meta+s'], function(event) {ldelim} |
||||||
|
if (event.preventDefault) {ldelim} |
||||||
|
event.preventDefault(); |
||||||
|
{rdelim} else {ldelim} |
||||||
|
// internet explorer |
||||||
|
event.returnValue = false; |
||||||
|
{rdelim} |
||||||
|
$("#gallery_form").ajaxSubmit(sett_options); |
||||||
|
return false; |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
$(".SaveEdit").click(function(event){ldelim} |
||||||
|
if (event.preventDefault) {ldelim} |
||||||
|
event.preventDefault(); |
||||||
|
{rdelim} else {ldelim} |
||||||
|
// internet explorer |
||||||
|
event.returnValue = false; |
||||||
|
{rdelim} |
||||||
|
$("#gallery_form").ajaxSubmit(sett_options); |
||||||
|
return false; |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
</script> |
||||||
|
|
||||||
|
|
||||||
|
</div> |
||||||
|
|
||||||
|
</form> |
||||||
|
|
||||||
|
{include file="$codemirror_connect"} |
||||||
|
{include file="$codemirror_editor" conn_id="" textarea_id='gallery_script' ctrls='$("#gallery_form").ajaxSubmit(sett_options);' height=280} |
||||||
|
{include file="$codemirror_editor" conn_id="2" textarea_id='gallery_image_template' ctrls='$("#gallery_form").ajaxSubmit(sett_options);' height=300} |
||||||
|
|
||||||
|
<script language="javascript"> |
||||||
|
{if $empty_gallery_title == 1} |
||||||
|
alert("{#EmptyGalleryTitle#}"); |
||||||
|
{/if} |
||||||
|
|
||||||
|
{if $folder_exist == 1} |
||||||
|
alert("{#FolderExists#}"); |
||||||
|
{/if} |
||||||
|
</script> |
@ -0,0 +1,168 @@ |
|||||||
|
<script language="Javascript" type="text/javascript"> |
||||||
|
|
||||||
|
function openLinkWin(target) {ldelim} |
||||||
|
if (typeof width=='undefined' || width=='') var width = screen.width * 0.6; |
||||||
|
if (typeof height=='undefined' || height=='') var height = screen.height * 0.6; |
||||||
|
var left = ( screen.width - width ) / 2; |
||||||
|
var top = ( screen.height - height ) / 2; |
||||||
|
window.open('index.php?do=docs&action=showsimple&target='+target+'&selurl=1&pop=1','pop','left='+left+',top='+top+',width='+Math.min(screen.width, 1000)+',height='+Math.min(screen.height, 600)+',scrollbars=1,resizable=1'); |
||||||
|
{rdelim} |
||||||
|
|
||||||
|
$(document).ready(function(){ldelim} |
||||||
|
|
||||||
|
$('#selall').on('change', function(event) {ldelim} |
||||||
|
event.preventDefault(); |
||||||
|
if ($('#selall').is(':checked')) {ldelim} |
||||||
|
$('#Fields .checkbox').attr('checked','checked'); |
||||||
|
$('#Fields .checkbox').addClass('jqTransformChecked'); |
||||||
|
$("#Fields a.jqTransformCheckbox").addClass("jqTransformChecked"); |
||||||
|
{rdelim} else {ldelim} |
||||||
|
$('#Fields .checkbox').removeClass('jqTransformChecked'); |
||||||
|
$('#Fields .checkbox').removeAttr('checked'); |
||||||
|
$("#Fields a.jqTransformCheckbox").removeClass("jqTransformChecked"); |
||||||
|
{rdelim} |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
|
||||||
|
$(".ConfirmDelete").click(function(event){ldelim} |
||||||
|
event.preventDefault(); |
||||||
|
var href = $(this).attr('href'); |
||||||
|
var title = '{#DOC_FINAL_DELETE#}'; |
||||||
|
var confirm = '{#DOC_FINAL_CONFIRM#}'; |
||||||
|
jConfirm( |
||||||
|
confirm, |
||||||
|
title, |
||||||
|
function(b){ldelim} |
||||||
|
if (b){ldelim} |
||||||
|
$.alerts._overlay('show'); |
||||||
|
window.location = href; |
||||||
|
{rdelim} |
||||||
|
{rdelim} |
||||||
|
); |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
$(".galleryimages a").hover( function(){ldelim} |
||||||
|
$(this).children("img").animate({ldelim} opacity: 0.5 {rdelim}, "fast"); |
||||||
|
{rdelim}, function(){ldelim} |
||||||
|
$(this).children("img").animate({ldelim} opacity: 1.0 {rdelim}, "fast"); |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
{rdelim}); |
||||||
|
</script> |
||||||
|
|
||||||
|
<div class="title"><h5>{#Overview#}</h5></div> |
||||||
|
|
||||||
|
<div class="widget" style="margin-top: 0px;"> |
||||||
|
<div class="body"> |
||||||
|
{#OverviewT#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="breadCrumbHolder module"> |
||||||
|
<div class="breadCrumb module"> |
||||||
|
<ul> |
||||||
|
<li class="firstB"><a href="index.php" title="{#MAIN_PAGE#}">{#MAIN_PAGE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&cp={$sess}">{#MODULES_SUB_TITLE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=1&cp={$sess}">{#ModName#}</a></li> |
||||||
|
<li>{#Overview#}</li> |
||||||
|
<li><strong class="code">{$gallery_title}</strong></li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
{if $page_nav} |
||||||
|
<div class="pagination"> |
||||||
|
<ul class="pages"> |
||||||
|
{$page_nav} |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
{/if} |
||||||
|
|
||||||
|
<div class="widget first"> |
||||||
|
<div class="head"> |
||||||
|
<h5 class="iFrames">{#Overview#}</h5> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=add&id={$smarty.request.id|escape}&cp={$sess}">{#AddnewImages#}</a></div> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$smarty.request.id|escape}&cp={$sess}">{#EditGallery#}</a></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<form name="kform" class="mainForm" method="post" action="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$smarty.request.id|escape}&cp={$sess}&sub=save&page={$smarty.request.page|escape}"> |
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic" id="Fields"> |
||||||
|
<col width="20"> |
||||||
|
<col width="50"> |
||||||
|
<col width="120"> |
||||||
|
<col width=""> |
||||||
|
<col width=""> |
||||||
|
<col width=""> |
||||||
|
<col width="16"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<td align="center"><div align="center"><input title="{#MarAllDel#}" type="checkbox" id="selall" value="1" /></div></td> |
||||||
|
<td align="center">{#Position#}</td> |
||||||
|
<td>{#FilePrev#}</td> |
||||||
|
<td>{#FileTitle#}</td> |
||||||
|
<td>{#FileDesc#}</td> |
||||||
|
<td>{#MoreInfos#}</td> |
||||||
|
<td></td> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
{foreach from=$images item=image} |
||||||
|
<tr> |
||||||
|
|
||||||
|
<td valign="top"> |
||||||
|
<input type="hidden" value="{$image.id}" name="gimg[]" /> |
||||||
|
<input type="hidden" value="{$image.image_filename|escape}" name="datei[{$image.id}]" /> |
||||||
|
<input title="{#MarDel#}" name="del[{$image.id}]" class="checkbox topDir" type="checkbox" id="del[{$image.id}]" value="1" /> |
||||||
|
</td> |
||||||
|
|
||||||
|
<td valign="top"> |
||||||
|
<div class="pr12"><input name="image_position[{$image.id}]" type="text" style="width:30px" id="image_position[{$image.id}]" value="{$image.image_position}"></div> |
||||||
|
</td> |
||||||
|
|
||||||
|
<td valign="top" class="galleryimages"> |
||||||
|
<a href="{$image.original}" class="fancy"> |
||||||
|
<img src="{$image.thumbnail}" width="100" alt="" border="0" /> |
||||||
|
</a> |
||||||
|
</td> |
||||||
|
|
||||||
|
<td valign="top"> |
||||||
|
<div class="pr12"><input placeholder="{#FileTitle#}" name="image_title[{$image.id}]" type="text" id="image_title[{$image.id}]" value="{$image.image_title|escape}"></div> |
||||||
|
<br /> |
||||||
|
<input placeholder="{#LinkDoc#}" name="image_link[{$image.id}]" type="text" id="Link_{$image.id}" value="{$image.image_link}" style="width: 70%;" /> |
||||||
|
<input title="{#LinkToDoc#}" onclick="openLinkWin('Link_{$image.id}','Link_{$image.id}');" type="button" class="basicBtn topDir" value="... " /> |
||||||
|
</td> |
||||||
|
|
||||||
|
<td valign="top"> |
||||||
|
<div class="pr12"><textarea placeholder="{#FileDesc#}" name="image_description[{$image.id}]" style="height: 60px" id="image_description[{$image.id}]">{$image.image_description|escape}</textarea></div> |
||||||
|
</td> |
||||||
|
|
||||||
|
<td valign="top"> |
||||||
|
<strong>{#Uploader#}</strong>: {$image.image_author|escape}<br /> |
||||||
|
<strong>{#UploadOn#}</strong>: {$image.image_date|date_format:$TIME_FORMAT|pretty_date}<br /> |
||||||
|
<strong>{#Filename#}</strong>: {$image.image_filename|escape}<br /> |
||||||
|
<strong>{#Filesize#}</strong>: {$image.image_size} kb |
||||||
|
</td> |
||||||
|
<td valign="top" style="width: 16px;"> |
||||||
|
<input title="{#MarAct#}" name="image_status[{$image.id}]" class="checkbox topleftDir" type="checkbox" id="image_status[{$image.id}]" value="1" {if $image.image_status == '1'} checked="checked"{/if} /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
{/foreach} |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td colspan="7"> |
||||||
|
<input class="basicBtn" type="submit" value="{#ButtonSave#}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</table> |
||||||
|
</form> |
||||||
|
|
||||||
|
</div> |
||||||
|
|
||||||
|
{if $page_nav} |
||||||
|
<div class="pagination"> |
||||||
|
<ul class="pages"> |
||||||
|
{$page_nav} |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
{/if} |
@ -0,0 +1,204 @@ |
|||||||
|
<script type="text/javascript" language="JavaScript"> |
||||||
|
$(document).ready(function(){ldelim} |
||||||
|
|
||||||
|
$(".CopyGallery").click( function(e) {ldelim} |
||||||
|
e.preventDefault(); |
||||||
|
var href = $(this).attr('href'); |
||||||
|
var title = '{#GalleryCopy#}'; |
||||||
|
var text = '{#GalleryCopyT#}'; |
||||||
|
jPrompt(text, '', title, function(b){ldelim} |
||||||
|
if (b){ldelim} |
||||||
|
$.alerts._overlay('show'); |
||||||
|
window.location = href + '&gallery_title=' + b; |
||||||
|
{rdelim} |
||||||
|
{rdelim} |
||||||
|
); |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
$(".AddGallery").click( function(e) {ldelim} |
||||||
|
e.preventDefault(); |
||||||
|
var user_group = $('#add_gallery #gallery_title').fieldValue(); |
||||||
|
var title = '{#NewGallery#}'; |
||||||
|
var text = '{#EmptyGalleryTitle#}'; |
||||||
|
if (user_group == ""){ldelim} |
||||||
|
jAlert(text,title); |
||||||
|
{rdelim}else{ldelim} |
||||||
|
$.alerts._overlay('show'); |
||||||
|
$("#add_gallery").submit(); |
||||||
|
{rdelim} |
||||||
|
{rdelim}); |
||||||
|
|
||||||
|
{rdelim}); |
||||||
|
</script> |
||||||
|
<div class="title"><h5>{#ModName#}</h5></div> |
||||||
|
|
||||||
|
<div class="widget" style="margin-top: 0px;"> |
||||||
|
<div class="body"> |
||||||
|
{#ModTitle#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="breadCrumbHolder module"> |
||||||
|
<div class="breadCrumb module"> |
||||||
|
<ul> |
||||||
|
<li class="firstB"><a href="index.php" title="{#MAIN_PAGE#}">{#MAIN_PAGE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&cp={$sess}">{#MODULES_SUB_TITLE#}</a></li> |
||||||
|
<li>{#ModName#}</li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
<div class="widget first"> |
||||||
|
<ul class="tabs"> |
||||||
|
<li class="activeTab"><a href="#tab1">{#GalleryList#}</a></li> |
||||||
|
<li class=""><a href="#tab2">{#NewGallery#}</a></li> |
||||||
|
</ul> |
||||||
|
|
||||||
|
<div class="tab_container"> |
||||||
|
<div id="tab1" class="tab_content" style="display: block;"> |
||||||
|
<form action="" method="post" class="mainForm"> |
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic"> |
||||||
|
<col width="20"> |
||||||
|
<col> |
||||||
|
<col width="150"> |
||||||
|
<col width="150"> |
||||||
|
<col width="200"> |
||||||
|
<col width="150"> |
||||||
|
<col width="100"> |
||||||
|
<col width="20"> |
||||||
|
<col width="20"> |
||||||
|
<col width="20"> |
||||||
|
<col width="20"> |
||||||
|
<col width="20"> |
||||||
|
<thead> |
||||||
|
<tr> |
||||||
|
<td><div align="center"><a href="javascript:void(0);" class="toprightDir icon_sprite ico_info" title="{#CheckboxCreate#}"></a></div></td> |
||||||
|
<td>{#GalleryTitle#}</td> |
||||||
|
<td>{#CpTag#}</td> |
||||||
|
<td>{#GalleryAuthor#}</td> |
||||||
|
<td>{#Folder#}</td> |
||||||
|
<td>{#Gcreated#}</td> |
||||||
|
<td>{#IncImages#}</td> |
||||||
|
<td colspan="5">{#Actions#}</td> |
||||||
|
</tr> |
||||||
|
</thead> |
||||||
|
<tbody> |
||||||
|
<form action="" method="post" class="mainForm"> |
||||||
|
{foreach from=$galleries item=gallery} |
||||||
|
<tr> |
||||||
|
<td> |
||||||
|
<input type="checkbox" name="create[]" value="{$gallery.id}" {if $gallery.gallery_folder != ''}disabled="disabled"{/if} /> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
{if $gallery.image_count > 0} |
||||||
|
<strong class="docname"><a class="topDir" title="{#ImageView#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$gallery.id}&cp={$sess}&compile=1">{$gallery.gallery_title|escape}</a></strong> |
||||||
|
{else} |
||||||
|
<strong>{$gallery.gallery_title|escape}</strong> |
||||||
|
{/if} |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<div class="pr12"><input name="textfield" type="text" readonly value="[mod_gallery:{$gallery.id}]" size="17" /></div> |
||||||
|
</td> |
||||||
|
<td align="center"> |
||||||
|
<a class="topDir" title="{#UserProfile#}" href="index.php?do=user&action=edit&id={$gallery.gallery_author_id}&cp={$sess}">{$gallery.username|escape}</a> |
||||||
|
</td> |
||||||
|
<td align="center">{$gallery.gallery_folder|escape}</td> |
||||||
|
<td align="center"><span class="date_text dgrey">{$gallery.gallery_created|date_format:$TIME_FORMAT|pretty_date}</span></td> |
||||||
|
<td> |
||||||
|
<div align="center"> |
||||||
|
{if $gallery.image_count > 0} |
||||||
|
<strong><a class="topDir" title="{#ImageView#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$gallery.id}&cp={$sess}">{$gallery.image_count}</a></strong> |
||||||
|
{else}-{/if} |
||||||
|
</div> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<a class="topleftDir icon_sprite ico_look" title="{#ImageView#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$gallery.id}&cp={$sess}&compile=1"></a> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<a class="topleftDir icon_sprite ico_add" title="{#AddnewImages#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=add&id={$gallery.id}&cp={$sess}"></a> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<a class="topleftDir icon_sprite ico_setting" title="{#EditGallery#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$gallery.id}&cp={$sess}"></a> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<a class="topleftDir icon_sprite ico_copy CopyGallery" title="{#CopyGallery#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=copygallery&id={$gallery.id}&cp={$sess}"></a> |
||||||
|
</td> |
||||||
|
<td> |
||||||
|
<a class="topleftDir ConfirmDelete icon_sprite ico_delete" title="{#DeleteGallery#}" dir="{#DeleteGallery#}" name="{#DeleteGalleryC#}" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=delgallery&id={$gallery.id}&cp={$sess}"></a> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
{/foreach} |
||||||
|
{if !$galleries} |
||||||
|
<tr> |
||||||
|
<td colspan="9"> |
||||||
|
<ul class="messages"> |
||||||
|
<li class="highlight yellow">{#GallerryNoItems#}</li> |
||||||
|
</ul> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
{/if} |
||||||
|
</form> |
||||||
|
</tbody> |
||||||
|
</table> |
||||||
|
</form> |
||||||
|
{if $galleries} |
||||||
|
<div class="rowElem"> |
||||||
|
<input class="basicBtn" type="submit" value="{#CreateFolder#}" /> |
||||||
|
</div> |
||||||
|
{/if} |
||||||
|
</div> |
||||||
|
|
||||||
|
<div id="tab2" class="tab_content" style="display: none;"> |
||||||
|
<form id="add_gallery" action="{$formaction}" method="post" class="mainForm"> |
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic mainForm"> |
||||||
|
<tr class="noborder"> |
||||||
|
<td width="180">{#GalleryTitle#}</td> |
||||||
|
<td> |
||||||
|
<input placeholder="{#GalleryTitle#}" name="gallery_title" type="text" id="gallery_title" value="" style="width:300px" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td width="180">{#GalleryDesc#}</td> |
||||||
|
<td> |
||||||
|
<textarea placeholder="{#GalleryDesc#}" name="gallery_description" cols="50" rows="4" id="gallery_description" style="width:300px"></textarea> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
<tr> |
||||||
|
<td width="180">{#GalleryFolder#}</td> |
||||||
|
<td> |
||||||
|
<input placeholder="{#GalleryFolderP#}" name="gallery_folder" type="text" id="gallery_folder" size="40" value="" style="width:300px" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td colspan="2"> |
||||||
|
<input type="submit" class="basicBtn AddGallery" value="{#ButtonAdd#}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</table> |
||||||
|
</form> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
<div class="fix"></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
{if $page_nav} |
||||||
|
<div class="pagination"> |
||||||
|
<ul class="pages"> |
||||||
|
{$page_nav} |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
{/if} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{if $alert == "folder_exists"} |
||||||
|
<script type="text/javascript" language="JavaScript"> |
||||||
|
$.jGrowl("{#FolderExists#}"); |
||||||
|
</script> |
||||||
|
{/if} |
@ -0,0 +1,128 @@ |
|||||||
|
<script type="text/javascript" src="http://bp.yahooapis.com/2.4.21/browserplus-min.js"></script> |
||||||
|
<script type="text/javascript" src="{$ABS_PATH}lib/scripts/uploader/plupload.full.min.js"></script> |
||||||
|
<script type="text/javascript" src="{$ABS_PATH}lib/scripts/uploader/jquery.plupload.queue.js"></script> |
||||||
|
<script type="text/javascript" src="{$ABS_PATH}lib/scripts/uploader/i18n/{$smarty.session.admin_language}.js"></script> |
||||||
|
|
||||||
|
<script language="javascript" type="text/javascript"> |
||||||
|
{literal} |
||||||
|
$(document).ready(function(){ |
||||||
|
//===== File uploader =====// |
||||||
|
|
||||||
|
$("#uploader").pluploadQueue({ |
||||||
|
runtimes : 'html5,flash', |
||||||
|
url : ave_path+'modules/gallery/upload.php', |
||||||
|
max_file_size : '20mb', |
||||||
|
unique_names : true, |
||||||
|
filters : [ |
||||||
|
{title : "Image files", extensions : "jpg,jpeg,jpe,gif,png"}, |
||||||
|
{title : "Video files", extensions : "avi,mov,wmv,wmf"} |
||||||
|
], |
||||||
|
// Flash settings |
||||||
|
flash_swf_url : '/lib/scripts/uploader/Moxie.swf' |
||||||
|
|
||||||
|
|
||||||
|
}); |
||||||
|
|
||||||
|
// Client side form validation |
||||||
|
$('form').submit(function(e) { |
||||||
|
var uploader = $('#uploader').pluploadQueue(); |
||||||
|
// Files in queue upload them first |
||||||
|
|
||||||
|
// When all files are uploaded submit form |
||||||
|
uploader.bind('StateChanged', function() { |
||||||
|
if (uploader.files.length === (uploader.total.uploaded + uploader.total.failed)) { |
||||||
|
$('form')[0].submit(); |
||||||
|
} |
||||||
|
}); |
||||||
|
uploader.start(); |
||||||
|
|
||||||
|
return false; |
||||||
|
}); |
||||||
|
|
||||||
|
}); |
||||||
|
{/literal} |
||||||
|
</script> |
||||||
|
|
||||||
|
<div class="title"><h5>{#Upload#}</h5></div> |
||||||
|
|
||||||
|
<div class="widget" style="margin-top: 0px;"> |
||||||
|
<div class="body"> |
||||||
|
{#UploadInfo#} <strong>{foreach from=$allowed item=a}{$a|escape} {/foreach}</strong> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="breadCrumbHolder module"> |
||||||
|
<div class="breadCrumb module"> |
||||||
|
<ul> |
||||||
|
<li class="firstB"><a href="index.php" title="{#MAIN_PAGE#}">{#MAIN_PAGE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&cp={$sess}">{#MODULES_SUB_TITLE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=1&cp={$sess}">{#ModName#}</a></li> |
||||||
|
<li>{#Upload#}</li> |
||||||
|
<li><strong class="code">{$gallery_title|escape}</strong></li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
|
||||||
|
{if $not_writeable == 1} |
||||||
|
<ul class="messages"> |
||||||
|
<li class="highlight red">{#ErrorFolderStart#}{$upload_dir|escape}{#ErrorFolderEnd#}</li> |
||||||
|
</ul> |
||||||
|
{else} |
||||||
|
|
||||||
|
|
||||||
|
<form class="mainForm" method="post" action="{$formaction}" enctype="multipart/form-data"> |
||||||
|
<input name="fromuploader" type="hidden" id="fromuploader" value="1" /> |
||||||
|
<fieldset> |
||||||
|
<div class="widget"> |
||||||
|
<div class="head"> |
||||||
|
<h5>{#Upload#}</h5> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$smarty.request.id|escape}&cp={$sess}">{#EditGallery#}</a></div> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$smarty.request.id|escape}&cp={$sess}&compile=1">{#ImageView#}</a></div> |
||||||
|
</div> |
||||||
|
<div id="uploader" style="position: relative;"></div> |
||||||
|
</div> |
||||||
|
</fieldset> |
||||||
|
|
||||||
|
<div class="widget"> |
||||||
|
<div class="head"> |
||||||
|
<h5>{#Upload#}</h5> |
||||||
|
</div> |
||||||
|
|
||||||
|
<table cellpadding="0" cellspacing="0" width="100%" class="tableStatic"> |
||||||
|
<tr class="noborder"> |
||||||
|
<td width="200"><strong>{#Shrink#}</strong></td> |
||||||
|
<td> |
||||||
|
<select name="shrink" id="shrink"> |
||||||
|
<option value="100">{#To100#}</option> |
||||||
|
<option value="75">{#To75#}</option> |
||||||
|
<option value="50">{#To50#}</option> |
||||||
|
<option value="25">{#To25#}</option> |
||||||
|
</select> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td width="200"><strong>{#MaxSize#}</strong></td> |
||||||
|
<td> |
||||||
|
<input name="maxsize" type="text" value="2000" maxlength="4" size="4" style="width: 50px;" /> px |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td width="200"><strong>{#LoadFromFolder#}</strong></td> |
||||||
|
<td> |
||||||
|
<input name="fromfolder" type="checkbox" id="fromfolder" value="1" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
|
||||||
|
<tr> |
||||||
|
<td colspan="2"> |
||||||
|
<input type="submit" class="basicBtn" value="{#ButtonSave#}" /> |
||||||
|
</td> |
||||||
|
</tr> |
||||||
|
</table> |
||||||
|
<div class="fix"></div> |
||||||
|
</div> |
||||||
|
</form> |
||||||
|
{/if} |
@ -0,0 +1,37 @@ |
|||||||
|
<div class="title"><h5>{#UploadProg#}</h5></div> |
||||||
|
|
||||||
|
<div class="widget" style="margin-top: 0px;"> |
||||||
|
<div class="body"> |
||||||
|
{#UploadInfo#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="breadCrumbHolder module"> |
||||||
|
<div class="breadCrumb module"> |
||||||
|
<ul> |
||||||
|
<li class="firstB"><a href="index.php" title="{#MAIN_PAGE#}">{#MAIN_PAGE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&cp={$sess}">{#MODULES_SUB_TITLE#}</a></li> |
||||||
|
<li><a href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=1&cp={$sess}">{#ModName#}</a></li> |
||||||
|
<li>{#UploadProg#}</li> |
||||||
|
<li><strong class="code">{$gallery_title|escape}</strong></li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="widget"> |
||||||
|
<div class="head"> |
||||||
|
<h5>{#UploadProgT#}</h5> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=add&id={$smarty.request.id|escape}&cp={$sess}">{#AddnewImages#}</a></div> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=showimages&id={$smarty.request.id|escape}&cp={$sess}&compile=1">{#ImageView#}</a></div> |
||||||
|
<div class="num"><a class="basicNum" href="index.php?do=modules&action=modedit&mod=gallery&moduleaction=editgallery&id={$smarty.request.id|escape}&cp={$sess}">{#EditGallery#}</a></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="rowElem"> |
||||||
|
<div style="padding:12px;height:200px;overflow:auto;border:1px solid #ccc"> |
||||||
|
{foreach from=$images item=image}<img src="{$image}" align="left" style="margin:5px" />{/foreach} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="fix"></div> |
||||||
|
</div> |
||||||
|
|
@ -0,0 +1,131 @@ |
|||||||
|
<?php |
||||||
|
// HTTP headers for no cache etc |
||||||
|
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); |
||||||
|
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); |
||||||
|
header("Cache-Control: no-store, no-cache, must-revalidate"); |
||||||
|
header("Cache-Control: post-check=0, pre-check=0", false); |
||||||
|
header("Pragma: no-cache"); |
||||||
|
|
||||||
|
ob_start(); |
||||||
|
ob_implicit_flush(0); |
||||||
|
|
||||||
|
define('BASE_DIR', str_replace("\\", "/", dirname(dirname(dirname(__FILE__))))); |
||||||
|
|
||||||
|
require(BASE_DIR . '/inc/init.php'); |
||||||
|
|
||||||
|
if (!isset($_SESSION['user_id'])) |
||||||
|
{ |
||||||
|
header('Location:index.php'); |
||||||
|
exit; |
||||||
|
} |
||||||
|
|
||||||
|
// Settings |
||||||
|
$targetDir = BASE_DIR.'/'. UPLOAD_GALLERY_DIR .'/.uploader/'.$_SESSION['user_id']; |
||||||
|
|
||||||
|
$cleanupTargetDir = true; // Remove old files |
||||||
|
$maxFileAge = 5 * 3600; // Temp file age in seconds |
||||||
|
|
||||||
|
// 5 minutes execution time |
||||||
|
@set_time_limit(5 * 60); |
||||||
|
|
||||||
|
// Get parameters |
||||||
|
$chunk = isset($_REQUEST["chunk"]) ? intval($_REQUEST["chunk"]) : 0; |
||||||
|
$chunks = isset($_REQUEST["chunks"]) ? intval($_REQUEST["chunks"]) : 0; |
||||||
|
$fileName = isset($_REQUEST["name"]) ? $_REQUEST["name"] : ''; |
||||||
|
|
||||||
|
// Clean the fileName for security reasons |
||||||
|
$fileName = preg_replace('/[^\w\._]+/', '_', $fileName); |
||||||
|
|
||||||
|
// Make sure the fileName is unique but only if chunking is disabled |
||||||
|
if ($chunks < 2 && file_exists($targetDir . DIRECTORY_SEPARATOR . $fileName)) { |
||||||
|
$ext = strrpos($fileName, '.'); |
||||||
|
$fileName_a = substr($fileName, 0, $ext); |
||||||
|
$fileName_b = substr($fileName, $ext); |
||||||
|
|
||||||
|
$count = 1; |
||||||
|
while (file_exists($targetDir . DIRECTORY_SEPARATOR . $fileName_a . '_' . $count . $fileName_b)) |
||||||
|
$count++; |
||||||
|
|
||||||
|
$fileName = $fileName_a . '_' . $count . $fileName_b; |
||||||
|
} |
||||||
|
|
||||||
|
$filePath = $targetDir . DIRECTORY_SEPARATOR . $_FILES['file']['name']; |
||||||
|
|
||||||
|
// Create target dir |
||||||
|
if (!file_exists($targetDir)) |
||||||
|
@mkdir($targetDir,0777); |
||||||
|
|
||||||
|
// Remove old temp files |
||||||
|
if ($cleanupTargetDir && is_dir($targetDir) && ($dir = opendir($targetDir))) { |
||||||
|
while (($file = readdir($dir)) !== false) { |
||||||
|
$tmpfilePath = $targetDir . DIRECTORY_SEPARATOR . $file; |
||||||
|
|
||||||
|
// Remove temp file if it is older than the max age and is not the current file |
||||||
|
if (preg_match('/\.part$/', $file) && (filemtime($tmpfilePath) < time() - $maxFileAge) && ($tmpfilePath != "{$filePath}.part")) { |
||||||
|
@unlink($tmpfilePath); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
closedir($dir); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 100, "message": "Failed to open temp directory."}, "id" : "id"}'); |
||||||
|
|
||||||
|
|
||||||
|
// Look for the content type header |
||||||
|
if (isset($_SERVER["HTTP_CONTENT_TYPE"])) |
||||||
|
$contentType = $_SERVER["HTTP_CONTENT_TYPE"]; |
||||||
|
|
||||||
|
if (isset($_SERVER["CONTENT_TYPE"])) |
||||||
|
$contentType = $_SERVER["CONTENT_TYPE"]; |
||||||
|
|
||||||
|
// Handle non multipart uploads older WebKit versions didn't support multipart in HTML5 |
||||||
|
if (strpos($contentType, "multipart") !== false) { |
||||||
|
if (isset($_FILES['file']['tmp_name']) && is_uploaded_file($_FILES['file']['tmp_name'])) { |
||||||
|
// Open temp file |
||||||
|
$out = fopen("{$filePath}.part", $chunk == 0 ? "wb" : "ab"); |
||||||
|
if ($out) { |
||||||
|
// Read binary input stream and append it to temp file |
||||||
|
$in = fopen($_FILES['file']['tmp_name'], "rb"); |
||||||
|
|
||||||
|
if ($in) { |
||||||
|
while ($buff = fread($in, 4096)) |
||||||
|
fwrite($out, $buff); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}'); |
||||||
|
fclose($in); |
||||||
|
fclose($out); |
||||||
|
@unlink($_FILES['file']['tmp_name']); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}'); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 103, "message": "Failed to move uploaded file."}, "id" : "id"}'); |
||||||
|
} else { |
||||||
|
// Open temp file |
||||||
|
$out = fopen("{$filePath}.part", $chunk == 0 ? "wb" : "ab"); |
||||||
|
if ($out) { |
||||||
|
// Read binary input stream and append it to temp file |
||||||
|
$in = fopen("php://input", "rb"); |
||||||
|
|
||||||
|
if ($in) { |
||||||
|
while ($buff = fread($in, 4096)) |
||||||
|
fwrite($out, $buff); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 101, "message": "Failed to open input stream."}, "id" : "id"}'); |
||||||
|
|
||||||
|
fclose($in); |
||||||
|
fclose($out); |
||||||
|
} else |
||||||
|
die('{"jsonrpc" : "2.0", "error" : {"code": 102, "message": "Failed to open output stream."}, "id" : "id"}'); |
||||||
|
} |
||||||
|
|
||||||
|
// Check if file has been uploaded |
||||||
|
if (!$chunks || $chunk == $chunks - 1) { |
||||||
|
// Strip the temp .part suffix off |
||||||
|
rename("{$filePath}.part", $filePath); |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
// Return JSON-RPC response |
||||||
|
die('{"jsonrpc" : "2.0", "result" : null, "id" : "id"}'); |
||||||
|
|
||||||
|
?> |
Loading…
Reference in new issue