Инструкция для DLE 10.4, не знаю, подойдет для старых версий или нет, но код будет похожий.
Что нам нужно? Нужно вырезать все проверки на пустоту $title и убрать js, который парсит input и выкидывает ошибку, если оно пустое.
Можно поступить проще - найти этот input, поставить ему в качестве значения какое-нибудь слово или хеш, плюс сделать его скрытым (type=hidden), а из шаблона новостей удалить название новости.
Это делается в тех же файлах, для которых описан процесс вырезания проверки.
Делаем копии этих файлов, чтобы можно было отменить изменения в случае ошибки:
- engine/modlules/addnews.php
- engine/inc/addnews.php
- engine/inc/engine.php
Для добавления/редактирования новости не через админку:engine/modlules/addnews.php
Строка 198:
$title = $db->safesql( $parse->process( trim( strip_tags ($_POST['title']) ) ) );
Удаляем или комментируем ее.
Возможны проблемы с ajax-поиском похожих новостей (они ищутся по заголовку), для этого можно заменить код в этом же файле:
function find_relates ( )
{
var title = document.getElementById('title').value;
ShowLoading('');
$.post('engine/ajax/find_relates.php', { title: title, mode: 1 }, function(data){
HideLoading('');
$('#related_news').html(data);
});
return false;
};
на следующий:
function find_relates ( )
{
return false;
};
Для добавления новости через админку:engine/inc/addnews.php
Заменяем блок (54 строка)
if(document.addnews.title.value == ''){ Growl.info({
title: '{$lang[p_info]}',
text: '{$lang['addnews_alert']}'
}); return false; }
else{
dd=window.open('','prv','height=400,width=750,resizable=1,scrollbars=1')
document.addnews.mod.value='preview';document.addnews.target='prv'
document.addnews.submit();dd.focus()
setTimeout(\"document.addnews.mod.value='addnews';document.addnews.target='_self'\",500)
}
На этот:
dd=window.open('','prv','height=400,width=750,resizable=1,scrollbars=1')
document.addnews.mod.value='preview';document.addnews.target='prv'
document.addnews.submit();dd.focus()
setTimeout(\"document.addnews.mod.value='addnews';document.addnews.target='_self'\",500)
Блок:
function find_relates ( )
{
var title = document.getElementById('title').value;
ShowLoading('');
$.post('engine/ajax/find_relates.php', { title: title }, function(data){
HideLoading('');
$('#related_news').html(data);
});
return false;
};
Заменяем на:
function find_relates ( )
{
return false;
};
Это удаляем:
if(document.addnews.title.value == ''){
Growl.info({
title: '{$lang[p_info]}',
text: '{$lang['addnews_alert']}'
});
status = 'fail';
}
Удаляем:
if( trim( $title ) == "") {
msg( "error", $lang['addnews_error'], $lang['addnews_alert'], "javascript:history.go(-1)" );
}
Для редактирования новости через админку:engine/inc/editnews.php
Заменяем:
if(document.addnews.title.value == ''){ Growl.info({
title: '{$lang[p_info]}',
text: '{$lang['addnews_alert']}'
}); return false; }
else{
dd=window.open('','prv','height=400,width=750,left=0,top=0,resizable=1,scrollbars=1')
document.addnews.mod.value='preview';document.addnews.target='prv'
document.addnews.submit();dd.focus()
setTimeout(\"document.addnews.mod.value='editnews';document.addnews.target='_self'\",500)
}
На
dd=window.open('','prv','height=400,width=750,left=0,top=0,resizable=1,scrollbars=1')
document.addnews.mod.value='preview';document.addnews.target='prv'
document.addnews.submit();dd.focus()
setTimeout(\"document.addnews.mod.value='editnews';document.addnews.target='_self'\",500)
Заменяем
function find_relates ()
{
var title = document.getElementById('title').value;
ShowLoading('');
$.post('engine/ajax/find_relates.php', { title: title, id: '{$row['id']}' }, function(data){
HideLoading('');
$('#related_news').html(data);
});
return false;
};
На:
function find_relates ()
{
return false;
};
Удаляем:
if(document.addnews.title.value == ''){
Growl.info({
title: '{$lang[p_info]}',
text: '{$lang['addnews_alert']}'
});
status = 'fail';
}
Удаляем строчку:
if( trim( $title ) == "" and $ifdelete != "yes" ) msg( "error", $lang['cat_error'], $lang['addnews_alert'], "javascript:history.go(-1)" );