From 3323b45943b99e914f4669187a912e11682a2e52 Mon Sep 17 00:00:00 2001 From: "M@d D3n" Date: Thu, 21 Sep 2017 09:50:14 +0300 Subject: [PATCH] Last fixes --- .htaccess | 15 +- admin/lang/bg/blocks.txt | 2 +- admin/lang/bg/docs.txt | 17 +- admin/lang/bg/request.txt | 25 +- admin/lang/bg/sysblocks.txt | 11 +- admin/templates/documents/docs_simple.tpl | 2 +- admin/templates/documents/form.tpl | 8 +- admin/templates/js/filemanager.js | 4 +- admin/templates/js/filemanager_template.js | 2 +- admin/templates/noperm.tpl | 2 +- admin/templates/settings/settings_case.tpl | 4 +- class/class.core.php | 2 +- class/class.docs.php | 827 ++- class/class.settings.php | 88 +- class/class.thumbnail.php | 52 +- fields/image_mega/field.php | 4 +- fields/image_multi/field.php | 2 +- fields/image_multi_new_3inputs/field.php | 2 +- fields/image_single/field.php | 4 +- functions/func.block.php | 2 +- functions/func.common.php | 1825 +++--- functions/func.parserequest.php | 2 +- functions/func.sysblock.php | 9 +- functions/func.thumbnails.php | 147 +- inc/config.php | 79 +- inc/init.php | 154 +- inc/sitemap.php | 85 +- inc/thumb.php | 187 +- index.php | 58 +- install/index.php | 2 +- .../codemirror/codemirror_connect.tpl | 1 + lib/redactor/elfinder/css/elfinder.full.css | 51 +- lib/redactor/elfinder/css/elfinder.min.css | 4 +- lib/redactor/elfinder/css/theme.css | 4 + lib/redactor/elfinder/img/edit_aceeditor.png | Bin 0 -> 532 bytes lib/redactor/elfinder/img/edit_ckeditor.png | Bin 0 -> 770 bytes lib/redactor/elfinder/img/edit_codemirror.png | Bin 0 -> 550 bytes .../elfinder/img/edit_creativecloud.png | Bin 0 -> 662 bytes .../elfinder/img/edit_pixlreditor.png | Bin 0 -> 993 bytes .../elfinder/img/edit_pixlrexpress.png | Bin 0 -> 979 bytes lib/redactor/elfinder/img/edit_simplemde.png | Bin 0 -> 398 bytes lib/redactor/elfinder/img/edit_tinymce.png | Bin 0 -> 242 bytes lib/redactor/elfinder/img/titleBg.png | Bin 296 -> 0 bytes lib/redactor/elfinder/img/toolbar.png | Bin 17802 -> 19206 bytes .../elfinder/img/volume_icon_trash.png | Bin 0 -> 768 bytes lib/redactor/elfinder/js/elfinder.full.js | 5072 +++++++++++++---- lib/redactor/elfinder/js/elfinder.min.js | 27 +- .../elfinder/js/extras/editors.default.js | 1027 ++++ .../elfinder/js/i18n/elfinder.LANG.js | 43 +- lib/redactor/elfinder/js/i18n/elfinder.cs.js | 77 +- lib/redactor/elfinder/js/i18n/elfinder.id.js | 831 +-- lib/redactor/elfinder/js/i18n/elfinder.jp.js | 219 +- lib/redactor/elfinder/js/i18n/elfinder.pl.js | 111 +- lib/redactor/elfinder/js/i18n/elfinder.ru.js | 2 + lib/redactor/elfinder/js/i18n/elfinder.sk.js | 91 +- lib/redactor/elfinder/js/i18n/help/en.html | 10 + lib/redactor/elfinder/js/i18n/help/jp.html | 10 + lib/redactor/elfinder/js/i18n/help/ru.html | 10 + .../elfinder/js/proxy/elFinderSupportVer1.js | 8 +- lib/redactor/elfinder/php/.tmp/.htaccess | 2 + .../elfinder/{inc => php}/MySQLStorage.sql | 0 .../elfinder/{inc => php}/autoload.php | 1 + .../{inc => php}/connector.minimal.php-dist | 33 +- .../elfinder/{inc => php}/connector.php | 21 +- .../elfinder/{inc => php}/connector.php-dist | 33 +- .../{inc => php}/connector_template.php | 20 +- .../elfinder/{inc => php}/elFinder.class.php | 327 +- .../{inc => php}/elFinderConnector.class.php | 5 +- .../elFinderFlysystemGoogleDriveNetmount.php | 0 .../elfinder/{inc => php}/elFinderPlugin.php | 0 .../elfinder/{inc => php}/elFinderSession.php | 9 +- .../{inc => php}/elFinderSessionInterface.php | 0 .../{inc => php}/elFinderVolumeBox.class.php | 17 +- .../elFinderVolumeDriver.class.php | 531 +- .../elFinderVolumeDropbox.class.php | 0 .../elFinderVolumeDropbox2.class.php | 49 +- .../{inc => php}/elFinderVolumeFTP.class.php | 87 +- .../elFinderVolumeGoogleDrive.class.php | 19 +- .../elFinderVolumeGroup.class.php | 2 + .../elFinderVolumeLocalFileSystem.class.php | 13 +- .../elFinderVolumeMySQL.class.php | 8 +- .../elFinderVolumeOneDrive.class.php | 15 +- .../php/elFinderVolumeTrash.class.php | 50 + .../elfinder/{inc => php}/libs/GdBmp.php | 0 lib/redactor/elfinder/{inc => php}/mime.types | 0 .../plugins/AutoResize/plugin.php | 2 +- .../plugins/AutoRotate/plugin.php | 2 +- .../plugins/Normalizer/plugin.php | 14 +- .../{inc => php}/plugins/Sanitizer/plugin.php | 9 +- .../{inc => php}/plugins/Watermark/logo.png | Bin .../{inc => php}/plugins/Watermark/plugin.php | 2 +- .../elfinder/{inc => php}/resources/video.png | Bin modules/index.php | 12 +- 93 files changed, 8740 insertions(+), 3764 deletions(-) create mode 100644 lib/redactor/elfinder/img/edit_aceeditor.png create mode 100644 lib/redactor/elfinder/img/edit_ckeditor.png create mode 100644 lib/redactor/elfinder/img/edit_codemirror.png create mode 100644 lib/redactor/elfinder/img/edit_creativecloud.png create mode 100644 lib/redactor/elfinder/img/edit_pixlreditor.png create mode 100644 lib/redactor/elfinder/img/edit_pixlrexpress.png create mode 100644 lib/redactor/elfinder/img/edit_simplemde.png create mode 100644 lib/redactor/elfinder/img/edit_tinymce.png delete mode 100644 lib/redactor/elfinder/img/titleBg.png create mode 100644 lib/redactor/elfinder/img/volume_icon_trash.png create mode 100644 lib/redactor/elfinder/js/extras/editors.default.js create mode 100644 lib/redactor/elfinder/js/i18n/help/en.html create mode 100644 lib/redactor/elfinder/js/i18n/help/jp.html create mode 100644 lib/redactor/elfinder/js/i18n/help/ru.html create mode 100644 lib/redactor/elfinder/php/.tmp/.htaccess rename lib/redactor/elfinder/{inc => php}/MySQLStorage.sql (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/autoload.php (96%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/connector.minimal.php-dist (72%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/connector.php (85%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/connector.php-dist (72%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/connector_template.php (86%) rename lib/redactor/elfinder/{inc => php}/elFinder.class.php (92%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderConnector.class.php (98%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderFlysystemGoogleDriveNetmount.php (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderPlugin.php (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderSession.php (95%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderSessionInterface.php (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeBox.class.php (99%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeDriver.class.php (92%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeDropbox.class.php (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeDropbox2.class.php (96%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeFTP.class.php (96%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeGoogleDrive.class.php (99%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeGroup.class.php (98%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeLocalFileSystem.class.php (98%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeMySQL.class.php (99%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/elFinderVolumeOneDrive.class.php (99%) mode change 100755 => 100644 create mode 100644 lib/redactor/elfinder/php/elFinderVolumeTrash.class.php rename lib/redactor/elfinder/{inc => php}/libs/GdBmp.php (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/mime.types (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/AutoResize/plugin.php (98%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/AutoRotate/plugin.php (97%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/Normalizer/plugin.php (88%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/Sanitizer/plugin.php (91%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/Watermark/logo.png (100%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/plugins/Watermark/plugin.php (99%) mode change 100755 => 100644 rename lib/redactor/elfinder/{inc => php}/resources/video.png (100%) mode change 100755 => 100644 diff --git a/.htaccess b/.htaccess index b88db2b..1f3a113 100644 --- a/.htaccess +++ b/.htaccess @@ -265,7 +265,6 @@ AddDefaultCharset utf-8 ExpiresByType image/svg+xml "access plus 1 month" - Order allow,deny @@ -274,6 +273,16 @@ AddDefaultCharset utf-8 SecFilterScanPOST Off +# ------------------------------------------------------------------------------ +# | mod_deflate.c | +# ------------------------------------------------------------------------------ + + + + SetOutputFilter DEFLATE + + + # ------------------------------------------------------------------------------ # | Rewrite engine | # ------------------------------------------------------------------------------ @@ -320,6 +329,10 @@ AddDefaultCharset utf-8 RewriteRule \.(ico)$ - [NC,L] + # If-Modified-Since + RewriteRule .* - [E=HTTP_IF_MODIFIED_SINCE:%{HTTP:If-Modified-Since}] + RewriteRule .* - [E=HTTP_IF_NONE_MATCH:%{HTTP:If-None-Match}] + RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d diff --git a/admin/lang/bg/blocks.txt b/admin/lang/bg/blocks.txt index 56d123e..f2fa3fd 100644 --- a/admin/lang/bg/blocks.txt +++ b/admin/lang/bg/blocks.txt @@ -66,4 +66,4 @@ BLOCK_ALIAS = "Алиас" BLOCK_I = "Опционално. Алиасът позволява да се използва лесно запомнящсе таг [tag:BLOCK:alias] [tag:BLOCK:id]. Алиасът не може да бъде число, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа и трябва да бъде уникален в пределите на блоковете." BLOCK_ACCEPT = "Этот алиас можно использовать" BLOCK_ER_SYN = "Грешен алиас!
Алиасът не трябва да е число, да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа" -BLOCK_ER_EXISTS ="Грешен алиас!
Този алиас вече е използван в друга контактна форма" \ No newline at end of file +BLOCK_ER_EXISTS ="Грешен алиас!
Този алиас вече е използван в друг визуален блок" \ No newline at end of file diff --git a/admin/lang/bg/docs.txt b/admin/lang/bg/docs.txt index 1db615f..b4ac123 100644 --- a/admin/lang/bg/docs.txt +++ b/admin/lang/bg/docs.txt @@ -283,4 +283,19 @@ DOC_SEARCH_FIELD_LIKE = "Съдържа" DOC_SEARCH_FIELD_EQ = "Равно на" DOC_SEARCH_FIELD_TEXT = "Стойност" DOC_TEMPLATE_DEFAULT = "Използвай по подразбиране" -DOC_SHOW_LANG = "Покажи" \ No newline at end of file +DOC_SHOW_LANG = "Покажи" + +// 3.2 +DOC_TABS_META = "Meta данни" +DOC_TABS_URL = "URL на документа" +DOC_TABS_DATE = "Дата на публикация" +DOC_TABS_OTHER = "Други параметри" + +DOC_WITHOUT_TITLE = "Документ без наименование" +DOC_SAVE_ADD = "Добавил" +DOC_SAVE_EDIT = "Редактирал" +DOC_SAVE_LOG_DOC = " документ" + +DOC_LANG = "Език" +DOC_LANG_ID = "Език на документа:" +DOC_LANG_SELECT = "Изберете език" \ No newline at end of file diff --git a/admin/lang/bg/request.txt b/admin/lang/bg/request.txt index 57b2b7d..33a9e76 100644 --- a/admin/lang/bg/request.txt +++ b/admin/lang/bg/request.txt @@ -180,12 +180,21 @@ REQUEST_REPORT_ERR_RUBRIC= "Не е избрана рубрика" REQUEST_BY_PARENT = "Родителски документ" REQUEST_SHOW_STAT = "Покажи статистиката" -// v 3.2 -NAVI_ALIAS = "Алиас" -NAVI_I = "Опционално. Алиасът позволява да се използва лесно запомнящсе таг [tag:sysblock:alias] вместо [tag:sysblock:id]. Алиасът не може да бъде чосло, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа и трябва да бъде уникален в пределите на модула." -NAVI_ACCEPT = "Този алиас можр да се използва" -NAVI_ER_SYN = "Грешен алиас!
Алиасът не трябва да е число, да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа" -NAVI_ER_EXISTS = "Грешен алиас!
Този алиас вече е използван в друга контактна форма" -REQUEST_HEADER_EXTERNAL = "Външно обръщание +// v 3.1.9 +REQUEST_ALIAS = "Алиас" +REQUEST_I = "Опционално. Алиасът позволява да се използва лесно запомнящсе таг [tag:sysblock:alias] вместо [tag:sysblock:id]. Алиасът не може да бъде чосло, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа и трябва да бъде уникален в пределите на модула." +REQUEST_ACCEPT = "Този алиас можр да се използва" +REQUEST_ER_SYN = "Грешен алиас!
Алиасът не трябва да е число, да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа" +REQUEST_ER_EXISTS = "Грешен алиас!
Този алиас вече е използван за друга заявка" +REQUEST_HEADER_EXTERNAL = "Външно обръщание" REQUEST_EXTERNAL = "Разреши външно обръщение" -REQUEST_ONLY_AJAX = "Изпълнение само чрез Ajax" \ No newline at end of file +REQUEST_ONLY_AJAX = "Изпълнение само чрез Ajax" + +// v 3.2 +REQUEST_PAGINATION = "Постранична навигация" +REQUEST_NAVI_TPL = "Шаблон за постранична навигация" +REQUEST_OTHER = "Още" +REQUEST_SHOW_SQL = "Покажи SQL заявката" +REQUEST_DOC_ON_PAGE = "Брой елементи на заявката на страница" +REQUEST_PAGES_CURENT = "Номер страница" +REQUEST_PAGES_TOTAL = "Общ брой страници" \ No newline at end of file diff --git a/admin/lang/bg/sysblocks.txt b/admin/lang/bg/sysblocks.txt index 1d69d89..de7d685 100644 --- a/admin/lang/bg/sysblocks.txt +++ b/admin/lang/bg/sysblocks.txt @@ -69,8 +69,9 @@ SYSBLOCK_ERROR = "Грешка" SYSBLOCK_SUCCESS = "Изпълнено" // v 3.2 -NAVI_ALIAS = "Алиас" -NAVI_I = "Опционално. Алиасът позволява да се използва лесно запомнящсе таг [tag:sysblock:alias] вместо [tag:sysblock:id]. Алиасът не може да бъде чосло, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа и трябва да бъде уникален в пределите на модула." -NAVI_ACCEPT = "Този алиас можр да се използва" -NAVI_ER_SYN = "Грешен алиас!
Алиасът не трябва да е число, да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа" -NAVI_ER_EXISTS = "Грешен алиас!
Този алиас вече е използван в друга контактна форма \ No newline at end of file +SYSBLOCK_DESCRIPTION = "Кратко описание" +SYSBLOCK_ALIAS = "Алиас" +SYSBLOCK_I = "Опционално. Алиасът позволява да се използва лесно запомнящсе таг [tag:sysblock:alias] вместо [tag:sysblock:id]. Алиасът не може да бъде чосло, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа и трябва да бъде уникален в пределите на модула." +SYSBLOCK_ACCEPT = "Този алиас може да се използва" +SYSBLOCK_ER_SYN = "Грешен алиас!
Алиасът не трябва да е число, може да съдържа само цифри, латински букви, долна черта, тире и е с дължина не-повече от 20 символа" +SYSBLOCK_ER_EXISTS = "Грешен алиас!
Този алиас вече е използван в друг системен блок" \ No newline at end of file diff --git a/admin/templates/documents/docs_simple.tpl b/admin/templates/documents/docs_simple.tpl index 7201b92..4080bc7 100644 --- a/admin/templates/documents/docs_simple.tpl +++ b/admin/templates/documents/docs_simple.tpl @@ -96,7 +96,7 @@ function insertLinkCK(data) {ldelim} {elseif $smarty.request.selecturl == 1} {elseif $smarty.request.alias == 1} - + {elseif $smarty.request.function == 1} {else} diff --git a/admin/templates/documents/form.tpl b/admin/templates/documents/form.tpl index a678cb1..8b18631 100755 --- a/admin/templates/documents/form.tpl +++ b/admin/templates/documents/form.tpl @@ -23,7 +23,7 @@ "; } else - { - $message = $AVE_Template->get_config_vars('DOCUMENT_SAVED'); - $header = $AVE_Template->get_config_vars('DOC_REV_SUCCESS'); - $theme = 'accept'; - echo json_encode(array('message' => $message, 'header' => $header, 'theme' => $theme)); - exit; - } + { + $message = $AVE_Template->get_config_vars('DOCUMENT_SAVED'); + $header = $AVE_Template->get_config_vars('DOC_REV_SUCCESS'); + $theme = 'accept'; + echo json_encode(array('message' => $message, 'header' => $header, 'theme' => $theme)); + exit; + } } else { @@ -2013,14 +2067,14 @@ class AVE_Document { header('Location:index.php?do=docs&action=after&document_id=' . $document_id . '&rubric_id=' . $row->rubric_id . '&cp=' . SESSION); } - else - { - $message = $AVE_Template->get_config_vars('DOCUMENT_SAVED'); - $header = $AVE_Template->get_config_vars('DOC_REV_SUCCESS'); - $theme = 'accept'; - echo json_encode(array('message' => $message, 'header' => $header, 'theme' => $theme)); - exit; - } + else + { + $message = $AVE_Template->get_config_vars('DOCUMENT_SAVED'); + $header = $AVE_Template->get_config_vars('DOC_REV_SUCCESS'); + $theme = 'accept'; + echo json_encode(array('message' => $message, 'header' => $header, 'theme' => $theme)); + exit; + } } exit; @@ -2436,8 +2490,10 @@ class AVE_Document // Выполняем запрос к БД на получение данных о документе $document = $AVE_DB->Query(" SELECT * - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' ")->FetchRow(); $show = true; @@ -2479,9 +2535,9 @@ class AVE_Document $document->dontChangeStatus = 0; } else - { - $document->dontChangeStatus = 1; - } + { + $document->dontChangeStatus = 1; + } // Выполняем запрос к БД и получаем все данные для полей документа $sql = $AVE_DB->Query(" @@ -2512,15 +2568,16 @@ class AVE_Document while ($row = $sql->FetchRow()) { - //$row->Feld = $this->_documentFieldGet($row->rubric_field_type, (string)$row->field_value.(string)$row->more, $row->Id, $row->rubric_field_default); $row->field_value = (string)$row->field_value . (string)$row->field_value_more; $row->field = $this->_documentFieldGet($row->rubric_field_type, $row->field_value, $row->Id, $row->rubric_field_default); array_push($fields, $row); } $maxId = $AVE_DB->Query(" - SELECT MAX(Id) - FROM " . PREFIX . "_documents + SELECT + MAX(Id) + FROM + " . PREFIX . "_documents ")->GetCell(); foreach ($fields as $field) @@ -2551,7 +2608,8 @@ class AVE_Document $document->document_published = time(); $document->document_expire = mktime(date("H"), date("i"), 0, date("m"), date("d"), date("Y") + 10); - if ($document->document_parent != 0) $document->parent = $AVE_DB->Query("SELECT document_title, Id FROM " . PREFIX . "_documents WHERE Id = '".$document->document_parent."' ")->FetchRow(); + if ($document->document_parent != 0) + $document->parent = $AVE_DB->Query("SELECT document_title, Id FROM " . PREFIX . "_documents WHERE Id = '" . $document->document_parent . "' ")->FetchRow(); $AVE_Template->assign('document', $document); @@ -2559,10 +2617,10 @@ class AVE_Document $AVE_Template->assign('content', $AVE_Template->fetch('documents/form.tpl')); } else // Если пользователь не имеет прав на редактирование, формируем сообщение об ошибке - { - $AVE_Template->assign('erorr', $AVE_Template->get_config_vars('DOC_NO_PERMISSION')); - $AVE_Template->assign('content', $AVE_Template->fetch('error.tpl')); - } + { + $AVE_Template->assign('erorr', $AVE_Template->get_config_vars('DOC_NO_PERMISSION')); + $AVE_Template->assign('content', $AVE_Template->fetch('error.tpl')); + } break; } } @@ -2582,8 +2640,10 @@ class AVE_Document Id, rubric_id, document_author_id - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' ")->FetchRow(); // Если у пользователя достаточно прав на выполнение данной операции @@ -2602,9 +2662,12 @@ class AVE_Document { // Выполняем запрос к БД на обновление данных (пометка на удаление) $AVE_DB->Query(" - UPDATE " . PREFIX . "_documents - SET document_deleted = '1' - WHERE Id = '" . $document_id . "' + UPDATE + " . PREFIX . "_documents + SET + document_deleted = '1' + WHERE + Id = '" . $document_id . "' "); $AVE_DB->clearcache('rub_'.$row->rubric_id); @@ -2632,14 +2695,19 @@ class AVE_Document // Выполняем запрос к БД на обновление информации (снятие отметки об удалении) $row = $AVE_DB->Query(" SELECT * - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' ")->FetchRow(); $AVE_DB->Query(" - UPDATE " . PREFIX . "_documents - SET document_deleted = '0' - WHERE Id = '" . $document_id . "' + UPDATE + " . PREFIX . "_documents + SET + document_deleted = '0' + WHERE + Id = '" . $document_id . "' "); // Сохраняем системное сообщение в журнал @@ -2667,8 +2735,10 @@ class AVE_Document { $row = $AVE_DB->Query(" SELECT * - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' ")->FetchRow(); // Выполняем запрос к БД на удаление информации о документе @@ -2683,8 +2753,8 @@ class AVE_Document // Выполняем запрос к БД на удаление полей, которые относились к документу $AVE_DB->Query(" DELETE - f1.*, - f2.* + f1.*, + f2.* FROM " . PREFIX . "_document_fields AS f1 INNER JOIN @@ -2739,8 +2809,10 @@ class AVE_Document Id, rubric_id, document_author_id - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' ")->FetchRow(); // Проверяем права доступа к документу @@ -2808,9 +2880,12 @@ class AVE_Document { // Выполянем запрос к БД на смену статуса у документа $AVE_DB->Query(" - UPDATE " . PREFIX . "_documents - SET document_status = '" . $openclose . "' - WHERE Id = '" . $document_id . "' + UPDATE + " . PREFIX . "_documents + SET + document_status = '" . $openclose . "' + WHERE + Id = '" . $document_id . "' "); $AVE_DB->clearcache('rub_'.$row->rubric_id); @@ -2820,47 +2895,53 @@ class AVE_Document // Сохраняем системное сообщение в журнал reportLog($_SESSION['user_name'] . ' - ' . (($openclose==1) ? $AVE_Template->get_config_vars('DOC_DOCUMENT_ACT') : $AVE_Template->get_config_vars('DOC_DOCUMENT_DISACT')) . ' ' . $AVE_Template->get_config_vars('DOC_DOCUMENT_DOC') . ' (' . $document_id . ')', 2, 2); - }else{ - - $errors[] = $AVE_Template->get_config_vars('DOC_DOCUMENT_OPEN_ERR'); } + else + { + $errors[] = $AVE_Template->get_config_vars('DOC_DOCUMENT_OPEN_ERR'); + } - }else{ - - $errors[] = $AVE_Template->get_config_vars('DOC_DOCUMENT_OPEN_PRIVE'); } + else + { + $errors[] = $AVE_Template->get_config_vars('DOC_DOCUMENT_OPEN_PRIVE'); + } - if (isset($_REQUEST['ajax'])) { - + if (isset($_REQUEST['ajax'])) + { if (empty($errors)) { // Если ошибок не найдено, формируем сообщение об успешной операции echo json_encode(array((($openclose==1) ? $AVE_Template->get_config_vars('DOC_DOCUMENT_OPEN') : $AVE_Template->get_config_vars('DOC_DOCUMENT_CLOSE')) . implode(',
', $errors), 'accept')); - }else{ - - // В противном случае формируем сообщение с ошибкой - echo json_encode(array($AVE_Template->get_config_vars('DOC_URL_CHECK_ER') . implode(',
', $errors), 'error')); - } + else + { + // В противном случае формируем сообщение с ошибкой + echo json_encode(array($AVE_Template->get_config_vars('DOC_URL_CHECK_ER') . implode(',
', $errors), 'error')); - $AVE_DB->clearcache('rub_'.$row->rubric_id); - $AVE_DB->clearcache('doc_'.$document_id); - $AVE_DB->clearcompile('doc_'.$document_id); - exit; - - }else{ + } $AVE_DB->clearcache('rub_'.$row->rubric_id); $AVE_DB->clearcache('doc_'.$document_id); $AVE_DB->clearcompile('doc_'.$document_id); - // Выполняем обновление страницы - header('Location:index.php?do=docs'.(empty($_REQUEST['rubric_id']) ? '' : '&rubric_id='.$_REQUEST['rubric_id']).'&cp=' . SESSION); exit; + } - } else { - header('Location:index.php?do=docs&cp=' . SESSION); - exit; + else + { + $AVE_DB->clearcache('rub_'.$row->rubric_id); + $AVE_DB->clearcache('doc_'.$document_id); + $AVE_DB->clearcompile('doc_'.$document_id); + // Выполняем обновление страницы + header('Location:index.php?do=docs'.(empty($_REQUEST['rubric_id']) ? '' : '&rubric_id='.$_REQUEST['rubric_id']).'&cp=' . SESSION); + exit; + } } + else + { + header('Location:index.php?do=docs&cp=' . SESSION); + exit; + } } /** @@ -2892,7 +2973,7 @@ class AVE_Document // Если в запросе пришел идентификатор новой рубрики и id документа, тогда // выполняем автоматический перенос документа из одной рубрики в другую - if ((!empty($_POST['NewRubr'])) and (!empty($_GET['Id']))) + if ((! empty($_POST['NewRubr'])) and (! empty($_GET['Id']))) { $new_rubric_id = (int)$_POST['NewRubr']; // идентификатор целевой рубрики @@ -2909,15 +2990,22 @@ class AVE_Document // Выполняем запрос к БД на удаление старого поля (лишнее или не требует переноса) $AVE_DB->Query(" DELETE - FROM " . PREFIX . "_document_fields - WHERE document_id = '" . $document_id . "' - AND rubric_field_id = '" . $key . "' + FROM + " . PREFIX . "_document_fields + WHERE + document_id = '" . $document_id . "' + AND + rubric_field_id = '" . $key . "' "); + $AVE_DB->Query(" DELETE - FROM " . PREFIX . "_document_fields_text - WHERE document_id = '" . $document_id . "' - AND rubric_field_id = '" . $key . "' + FROM + " . PREFIX . "_document_fields_text + WHERE + document_id = '" . $document_id . "' + AND + rubric_field_id = '" . $key . "' "); break; @@ -2928,24 +3016,32 @@ class AVE_Document SELECT rubric_field_title, rubric_field_type - FROM " . PREFIX . "_rubric_fields - WHERE Id = '" . $key . "' + FROM + " . PREFIX . "_rubric_fields + WHERE + Id = '" . $key . "' ")->FetchRow(); // Выполняем запрос к БД и получаем последнюю позицию полей в рубрики КУДА переносим $new_pos = $AVE_DB->Query(" - SELECT rubric_field_position - FROM " . PREFIX . "_rubric_fields - WHERE rubric_id = '" . $new_rubric_id . "' - ORDER BY rubric_field_position DESC + SELECT + rubric_field_position + FROM + " . PREFIX . "_rubric_fields + WHERE + rubric_id = '" . $new_rubric_id . "' + ORDER BY + rubric_field_position DESC LIMIT 1 ")->GetCell(); + ++$new_pos; // Выполняем запрос к БД и добавляем новое поле в новую рубрику $AVE_DB->Query(" INSERT - INTO " . PREFIX . "_rubric_fields + INTO + " . PREFIX . "_rubric_fields SET rubric_id = '" . $new_rubric_id . "', rubric_field_title = '" . addslashes($row_fd->rubric_field_title) . "', @@ -2958,15 +3054,18 @@ class AVE_Document // Выполняем запрос к БД и добавляем запись о поле в таблицу с полями документов $sql_docs = $AVE_DB->Query(" SELECT Id - FROM " . PREFIX . "_documents - WHERE rubric_id = '" . $new_rubric_id . "' + FROM + " . PREFIX . "_documents + WHERE + rubric_id = '" . $new_rubric_id . "' "); while ($row_docs = $sql_docs->FetchRow()) { $AVE_DB->Query(" INSERT - INTO " . PREFIX . "_document_fields + INTO + " . PREFIX . "_document_fields SET rubric_field_id = '" . $lastid . "', document_id = '" . $row_docs->Id . "', @@ -2977,16 +3076,24 @@ class AVE_Document // Выполняем запрос к БД и создаем новое поле для изменяемого документа $AVE_DB->Query(" - UPDATE " . PREFIX . "_document_fields - SET rubric_field_id = '" . $lastid . "' - WHERE rubric_field_id = '" . $key . "' - AND document_id = '" . $document_id . "' + UPDATE + " . PREFIX . "_document_fields + SET + rubric_field_id = '" . $lastid . "' + WHERE + rubric_field_id = '" . $key . "' + AND + document_id = '" . $document_id . "' "); $AVE_DB->Query(" - UPDATE " . PREFIX . "_document_fields_text - SET rubric_field_id = '" . $lastid . "' - WHERE rubric_field_id = '" . $key . "' - AND document_id = '" . $document_id . "' + UPDATE + " . PREFIX . "_document_fields_text + SET + rubric_field_id = '" . $lastid . "' + WHERE + rubric_field_id = '" . $key . "' + AND + document_id = '" . $document_id . "' "); break; @@ -2994,16 +3101,25 @@ class AVE_Document default: // Выполняем запрос к БД и просто обновляем имеющиеся данные $AVE_DB->Query(" - UPDATE " . PREFIX . "_document_fields - SET rubric_field_id = '" . $value . "' - WHERE rubric_field_id = '" . $key . "' - AND document_id = '" . $document_id . "' + UPDATE + " . PREFIX . "_document_fields + SET + rubric_field_id = '" . $value . "' + WHERE + rubric_field_id = '" . $key . "' + AND + document_id = '" . $document_id . "' "); + $AVE_DB->Query(" - UPDATE " . PREFIX . "_document_fields_text - SET rubric_field_id = '" . $value . "' - WHERE rubric_field_id = '" . $key . "' - AND document_id = '" . $document_id . "' + UPDATE + " . PREFIX . "_document_fields_text + SET + rubric_field_id = '" . $value . "' + WHERE + rubric_field_id = '" . $key . "' + AND + document_id = '" . $document_id . "' "); break; } @@ -3013,9 +3129,12 @@ class AVE_Document // Выполняем запрос к БД и получаем список всех полей у новой рубрики $sql_rub = $AVE_DB->Query(" SELECT Id - FROM " . PREFIX . "_rubric_fields - WHERE rubric_id = '" . $new_rubric_id . "' - ORDER BY Id ASC + FROM + " . PREFIX . "_rubric_fields + WHERE + rubric_id = '" . $new_rubric_id . "' + ORDER BY + Id ASC "); // Выполняем запросы к БД на проверку наличия нужных полей. @@ -3023,9 +3142,12 @@ class AVE_Document { $num = $AVE_DB->Query(" SELECT 1 - FROM " . PREFIX . "_document_fields - WHERE rubric_field_id = '" . $row_rub->Id . "' - AND document_id = '" . $document_id . "' + FROM + " . PREFIX . "_document_fields + WHERE + rubric_field_id = '" . $row_rub->Id . "' + AND + document_id = '" . $document_id . "' LIMIT 1 ")->NumRows(); @@ -3033,7 +3155,8 @@ class AVE_Document if ($num != 1) { $AVE_DB->Query(" - INSERT " . PREFIX . "_document_fields + INSERT + " . PREFIX . "_document_fields SET rubric_field_id = '" . $row_rub->Id . "', document_id = '" . $document_id . "', @@ -3046,16 +3169,21 @@ class AVE_Document // Выполянем запрос к БД на обновление информации, в котором устанавливаем для перенесенного документа // новое значение id рубрики $AVE_DB->Query(" - UPDATE " . PREFIX . "_documents - SET rubric_id = '" . $new_rubric_id . "' - WHERE Id = '" . $document_id . "' + UPDATE + " . PREFIX . "_documents + SET + rubric_id = '" . $new_rubric_id . "' + WHERE + Id = '" . $document_id . "' "); // Выполняем запрос к БД и очищаем кэш шаблона документа $AVE_DB->Query(" DELETE - FROM " . PREFIX . "_rubric_template_cache - WHERE doc_id = '" . $document_id . "' + FROM + " . PREFIX . "_rubric_template_cache + WHERE + doc_id = '" . $document_id . "' "); echo ''; @@ -3065,7 +3193,7 @@ class AVE_Document // Формируем и отображаем форму, где пользователь самостоятельно определяет перенос $fields = array(); - if ((!empty($_GET['NewRubr'])) and ($rubric_id != (int)$_GET['NewRubr'])) + if ((! empty($_GET['NewRubr'])) and ($rubric_id != (int)$_GET['NewRubr'])) { // Выполняем запрос к БД и выбираем все поля новой рубрики $sql_rub = $AVE_DB->Query(" @@ -3073,11 +3201,15 @@ class AVE_Document Id, rubric_field_title, rubric_field_type - FROM " . PREFIX . "_rubric_fields - WHERE rubric_id = '" . (int)$_GET['NewRubr'] . "' - ORDER BY Id ASC + FROM + " . PREFIX . "_rubric_fields + WHERE + rubric_id = '" . (int)$_GET['NewRubr'] . "' + ORDER BY + Id ASC "); $mass_new_rubr = array(); + while ($row_rub = $sql_rub->FetchRow()) { $mass_new_rubr[] = array('Id' => $row_rub->Id, @@ -3092,9 +3224,12 @@ class AVE_Document Id, rubric_field_title, rubric_field_type - FROM " . PREFIX . "_rubric_fields - WHERE rubric_id = '" . $rubric_id . "' - ORDER BY Id ASC + FROM + " . PREFIX . "_rubric_fields + WHERE + rubric_id = '" . $rubric_id . "' + ORDER BY + Id ASC "); // Циклически обрабатываем полученные данные @@ -3109,7 +3244,9 @@ class AVE_Document if ($row['rubric_field_type'] == $type) { $option_arr[$row['Id']] = $row['title']; - if ($row_nr->rubric_field_title == $row['title']) $selected = $row['Id']; + + if ($row_nr->rubric_field_title == $row['title']) + $selected = $row['Id']; } } $fields[$row_nr->Id] = array('title' => $row_nr->rubric_field_title, @@ -3146,8 +3283,10 @@ class AVE_Document SELECT rubric_id, rubric_permission - FROM " . PREFIX . "_rubric_permissions - WHERE user_group_id = '" . UGROUP . "' + FROM + " . PREFIX . "_rubric_permissions + WHERE + user_group_id = '" . UGROUP . "' "); // Циклически обрабатываем полученные данные и формируем массив прав @@ -3159,7 +3298,7 @@ class AVE_Document foreach ($permissions as $rubric_permission) { - if (!empty($rubric_permission)) + if (! empty($rubric_permission)) { $_SESSION[$row->rubric_id . '_' . $rubric_permission] = 1; } @@ -3177,7 +3316,8 @@ class AVE_Document global $AVE_DB, $AVE_Template, $AVE_Core; // Если id документа не число или 0, прерываем выполнение - if (!(is_numeric($document_id) && $document_id > 0)) exit; + if (! (is_numeric($document_id) && $document_id > 0)) + exit; $document_title = get_document($document_id, 'document_title'); $AVE_Template->assign('document_title', $document_title); @@ -3190,7 +3330,8 @@ class AVE_Document { // Выполняем запрос к БД на добавление новой заметки для документа $AVE_DB->Query(" - INSERT " . PREFIX . "_document_remarks + INSERT + " . PREFIX . "_document_remarks SET document_id = '" . $document_id . "', remark_title = '" . clean_no_print_char($_REQUEST['remark_title']) . "', @@ -3212,19 +3353,24 @@ class AVE_Document if (isset($_REQUEST['sub']) && $_REQUEST['sub'] == 'save') { // Если пользователь оставил ответ и имеет на это права - if (!empty($_REQUEST['remark_text']) && check_permission('remarks')) + if (! empty($_REQUEST['remark_text']) && check_permission('remarks')) { // Выполняем запрос на получение e-mail адреса автора заметки $remark_author_email = $AVE_DB->Query(" - SELECT remark_author_email - FROM " . PREFIX . "_document_remarks - WHERE remark_first = '1' - AND document_id = '" . $document_id . "' + SELECT + remark_author_email + FROM + " . PREFIX . "_document_remarks + WHERE + remark_first = '1' + AND + document_id = '" . $document_id . "' ")->GetCell(); // Выполняем запрос к БД на добавление заметки в БД $AVE_DB->Query(" - INSERT " . PREFIX . "_document_remarks + INSERT + " . PREFIX . "_document_remarks SET document_id = '" . $document_id . "', remark_title = '" . clean_no_print_char($_REQUEST['remark_title']) . "', @@ -3268,7 +3414,7 @@ class AVE_Document // Определяыем лимит заметок на 1 странице и подсчитываем количество страниц $limit = 10; - $seiten = ceil($num / $limit); + $pages = ceil($num / $limit); $start = get_current_page() * $limit - $limit; $answers = array(); @@ -3276,11 +3422,15 @@ class AVE_Document // Выполняем запрос к БД на получение заметок с учетом количества на 1 странцу $sql = $AVE_DB->Query(" SELECT * - FROM " . PREFIX . "_document_remarks - WHERE document_id = '" . $document_id . "' - ORDER BY Id DESC + FROM + " . PREFIX . "_document_remarks + WHERE + document_id = '" . $document_id . "' + ORDER BY + Id DESC LIMIT " . $start . "," . $limit ); + while ($row = $sql->FetchAssocArray()) { $row['remark_author'] = get_username_by_id($row['remark_author_id']); @@ -3290,10 +3440,14 @@ class AVE_Document } $remark_status = $AVE_DB->Query(" - SELECT remark_status - FROM " . PREFIX . "_document_remarks - WHERE document_id = '" . $document_id . "' - AND remark_first = '1' + SELECT + remark_status + FROM + " . PREFIX . "_document_remarks + WHERE + document_id = '" . $document_id . "' + AND + remark_first = '1' ")->GetCell(); // Если количество заметок превышает допустимое значение, определенное в переменной $limit, тогда @@ -3301,7 +3455,7 @@ class AVE_Document if ($num > $limit) { $page_nav = "
  • {t}
  • "; - $page_nav = get_pagination($seiten, 'page', $page_nav); + $page_nav = get_pagination($pages, 'page', $page_nav); $AVE_Template->assign('page_nav', $page_nav); } @@ -3314,12 +3468,12 @@ class AVE_Document $AVE_Template->assign('content', $AVE_Template->fetch('documents/newremark.tpl')); } else - { // В противном случае, если заметок еще нет, открываем форму для добавление заметки - $AVE_Template->assign('reply', 1); - $AVE_Template->assign('new', 1); - $AVE_Template->assign('formaction', 'index.php?do=docs&action=remark&sub=save&Id=' . $document_id . '&cp=' . SESSION); - $AVE_Template->assign('content', $AVE_Template->fetch('documents/newremark.tpl')); - } + { // В противном случае, если заметок еще нет, открываем форму для добавление заметки + $AVE_Template->assign('reply', 1); + $AVE_Template->assign('new', 1); + $AVE_Template->assign('formaction', 'index.php?do=docs&action=remark&sub=save&Id=' . $document_id . '&cp=' . SESSION); + $AVE_Template->assign('content', $AVE_Template->fetch('documents/newremark.tpl')); + } } /** @@ -3338,10 +3492,14 @@ class AVE_Document { // Выполняем запрос к БД на обновление статуса у заметок $AVE_DB->Query(" - UPDATE " . PREFIX . "_document_remarks - SET remark_status = '" . ($status != 1 ? 0 : 1) . "' - WHERE remark_first = '1' - AND document_id = '" . $document_id . "' + UPDATE + " . PREFIX . "_document_remarks + SET + remark_status = '" . ($status != 1 ? 0 : 1) . "' + WHERE + remark_first = '1' + AND + document_id = '" . $document_id . "' "); } @@ -3360,7 +3518,8 @@ class AVE_Document global $AVE_DB; // Если id документа не число или 0, прерываем выполнение - if (!(is_numeric($document_id) && $document_id > 0)) exit; + if (! (is_numeric($document_id) && $document_id > 0)) + exit; // Если в запросе пришел параметр на удаление всех заметок if ($all == 1) @@ -3380,7 +3539,7 @@ class AVE_Document } else { - if (!(isset($_REQUEST['CId']) && is_numeric($_REQUEST['CId']) && $_REQUEST['CId'] > 0)) + if (! (isset($_REQUEST['CId']) && is_numeric($_REQUEST['CId']) && $_REQUEST['CId'] > 0)) exit; // В противном случае, выполняем запрос к БД и удаляем только ту заметку, которая была выбрана @@ -3450,24 +3609,24 @@ class AVE_Document ")->FetchArray(); } else - { - $navigation_id = (isset($_REQUEST['navi_id']) && (int)$_REQUEST['navi_id'] > 0) ? (int)$_REQUEST['navi_id'] : 1; - $status = 1; - $level = 1; - } + { + $navigation_id = (isset($_REQUEST['navi_id']) && (int)$_REQUEST['navi_id'] > 0) ? (int)$_REQUEST['navi_id'] : 1; + $status = 1; + $level = 1; + } $target = (isset($_REQUEST['navi_item_target']) && $_REQUEST['navi_item_target'] == '_blank') ? '_blank' : '_self'; $position = empty($_REQUEST['navi_item_position']) ? 1 : (int)$_REQUEST['navi_item_position']; - if ($level > 3) $level = '3'; // Добавляем информации о новой связке Документ<->Пункт меню $AVE_DB->Query(" INSERT - INTO " . PREFIX . "_navigation_items + INTO + " . PREFIX . "_navigation_items SET title = '" . $title . "', document_id = '" . $document_id . "', @@ -3505,9 +3664,12 @@ class AVE_Document rubric_id, document_title AS document_title, '" . $innavi . "' AS innavi - FROM " . PREFIX . "_documents - WHERE Id = '" . $document_id . "' - AND rubric_id = '" . $rubric_id . "' + FROM + " . PREFIX . "_documents + WHERE + Id = '" . $document_id . "' + AND + rubric_id = '" . $rubric_id . "' LIMIT 1 ")->FetchAssocArray(); } @@ -3546,6 +3708,7 @@ class AVE_Document "); $username = get_username_by_id($_REQUEST['user_id']); + echo "