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

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


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

Запись вводимых данных при добавлении новостей для 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)

ПафНутиЙ
1065

3395 | 2433

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

localStorage рулит )

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

CaHbKa
1

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

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

DaivZ
2

283 | 175

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

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

ПафНутиЙ
1065

3395 | 2433

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

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

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

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

Gopr
10

494 | 164

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

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

rocksmart
64

307 | 115

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


G-3p
13

179 | 40

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

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

rocksmart
64

307 | 115

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

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

rocksmart
64

307 | 115

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

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

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

werty911
22 | 2

werty911 - 2 июня 2014 11:58 - Юзер

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

werty911
22 | 2

werty911 - 2 июня 2014 12:03 - Юзер

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

Julius123
61 | 6

Julius123 - 11 августа 2014 17:38 - Юзер

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

Googledono
4

117 | 8

Googledono - 2 марта 2015 19:09 - Юзер

{$lang['addnews_title']}

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