Загрузка картинок на сайт как опция
Данная функция даёт вам возможность, как администратору сайта отключить или включить загрузку картинок на сайт
1. в файл config.php добавляем строку
2. classes/modules/sys_viewer/Viewer.class.php
над или под строкой
вписываем:
3. include/ajax/uploadImg.php
после строки:
вписываем:
далее в самом низу в этом же файле после кода:
вписываем:
4. actions/ActionTopic/add.tpl
находим код:
вставляем его между:
ну и находим полный код кнопки «картинки» и делаем с ней тоже самое
пс… main.js вот незнаю надо оно или нет, старый код заменим этим:
1. в файл config.php добавляем строку
define('USER_USE_UPLOAD_IMG',false); // режим загрузки картинок на хостинг сайта
2. classes/modules/sys_viewer/Viewer.class.php
над или под строкой
$this->Assign("BLOG_USE_TINYMCE",BLOG_USE_TINYMCE);
вписываем:
$this->Assign("USER_USE_UPLOAD_IMG",USER_USE_UPLOAD_IMG);
3. include/ajax/uploadImg.php
после строки:
require_once("./config/config.ajax.php");
вписываем:
if (USER_USE_UPLOAD_IMG == true) {
далее в самом низу в этом же файле после кода:
$GLOBALS['_RESULT'] = array(
"bStateError" => $bStateError,
"sText" => $sText,
);
вписываем:
}
else{
print "ку ку";
}
4. actions/ActionTopic/add.tpl
находим код:
{include file='window_load_img.tpl' sToLoad='topic_text'}
вставляем его между:
{if $USER_USE_UPLOAD_IMG}
{include file='window_load_img.tpl' sToLoad='topic_text'}
{/if}
ну и находим полный код кнопки «картинки» и делаем с ней тоже самое
пс… main.js вот незнаю надо оно или нет, старый код заменим этим:
if (USER_USE_UPLOAD_IMG == true) {
function ajaxUploadImg(value,sToLoad) {
var req = new JsHttpRequest();
req.onreadystatechange = function() {
if (req.readyState == 4) {
document.getElementById('debug').innerHTML = req.responseText;
closeWindowStatus();
if (req.responseJS.bStateError) {
msgErrorBox.alert('Ошибка','Возникли проблемы при загрузке изображения, попробуйте еще разок. И на всякий случай проверьте правильность URL картинки');
showWindow('window_load_img');
} else {
voidPutTag(sToLoad,req.responseJS.sText);
}
}
}
closeWindow('window_load_img');
showWindowStatus('Загрузка изображения...');
req.open(null, DIR_WEB_ROOT+'/include/ajax/uploadImg.php', true);
req.send( { value: value } );
}
} else {
}
4 комментария
допысывать в main.js if (USER_USE_UPLOAD_IMG == true) { не ообязательно, да и к тому же USER_USE_UPLOAD_IMG в скрипте не определена!
и ещё думаю следует заменить в actions/ActionTopic/add.tpl <a href="#" onclick="showWindow('window_load_img'); return false;" class="button"><img src="{$DIR_STATIC_SKIN}/img/img.gif" width="20" height="20" title="изображение"></a> на {if $USER_USE_UPLOAD_IMG}
<a href="#" onclick="showWindow('window_load_img'); return false;" class="button"><img src="{$DIR_STATIC_SKIN}/img/img.gif" width="20" height="20" title="изображение"></a>
{/if} чтоб не нервировать каждый раз пользователя ошибками при попытке загрузить картинку…
В последней 0.4.2 в classes/modules нет папки sys_viewer
В последней же версии (0.4.2), решается данный вопрос еще более просто, я бы сказал элементарно:
нужно в папке со скином/темой открыть файл и там можно просто убрать 7-ю строку
Таким образом остается только возможность подставить URL загруженной куда-то картинки.
P.S. перед тем как отправить это сообщение, попробовал у себя на тестовой площадке, оказывается если подставить только ссылку, изображение всеравно загружается на сервер сайта :)
Покопаемся еще немного…
Вот и все =) остается только дописать пару строчек для пропорционального изменения размеров загружаемой картинки, напр. чтобы она была максимум 500px по ширине