diff --git a/README.md b/README.md
index 62ac355..17b48b0 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,21 @@
-# banner
+### media
-Модуль Баннер Только для AVE.CMS ALT
\ No newline at end of file
+## Модуль Баннер v2.26.0
+
+### Модуль позволяет:
+
+ * Организовать удобное управление показами рекламных баннеров на вашем сайте.
+ * Для того, чтобы отобразить рекламный баннер, разместите системный тег [mod_banner:XXX] в нужном месте вашего шаблона сайта или содержимом документа.
+ * Идентификаторы системных тегов указаны в разделе - Управление категориями.
+ * Допустимые форматы рекламных баннеров: jpg, jpeg, png, gif, swf.
+
+
+### Changelog:
+
+04.09.2019 - версия 2.26.0 - адаптация для версии ave.cms 3.26
+
+25.09.2016 - Исправления (css + html) вывода пагинации страниц.
+
+03.06.2016 - Исправлен баг с неправильным формированием пути к изображению баннера, при размещении его на странице с сылкой типа site.ru/folder/link/
+
+03.06.2016 - добавлен атрибут style="width:100%" для изображения баннера, при использовании в адаптивной верстке.
\ No newline at end of file
diff --git a/class/banner.php b/class/banner.php
new file mode 100644
index 0000000..1c9c2b4
--- /dev/null
+++ b/class/banner.php
@@ -0,0 +1,447 @@
+ '$cur_hour') OR (ZStart > ZEnde AND (ZStart BETWEEN ZStart AND '$cur_hour' OR ZEnde BETWEEN '$cur_hour' AND ZEnde)))";
+ $and_category = (!empty($id) && is_numeric($id)) ? "AND KatId = '" . $id . "'" : '';
+
+ $num = $AVE_DB->Query("
+ SELECT Id
+ FROM " . PREFIX . "_modul_banners
+ WHERE Aktiv = '1'
+ AND (MaxKlicks = '0' OR (Klicks < MaxKlicks AND MaxKlicks != '0'))
+ AND (MaxViews = '0' OR (Views < MaxViews AND MaxViews != '0'))
+ " . $and_time . "
+ " . $and_category . "
+ ")->NumRows();
+
+ $zufall = ($num) ? rand(1,3) : 3;
+
+ $sql = $AVE_DB->Query("
+ SELECT
+ Id,
+ Bannertags,
+ Target,
+ Bannername,
+ BildAlt,
+ Width,
+ Height
+ FROM " . PREFIX . "_modul_banners
+ WHERE Aktiv = '1'
+ AND (MaxKlicks = '0' OR (Klicks < MaxKlicks AND MaxKlicks != '0'))
+ AND (MaxViews = '0' OR (Views < MaxViews AND MaxViews != '0'))
+ " . $and_time . "
+ " . $and_category . "
+ AND Gewicht <= '" . $zufall . "'
+ ");
+ $num = $sql->NumRows();
+
+ $banner_id = ($num == 1) ? 0 : rand(0, $num-1);
+
+ $sql->DataSeek($banner_id);
+ $banner = $sql->FetchAssocArray();
+
+ if(!empty($banner['Bannertags']))
+ {
+ if (stristr($banner['Bannertags'], '.swf') === false)
+ {
+ $output = ' ';
+ }
+ else
+ {
+ $output = '
';
+ $output .= '
';
+ $output .= ' ';
+ $output .= ' ';
+ $output .= ' ';
+ $output .= ' ';
+ $output .= ' ';
+ $output .= ' ';
+ $output .= '
';
+ }
+
+ if(!empty($banner['Id']))
+ {
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banners
+ SET Views = Views + 1
+ WHERE Id = '" . $banner['Id'] . "'
+ ");
+ }
+ }
+
+ echo $output;
+ }
+
+ function fetch_addclick($id) {
+ global $AVE_DB;
+
+ switch($_REQUEST['action']) {
+ case '':
+ case 'addclick':
+ $sql = $AVE_DB->Query("
+ SELECT BannerUrl
+ FROM " . PREFIX . "_modul_banners
+ WHERE Id = '" . $id . "'
+ LIMIT 1
+ ");
+ $banner_url = $sql->GetCell();
+ if(!empty($banner_url)) {
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banners
+ SET Klicks = Klicks + 1
+ WHERE Id = '" . $id . "'
+ ");
+ header('Location:' . $banner_url);
+ }
+
+ exit;
+ break;
+ }
+ }
+
+ function showBanner($tpl_dir) {
+ global $AVE_DB, $AVE_Template;
+
+ $limit = $this->_limit;
+ $sql = $AVE_DB->Query("SELECT Id FROM " . PREFIX . "_modul_banners");
+ $num = $sql->NumRows();
+
+ $seiten = ceil($num / $limit);
+ $start = get_current_page() * $limit - $limit;
+
+ $items = array();
+ $sql = $AVE_DB->Query("
+ SELECT *
+ FROM " . PREFIX . "_modul_banners
+ LIMIT " . $start . "," . $limit
+ );
+ while($row = $sql->FetchRow()) {
+ array_push($items, $row);
+ }
+
+ if($num > $limit)
+ {
+ $page_nav = ' {t} ';
+ $page_nav = get_pagination($seiten, 'page', $page_nav);
+ $AVE_Template->assign('page_nav', $page_nav);
+ }
+
+ $AVE_Template->assign('items', $items);
+ $AVE_Template->assign('mod_path', BANNER_DIR);
+ $AVE_Template->assign('kategs', $this->_showKategs());
+ $AVE_Template->assign('content', $AVE_Template->fetch($tpl_dir . 'banners.tpl'));
+ }
+
+ function editBanner($tpl_dir,$id) {
+ global $AVE_DB, $AVE_Template;
+
+ $sql = $AVE_DB->Query("
+ SELECT *
+ FROM " . PREFIX . "_modul_banners
+ WHERE Id = '" . $id . "'
+ ");
+ $row = $sql->FetchRow();
+
+ if (stristr(($row->Bannertags),'.swf') === false) $row->swf = false; else $row->swf = true;
+
+ if(@!is_writeable(BASE_DIR . '/modules/' . BANNER_DIR . '/files/')) {
+ $AVE_Template->assign('folder_protected', 1);
+ }
+
+ $AVE_Template->assign('item', $row);
+ $AVE_Template->assign('mod_path', BANNER_DIR);
+ $AVE_Template->assign('formaction', 'index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=quicksave&cp=' . SESSION . '&id=' . $_REQUEST['id'] . '&pop=1');
+ $AVE_Template->assign('kategs', $this->_showKategs());
+ $AVE_Template->assign('content', $AVE_Template->fetch($tpl_dir . 'form.tpl'));
+ }
+
+ function deleteBanner($id) {
+ global $AVE_DB;
+
+ $sql = $AVE_DB->Query("
+ SELECT
+ Bannertags,
+ Bannername
+ FROM " . PREFIX . "_modul_banners
+ WHERE Id = '" . $id . "'
+ ");
+ $row = $sql->FetchRow();
+
+ @unlink(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $row->Bannertags);
+ $AVE_DB->Query("
+ DELETE
+ FROM " . PREFIX . "_modul_banners
+ WHERE Id = '" . $id . "'
+ ");
+
+ reportLog($_SESSION['user_name'] . ' - удалил баннер (' . $row->Bannername . ')', 2, 2);
+
+ header('Location:index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=1&cp=' . SESSION);
+ exit;
+ }
+
+ function quickSave($id) {
+ global $AVE_DB, $config_vars;
+
+ if(!empty($_POST['del'])) {
+ $sql = $AVE_DB->Query("
+ SELECT Bannertags
+ FROM " . PREFIX . "_modul_banners
+ WHERE Id = '" . $id . "'
+ ");
+ $row = $sql->FetchRow();
+
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banners
+ SET Bannertags = ''
+ WHERE Id = '" . $id . "'
+ ");
+
+ @unlink(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $row->Bannertags);
+ }
+
+ if(!empty($_POST['Bannername'])) {
+ $d_name = strtolower($_FILES['New']['name']);
+ $d_name = str_replace(' ','', $d_name);
+ $d_tmp = $_FILES['New']['tmp_name'];
+
+ if(!empty($_FILES['New']['type'])) {
+ if(in_array($_FILES['New']['type'], $this->_allowed_files)) {
+ $d_name = preg_replace('/[^ ._a-z0-9-]/', '_', $d_name);
+ if(file_exists(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name)) $d_name = $this->_Zufall() . '__' . $d_name;
+
+ if(@move_uploaded_file($d_tmp, BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name)) {
+ @chmod(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name, 0777);
+ echo "";
+
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banners
+ SET Bannertags = '" . $d_name . "'
+ WHERE Id = '" . $id . "'
+ ");
+
+ reportLog($_SESSION['user_name'] . ' - заменил изображение баннера на (' . $d_name . ')', 2, 2);
+
+ } else {
+ echo "";
+ }
+
+ } else {
+ echo "";
+ }
+ }
+
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banners
+ SET
+ Bannername = '" . $_REQUEST['Bannername'] . "',
+ BannerUrl = '" . $_REQUEST['BannerUrl'] . "',
+ Gewicht = '" . $_REQUEST['Gewicht'] . "',
+ Views = '" . $_REQUEST['Anzeigen'] . "',
+ Klicks = '" . $_REQUEST['Klicks'] . "',
+ BildAlt = '" . $_REQUEST['BildAlt'] . "',
+ KatId = '" . $_REQUEST['KatId'] . "',
+ MaxKlicks = '" . $_REQUEST['MaxKlicks'] . "',
+ MaxViews = '" . $_REQUEST['MaxViews'] . "',
+ ZStart = '" . $_REQUEST['ZStart'] . "',
+ ZEnde = '" . $_REQUEST['ZEnde'] . "',
+ Aktiv = '" . $_REQUEST['Aktiv'] . "',
+ Target = '" . $_REQUEST['Target'] . "',
+ Width = '" . $_REQUEST['Width'] . "',
+ Height = '" . $_REQUEST['Height'] . "'
+ WHERE
+ Id = '" . $id . "'
+ ");
+ reportLog($_SESSION['user_name'] . ' - изменил параметры баннера (' . stripslashes($_REQUEST['Bannername']) . ')', 2, 2);
+ }
+
+ header('Location:index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=1&cp=' . SESSION);
+ exit;
+ }
+
+ function newBanner($tpl_dir) {
+ global $AVE_DB, $AVE_Template, $config_vars;
+
+ switch($_REQUEST['sub']) {
+ case '':
+ if(!@is_writeable(BASE_DIR . '/modules/' . BANNER_DIR . '/files/')) {
+ $AVE_Template->assign('folder_protected', 1);
+ }
+ $AVE_Template->assign('mod_path', BANNER_DIR);
+ $AVE_Template->assign('kategs', $this->_showKategs());
+ $AVE_Template->assign('formaction', 'index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=newbanner&sub=save&cp=' . SESSION . '&pop=1');
+ $AVE_Template->assign('content', $AVE_Template->fetch($tpl_dir . 'form.tpl'));
+ break;
+
+ case 'save':
+ if(!empty($_POST['Bannername'])) {
+ $file = '';
+
+ $d_name = strtolower($_FILES['New']['name']);
+ $d_name = str_replace(' ', '', $d_name);
+ $d_tmp = $_FILES['New']['tmp_name'];
+
+ if(!empty($_FILES['New']['type'])) {
+ if(in_array($_FILES['New']['type'], $this->_allowed_files)) {
+ $d_name = preg_replace('/[^ ._a-z0-9-]/', '_', $d_name);
+ if(file_exists(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name)) $d_name = $this->_Zufall() . '__' . $d_name;
+
+ if(@move_uploaded_file($d_tmp, BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name)) {
+ @chmod(BASE_DIR . '/modules/' . BANNER_DIR . '/files/' . $d_name, 0777);
+ echo "";
+ reportLog($_SESSION['user_name'] . ' - добавил изображение баннера (' . $d_name . ')', 2, 2);
+ $file = $d_name;
+ } else {
+ echo "";
+ }
+ } else {
+ echo "";
+ }
+ }
+
+ $AVE_DB->Query("
+ INSERT
+ INTO " . PREFIX . "_modul_banners
+ SET
+ KatId = '" . $_REQUEST['KatId'] . "',
+ Bannertags = '" . $file . "',
+ BannerUrl = '" . $_REQUEST['BannerUrl'] . "',
+ Gewicht = '" . $_REQUEST['Gewicht'] . "',
+ Bannername = '" . $_REQUEST['Bannername'] . "',
+ BildAlt = '" . $_REQUEST['BildAlt'] . "',
+ MaxKlicks = '" . $_REQUEST['MaxKlicks'] . "',
+ MaxViews = '" . $_REQUEST['MaxViews'] . "',
+ ZStart = '" . $_REQUEST['ZStart'] . "',
+ ZEnde = '" . $_REQUEST['ZEnde'] . "',
+ Aktiv = '" . $_REQUEST['Aktiv'] . "',
+ Target = '" . $_REQUEST['Target'] . "',
+ Width = '" . $_REQUEST['Width'] . "',
+ Height = '" . $_REQUEST['Height'] . "'
+ ");
+
+ reportLog($_SESSION['user_name'] . ' - добавил новый баннер (' . stripslashes($_REQUEST['Bannername']) . ')', 2, 2);
+ }
+ header('Location:index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=1&cp=' . SESSION);
+ exit;
+ }
+ }
+
+ function bannerKategs($tpl_dir) {
+ global $AVE_DB, $AVE_Template;
+
+ switch($_REQUEST['sub']) {
+ case '' :
+ $items = array();
+ $sql = $AVE_DB->Query("SELECT * FROM " . PREFIX . "_modul_banner_categories");
+ while($row = $sql->FetchRow()) {
+ array_push($items, $row);
+ }
+ $AVE_Template->assign('items', $items);
+ $AVE_Template->assign('mod_path', BANNER_DIR);
+ $AVE_Template->assign('kategs', $this->_showKategs());
+ $AVE_Template->assign('content', $AVE_Template->fetch($tpl_dir . 'kategs.tpl'));
+ break;
+
+ case 'save' :
+ foreach($_POST['KatName'] as $id => $kateg) {
+ if(!empty($kateg)) {
+ $AVE_DB->Query("
+ UPDATE " . PREFIX . "_modul_banner_categories
+ SET KatName = '" . $kateg . "'
+ WHERE Id = '" . $id . "'
+ ");
+ }
+ }
+
+ foreach($_POST['del'] as $id => $kateg) {
+ $AVE_DB->Query("
+ DELETE
+ FROM " . PREFIX . "_modul_banners
+ WHERE KatId = '" . $id . "'
+ ");
+ $AVE_DB->Query("
+ DELETE
+ FROM " . PREFIX . "_modul_banner_categories
+ WHERE Id = '" . $id . "'
+ ");
+
+ reportLog($_SESSION['user_name'] . ' - удалил категорию баннеров (' . $id . ')', 2, 2);
+ }
+
+ header('Location:index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=kategs&cp=' . SESSION);
+ break;
+
+ case 'new' :
+ if(!empty($_REQUEST['KatName'])) {
+ $sql = $AVE_DB->Query("
+ INSERT
+ INTO " . PREFIX . "_modul_banner_categories
+ SET KatName = '" . $_REQUEST['KatName'] . "'
+ ");
+
+ reportLog($_SESSION['user_name'] . ' - добавил новую категорию (' . stripslashes($_REQUEST['KatName']) . ')', 2, 2);
+ }
+
+ header('Location:index.php?do=modules&action=modedit&mod=' . BANNER_DIR . '&moduleaction=kategs&cp=' . SESSION);
+ break;
+ }
+ }
+
+/**
+ * ВНУТРЕННИЕ МЕТОДЫ
+ */
+
+ function _Zufall() {
+ $zufall = rand(1000, 99999);
+ return $zufall;
+ }
+
+ function _showKategs() {
+ global $AVE_DB;
+
+ $kategs = array();
+ $sql = $AVE_DB->Query("SELECT * FROM " . PREFIX . "_modul_banner_categories");
+ while($row = $sql->FetchRow()) {
+ array_push($kategs, $row);
+ }
+
+ return $kategs;
+ }
+}
+?>
diff --git a/files/index.php b/files/index.php
new file mode 100644
index 0000000..4ca25aa
--- /dev/null
+++ b/files/index.php
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/files/media2_ave.jpg b/files/media2_ave.jpg
new file mode 100644
index 0000000..7120197
Binary files /dev/null and b/files/media2_ave.jpg differ
diff --git a/files/media_gitget.jpg b/files/media_gitget.jpg
new file mode 100644
index 0000000..9e826ff
Binary files /dev/null and b/files/media_gitget.jpg differ
diff --git a/index.php b/index.php
new file mode 100644
index 0000000..4ca25aa
--- /dev/null
+++ b/index.php
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/info.php b/info.php
new file mode 100644
index 0000000..7b2d5cf
--- /dev/null
+++ b/info.php
@@ -0,0 +1,20 @@
+ 'media',
+ 'ModuleVersion' => '2.26.0',
+ 'ModuleAutor' => 'AVE.cms Team',
+ 'ModuleCopyright' => '© 2007-' . date('Y') . ' AVE.cms',
+ 'ModuleStatus' => 1,
+ 'ModuleIsFunction' => 1,
+ 'ModuleTemplate' => 0,
+ 'ModuleAdminEdit' => 1,
+ 'ModuleFunction' => 'mod_banner',
+ 'ModuleTag' => '[mod_banner:XXX]',
+ 'ModuleTagLink' => null,
+ 'ModuleAveTag' => '#\\\[mod_banner:(\\\d+)]#',
+ 'ModulePHPTag' => ""
+ );
+?>
\ No newline at end of file
diff --git a/lang/index.php b/lang/index.php
new file mode 100644
index 0000000..4ca25aa
--- /dev/null
+++ b/lang/index.php
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/lang/ru.txt b/lang/ru.txt
new file mode 100644
index 0000000..caa4c87
--- /dev/null
+++ b/lang/ru.txt
@@ -0,0 +1,79 @@
+[name]
+MODULE_NAME = "Баннер"
+MODULE_DESCRIPTION = "Данный модуль позволяет организовать удобное управление показами рекламных баннеров на вашем сайте. Для того, чтобы отобразить рекламный баннер, разместите системный тег [mod_banner:XXX] в нужном месте вашего шаблона сайта или содержимом документа. Допустимые форматы рекламных баннеров: jpg, jpeg, png, gif, swf"
+
+[module]
+BANNER_MODULE_NAME = "Управление модулем баннер"
+MODULE_WELCOME = "Добро пожаловать в административный раздел модуля!"
+MODULE_WELCOME_CAT = "Административный раздел управления категориями."
+BANNER_SHOW_ALL = "Список баннеров"
+BANNER_BANNER = "Баннер"
+BANNER_NEW_LINK = "Добавить новый баннер"
+BANNER_CATEG_LINK = "Управление категориями"
+BANNER_NAME_TABLE = "Название баннера"
+BANNER_FILE_TABLE = "Файл изображения"
+BANNER_INCATEG_TABLE = "В категории"
+BANNER_SHOW_TABLE = "Время показа"
+BANNER_HITS_TABLE = "Переходов/Максимум"
+BANNER_VIEWS_TABLE = "Показов/Максимум"
+BANNER_ACTIONS = "Действия"
+BANNER_NOT_ACTIVE = "Баннер неактивен. Возможно, значение количества показов/переходов достигло максимального значения."
+BANNER_IS_ACTIVE = "Баннер активен"
+BANNER_EDIT_LINK = "Редактировать параметры баннера"
+BANNER_VIEW_LINK = "Просмотр баннера"
+BANNER_DELETE_LINK = "Удалить данный баннер"
+BANNER_DELETE_CONFIRM = "Вы уверены, что хотите удалить этот баннер?"
+BANNER_CATEGORY_TAG = "Системный тег"
+BANNER_CATEGORY_NAME = "Название категории"
+BANNER_MARK_DELETE = "Отметить для удаления"
+BANNER_BUTTON_SAVE = "Сохранить изменения"
+BANNER_BUTTON_ADD = "Добавить категорию"
+BANNER_CATEGORY_NEW = "Создание новой категории"
+BANNER_CATEGORY = "Название категории:"
+BANNER_ENTER_NAME = "Пожалуйста, укажите название категории"
+BANNER_PLEASE_NAME = "Пожалуйста, укажите название баннера"
+BANNER_NEW_CREATE = "Добавление нового баннера"
+BANNER_EDIT = "Редактирование баннера"
+BANNER_EDIT_INFO = "В данном разделе вы можете отредактировать параметры баннера, а также сменить текущее изображение на новое. Допустимые форматы файлов: jpg, jpeg, png, gif, swf"
+BANNER_NEW_INFO = "В данном разделе вы можете добавить новый баннер, установить количество и время показов баннера. Допустимые форматы файлов: jpg, jpeg, png, gif, swf"
+BANNER_STATUS = "Активировать баннер?"
+BANNER_NAME_FORM = "Название баннера:"
+BANNER_CATEGORY_FORM = "Относится к категории:"
+BANNER_TARGET_URL = "Адрес для перехода (URL):"
+BANNER_IMAGE_SELECT = "Выберите изображение баннера:"
+BANNER_ALT_TEXT = "Текст подсказки при наведении:"
+BANNER_PRIOR = "Приоритет показов:"
+BANNER_PRIOR_DESC = "(более высокий приоритет, отображает баннер чаще остальных)"
+BANNER_VIEWS_MAX = "Максимум показов:"
+BANNER_VIEWS = "Количество показов:"
+BANNER_VIEWS_INFO = "(укажите максимальное количество показов, после которых баннер станет неактивным)"
+BANNER_CLICKS = "Максимум переходов:"
+BANNER_CLICKS_INFO = "(укажите максимальное количество переходов, после которых баннер станет неактивным)"
+BANNER_UNLIMIT = "0 - неограниченно"
+BANNER_HOUR_START = "Начало показов:"
+BANNER_START_INFO = "(укажите, с какого часа должен начаться показ баннера)"
+BANNER_START_INFO2 = "0 - круглосуточно"
+BANNER_HOUR_END = "Конец показов:"
+BANNER_END_INFO = "(укажите, до какого часа должен быть показ баннера)"
+BANNER_END_INFO2 = "0 - круглосуточно"
+BANNER_NOT_WRITABLE = "Ошибка! Не возможно добавить баннер. Папка "/modules/banner/banner/" не имеет прав на запись. Пожалуйста, установите права CHMOD 777, используя Ваш FTP-клиент."
+BANNER_NOT_WRITABLE2 = "Ошибка. Не возможно добавить баннер. Папка "/modules/banner/banner/" не имеет прав на запись. Пожалуйста, установите права CHMOD 777, используя ваш FTP-клиент."
+BANNER_BUTTON_NEW = "Добавить баннер"
+BANNER_OLD_IMAGE = "Текущее изображение баннера:"
+BANNER_CHANGE_ONNEW = "Выберите новое изображение:"
+BANNER_OLD_DELETE = "Удалить текущее изображение:"
+BANNER_VIEW_RESET = "Текущее количество показов:"
+BANNER_CLICK_RESET = "Текущее количество переходов:"
+BANNER_IS_UPLOADED = "Баннер успешно добавлен"
+BANNER_NO_UPLOADED = "Баннер не загружен"
+BANNER_WRONG_TYPE = "Баннер не загружен. Данный тип файла запрещен."
+BANNER_TARGET_TYPE = "Открывать в:"
+BANNER_OPEN_IN_NEW = "В новом окне"
+BANNER_OPEN_IN_THIS = "В текущем окне"
+BANNER_WIDTH_SWF = "Ширина:"
+BANNER_HEIGHT_SWF = "Высота:"
+BANNER_FOR_SWF = "(для swf баннера)"
+BANNER_MOD_ALLOWS = "Модуль позволяет:"
+BANNER_MOD_ALLOWS_A = "Организовать удобное управление показами рекламных баннеров на вашем сайте."
+BANNER_MOD_ALLOWS_B = "Для того, чтобы отобразить рекламный баннер, разместите системный тег [mod_banner:XXX] в нужном месте вашего шаблона сайта или содержимом документа. Идентификаторы тегов указаны в разделе - Управление категориями."
+BANNER_MOD_ALLOWS_C = "Допустимые форматы рекламных баннеров: jpg, jpeg, png, gif, swf."
diff --git a/module.php b/module.php
new file mode 100644
index 0000000..48d8751
--- /dev/null
+++ b/module.php
@@ -0,0 +1,84 @@
+displayBanner(stripslashes($banner_id));
+}
+
+if (isset($_REQUEST['module']) && $_REQUEST['module'] == BANNER_DIR)
+{
+ if (is_numeric($_REQUEST['id']))
+ {
+ require_once(BASE_DIR . '/modules/' . BANNER_DIR . '/class/banner.php');
+ $banner = new ModulBanner;
+ $banner->fetch_addclick($_REQUEST['id']);
+ }
+}
+
+if (defined('ACP') && !empty($_REQUEST['moduleaction']))
+{
+ global $AVE_Template;
+
+ require_once(BASE_DIR . '/modules/' . BANNER_DIR . '/class/banner.php');
+
+ $tpl_dir = BASE_DIR . '/modules/' . BANNER_DIR . '/templates/';
+ $lang_file = BASE_DIR . '/modules/' . BANNER_DIR . '/lang/' . $_SESSION['user_language'] . '.txt';
+ $AVE_Template->config_load($lang_file, 'module');
+
+ $banner = new ModulBanner;
+
+ $AVE_Template->config_load($lang_file, 'module');
+ $config_vars = $AVE_Template->get_config_vars();
+ $AVE_Template->assign('config_vars', $config_vars);
+
+ switch($_REQUEST['moduleaction'])
+ {
+ case '1':
+ $banner->showBanner($tpl_dir);
+ break;
+
+ case 'quicksave':
+ $banner->quickSave($_REQUEST['id']);
+ break;
+
+ case 'kategs':
+ $banner->bannerKategs($tpl_dir);
+ break;
+
+ case 'editbanner':
+ $banner->editBanner($tpl_dir, $_REQUEST['id']);
+ break;
+
+ case 'new':
+ case 'newbanner':
+ $banner->newBanner($tpl_dir);
+ break;
+
+ case 'delbanner':
+ $banner->deleteBanner($_REQUEST['id']);
+ break;
+ }
+}
+
+?>
\ No newline at end of file
diff --git a/sql.php b/sql.php
new file mode 100644
index 0000000..8388ab8
--- /dev/null
+++ b/sql.php
@@ -0,0 +1,57 @@
+
\ No newline at end of file
diff --git a/templates/banners.tpl b/templates/banners.tpl
new file mode 100644
index 0000000..b9e9cc9
--- /dev/null
+++ b/templates/banners.tpl
@@ -0,0 +1,80 @@
+
+
{#BANNER_MODULE_NAME#}
+
+
+
+
+
+
+ {foreach from=$items item=item}
+ {if ($item->Aktiv != 1) || ($item->Bannertags=='') || ($item->Klicks >= $item->MaxKlicks && $item->MaxKlicks != 0) || ($item->Views >= $item->MaxViews && $item->MaxViews != 0)}
+ {assign var=active value=0}
+ {else}
+ {assign var=active value=1}
+ {/if}
+
+
+ {if $active!=1}
+
+ {else}
+
+ {/if}
+
+ {$item->Bannername}
+ {$item->Bannertags}
+
+ {foreach from=$kategs item=k}
+ {if $k->Id==$item->KatId}{$k->KatName}{/if}
+ {/foreach}
+
+ {if $item->ZStart<10}0{/if}{$item->ZStart}:00 - {if $item->ZEnde<10}0{/if}{$item->ZEnde}:00
+ {$item->Klicks} / {if $item->MaxKlicks==0}~{else}{$item->MaxKlicks}{/if}
+ {$item->Views} / {if $item->MaxViews==0}~{else}{$item->MaxViews}{/if}
+
+
+
+
+
+
+
+ {/foreach}
+
+{if $page_nav}
+
+{/if}
\ No newline at end of file
diff --git a/templates/form.tpl b/templates/form.tpl
new file mode 100644
index 0000000..7026232
--- /dev/null
+++ b/templates/form.tpl
@@ -0,0 +1,167 @@
+
+
+
{if $smarty.request.moduleaction!='newbanner'}{#BANNER_EDIT#}{else}{#BANNER_NEW_CREATE#}{/if}
+
+
+{if $folder_protected==1 && $smarty.request.moduleaction=='newbanner'}
+ {#BANNER_NOT_WRITABLE#}
+{else}
+
+
+{/if}
+
\ No newline at end of file
diff --git a/templates/index.php b/templates/index.php
new file mode 100644
index 0000000..4ca25aa
--- /dev/null
+++ b/templates/index.php
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/templates/kategs.tpl b/templates/kategs.tpl
new file mode 100644
index 0000000..3638ba6
--- /dev/null
+++ b/templates/kategs.tpl
@@ -0,0 +1,81 @@
+
+
+
{#BANNER_MODULE_NAME#}
+
+
+
+
+
+
+
\ No newline at end of file