Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Сниппеты » JS Сниппеты » Запись вводимых данных при добавлении новостей для dle

Запись вводимых данных при добавлении новостей для dle


     16.04.2014    JS Сниппеты, PHP Сниппеты    2975

Запись вводимых данных при добавлении новостей для dle


Не так давно писал новость , написал очень много текста - отошел покурить -> жена случайно закрыла окно с формой добавления новостей в админ панели. В итоге все пришлось писать снова.

Предлагаю вам небольшой хак который поможет вам сохранить введенные данные если при добавлении новости у вас вдруг отключат электричество или вы случайно закроете окно с формой добавления новостей в админ панели .

engine/inc/addnews.php

Над строкой

    echo "<form method=post name=\"addnews\" id=\"addnews\" onsubmit=\"if(checkxf()=='fail') return false;\" action=\"$PHP_SELF\">";


Вставить

echo '<script type="text/javascript">
$(document).ready(function() {
var olddatathisform = JSON.parse(localStorage.getItem(\'addnews_form\')); //получаем данные записи
if(olddatathisform){
$("#data_get,#data_del").show();
}     
$(\'#data_del\').click(function() {
localStorage.removeItem(\'addnews_form\');
$("#data_get,#data_del").hide();
    });    
$(\'#data_get\').click(function() {
$.each(olddatathisform, function(i, val) {
document.addnews.elements[\'\'+val.name+\'\'].value = \'\'+val.value+\'\';
});    
});         
    
$(\'#data_recording\').click(function() {
setInterval(data_recording, 1000);
});
});
function data_recording(){
    localStorage.removeItem(\'addnews_form\');
    var info = $(\'#addnews\').serializeArray();
localStorage.setItem(\'addnews_form\',JSON.stringify(info));
$(\'#data_recording\').html("Идет запись...");
    }
</script>';


После

{$lang['addnews_news']}


Вставить

<b><a href="javascript:void();" style="float:right;padding-right:10px;" id="data_recording">Начать запись</a></b>
        <a href="javascript:void();" style="float:right;padding-right:10px;display:none;" id="data_get">Получить данные</a>
        <a href="javascript:void();" style="float:right;padding-right:10px;display:none;" id="data_del">Удалить запись</a>



Источник http://pro-script.ru/index.php?name=news&op=view&id=514

13 комментариев

ПафНутиЙ
Админ

ПафНутиЙ - 16 апреля 2014 22:42 -

localStorage рулит )

Каков вопрос - таков и ответ. Просто помните об этом.

CaHbKa
Юзер

CaHbKa - 16 апреля 2014 23:47 -

Нужно в стандартную сборку такое сделать.

DaivZ
Юзер

DaivZ - 16 апреля 2014 23:53 -

Жди DLE 10.3 Celsoft уже читает данный мануал )

ПафНутиЙ
Админ

ПафНутиЙ - 17 апреля 2014 00:57 -

жена случайно закрыла окно с формой добавления новостей в админ панели.

вот поэтому я пишу тексты в sublimetext (там возможно использовать синтаксис bbcode)

Каков вопрос - таков и ответ. Просто помните об этом.

Gopr
Юзер

Gopr - 17 апреля 2014 02:53 -

Для addnews.html реально переделать? Чтобы на самом сайте работало а не в админке

rocksmart
Юзер

rocksmart - 17 апреля 2014 18:37 -


G-3p
Юзер

G-3p - 17 апреля 2014 10:38 -

На 10.2 работает? (просто на скриншоте панель пред. версии)

rocksmart
Юзер

rocksmart - 17 апреля 2014 18:25 -

Будет если ид формы не изменился

rocksmart
Юзер

rocksmart - 17 апреля 2014 18:28 -

Минус этого хака в том что нет расстановки

cheked для type="checkbox" и selected для select категорий

werty911
Юзер

werty911 - 2 июня 2014 11:58 -

а как сделать чтобы записывалось автоматически когда начинают вноситься данные?

werty911
Юзер

werty911 - 2 июня 2014 12:03 -

уже сделал Событие onkeypress

Julius123
Юзер

Julius123 - 11 августа 2014 17:38 -

Скажите как установить на DLE 10.2, там нет такого кода
{$lang['addnews_news']}

Googledono
Юзер

Googledono - 2 марта 2015 19:09 -

{$lang['addnews_title']}

Чтобы комментировать - войдите или зарегистрируйтесь на сайте
наверх