Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Вопрос? Спойлер для комментарий

Тема в разделе "Вопросы- ответы", создана пользователем Bayko, 29 дек 2022.

29.12.22 в 13:28
03.05.23 в 00:54
36
2.567
0
  1. igrovik

    igrovik Местный

    Регистрация:
    11 дек 2016
    Сообщения:
    1.007
    Лучших ответов:
    8
    Рейтинги:
    +355 / 12 / -0
    Все верно установлено, не передается параметр spoiler . При добавлении параметра в
    Код:
    $.post(dle_root + "engine/ajax/controller.php?mod=addcomments", {
    код отрабатывает на ура.
     
  2. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    Да я забыл.
    Terras установку поправил
     
    • Нравится Нравится x 1
  3. Terras

    PRO Users

    Регистрация:
    18 мар 2017
    Сообщения:
    306
    Лучших ответов:
    3
    Рейтинги:
    +56 / 1 / -0
    Фух, спасибо мужики =) заработало после того как добавил

    [​IMG]
    дошло)
     
    • Нравится Нравится x 1
  4. talgats

    talgats Зелёный

    Регистрация:
    2 сен 2017
    Сообщения:
    14
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    У меня всё хорошо работает, НО! после редактирования комментария вот такая беда -
    Текст спойлера
    Почему так? и как исправить? И ещё в админке прикрутить бы в модерации комментариев кнопку СПОЙЛЕР! было бы круто.
     

    Вложения:

  5. Bashmak

    PRO Users

    Регистрация:
    25 фев 2017
    Сообщения:
    642
    Лучших ответов:
    1
    Рейтинги:
    +168 / 25 / -0
    Чтобы исправить все эти косяки я заказывал у автора доработку, свяжись с ним, думаю он и тебе продаст её.
     
    • Согласен Согласен x 1
  6. Винчестер

    Винчестер Новичок

    Регистрация:
    31 дек 2022
    Сообщения:
    31
    Лучших ответов:
    0
    Рейтинги:
    +9 / 7 / -0
    Автор трудится не покладая рук над обновлениями своих модулей, ты чего, какие доработки
     
  7. talgats

    talgats Зелёный

    Регистрация:
    2 сен 2017
    Сообщения:
    14
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    Что-то он не выходит на связь со мной, и в описании в телеге "заказы не принимаю"
     
  8. igrovik

    igrovik Местный

    Регистрация:
    11 дек 2016
    Сообщения:
    1.007
    Лучших ответов:
    8
    Рейтинги:
    +355 / 12 / -0
    DELETE
     
    #28 igrovik, 12 апр 2023
    Последнее редактирование: 12 апр 2023
  9. igrovik

    igrovik Местный

    Регистрация:
    11 дек 2016
    Сообщения:
    1.007
    Лучших ответов:
    8
    Рейтинги:
    +355 / 12 / -0
    DELETE
     
    #29 igrovik, 12 апр 2023
    Последнее редактирование: 12 апр 2023
  10. igrovik

    igrovik Местный

    Регистрация:
    11 дек 2016
    Сообщения:
    1.007
    Лучших ответов:
    8
    Рейтинги:
    +355 / 12 / -0
    Что бы после редактирования не было
    Код:
    [spoiler=Спойлер] текст[/spoiler]
    А становился именно спойлер.

    Для этого проделываем все заново по инструкции начиная с пункта
    Код:
    2. Открываем файл dle_js.js с папки Developer/uncompressed что идёт в архиве движка.
    Только в данном пункте добавляем еще одну правку а именно
    находим

    Код:
    function ajax_save_comm_edit( c_id, area )
    {
    Внутри данной функции находим
    Код:
    ShowLoading('');
    после ставим

    Код:
    var spoiler = 0;
        if(comm_txt.match(/\[spoiler\=/)){
            spoiler = 1;
        }
    еще ниже заменяем
    Код:
    $.post(dle_root + "engine/ajax/controller.php?mod=editcomments", { id: c_id,  comm_txt: comm_txt, area: area, action: "save", user_hash: dle_login_hash
    На
    Код:
    $.post(dle_root + "engine/ajax/controller.php?mod=editcomments", { id: c_id, spoiler: spoiler, comm_txt: comm_txt, area: area, action: "save", user_hash: dle_login_hash
    Далее открываем плагин и в действиях
    добавляем
    Имя файла
    Код:
    engine/ajax/editcomments.php
    Действие 1: Найти и добавить ниже

    И установить такие данные:
    Найти :
    Код:
    $buffer = stripslashes( $comm_txt );
    Добавить ниже:
    Код:
    $comm_txt = preg_replace('#\[spoiler=.*?\].*?\[\/spoiler\]#is','',$comm_txt);
    Действие 2 : Найти и добавить ниже
    Найти :
    Код:
    if ($config['allow_comments_wysiwyg'] == "-1") $parse->allowbbcodes = false;
    Добавить ниже:
    Код:
    if ($config['allow_comments_wysiwyg'] == "-1" && isset($_REQUEST['spoiler']) && $_REQUEST['spoiler']) $_POST['comm_txt'] = '[spoiler=Спойлер]' . $_POST['comm_txt'] . '[/spoiler]';
    
    Действие 3 : Найти и добавить ниже
    Найти :
    Код:
    <input class="bbcodes cancelchanges" title="$lang[bb_t_cancel]" type="button" onclick="ajax_cancel_comm_edit('{$id}'); return false;" value="$lang[bb_b_cancel]">
    Добавить ниже:
    Код:
    <input type="checkbox" name="spoiler" id="spoiler" value="1">Спойлер

    ЧТОБЫ РАБОТАЛО ПРИ РЕДАКТИРОВАНИИ ИЗ АДМИНКИ:
    открыть
    engine/inc/comments.php
    найти
    Код:
    function ajax_save_comm_edit( c_id, area )
    {
    внутри функции найти:
    Код:
    ShowLoading('');
    ниже вставить

    Код:
    var spoiler = 0;
        if(comm_txt.match(/\[spoiler\=/)){
            spoiler = 1;
        }else if($('#spoiler').val() == 1){
            spoiler = 1;
        }
    еще ниже найти:
    Код:
    $.post("engine/ajax/controller.php?mod=editcomments", { id: c_id, comm_txt: comm_txt, area: area, action: "save", user_hash: "{$dle_login_hash}" }
    заменить на:
    Код:
    $.post("engine/ajax/controller.php?mod=editcomments", { id: c_id, spoiler: spoiler, comm_txt: comm_txt, area: area, action: "save", user_hash: "{$dle_login_hash}" }
    Чистим кэши пробуем.

    Если будет желание угостить кофе или печеньками: Z053715869075
     
    #30 igrovik, 12 апр 2023
    Последнее редактирование: 12 апр 2023
  11. talgats

    talgats Зелёный

    Регистрация:
    2 сен 2017
    Сообщения:
    14
    Лучших ответов:
    0
    Рейтинги:
    +6 / 0 / -0
    Спасибо, поставил проверил всё работает! Благодарю, скинул на кофе с печеньками) И в лс ответь как сможешь...
     
    • Нравится Нравится x 1
  12. igrovik

    igrovik Местный

    Регистрация:
    11 дек 2016
    Сообщения:
    1.007
    Лучших ответов:
    8
    Рейтинги:
    +355 / 12 / -0
    Не за что.
     
  13. TalkingFOX

    TalkingFOX Посетитель

    Регистрация:
    15 май 2018
    Сообщения:
    97
    Лучших ответов:
    0
    Рейтинги:
    +15 / 0 / -0
    Наткнулся, потестил на DLE 15.3. При редактирование сообщения, если в тексте используется тег spoiler, выдает ошибку что сообщение слишком длинное. В остальном очень даже полезная штука.
     
  14. SoIo

    SoIo Зелёный

    Регистрация:
    11 апр 2023
    Сообщения:
    21
    Лучших ответов:
    0
    Рейтинги:
    +2 / 2 / -0

    В
    от может кому пригодится, автоматическое скрытие всех комментариев.

    Код:
    <script type="text/javascript">[/COLOR][/SIZE][/FONT][/I][/CENTER]
    [I][FONT=Tahoma][SIZE=3][COLOR=#000000]
    [CENTER]function show_hide(comment_id) {
       var comment = document.getElementById(comment_id);
       var checkbox = document.getElementById("spoiler_"+comment_id);
    
       if (checkbox.checked) {
          comment.style.display = "block";
       } else {
          comment.style.display = "none";
       }
    }
    
    var comments = document.querySelectorAll('.dle-comment');
    for (var i = 0; i < comments.length; i++) {
       var comment = comments[i];
       var comment_id = comment.getAttribute('id');
    
       var checkbox = document.createElement('input');
       checkbox.type = "checkbox";
       checkbox.id = "spoiler_"+comment_id;
       checkbox.onclick = function() { show_hide(comment_id); };
    
       var label = document.createElement('label');
       label.htmlFor = "spoiler_"+comment_id;
       label.appendChild(document.createTextNode("Показать комментарий"));
    
       var div = document.createElement('div');
       div.appendChild(checkbox);
       div.appendChild(label);
    
       comment.parentNode.insertBefore(div, comment.nextSibling);
    }
    </script>
    

     
  15. Винчестер

    Винчестер Новичок

    Регистрация:
    31 дек 2022
    Сообщения:
    31
    Лучших ответов:
    0
    Рейтинги:
    +9 / 7 / -0
    Видимо я что-то не понимаю. Какой смысл ставить на весь комментарий чебокс? Ну поставил ты чебокс, если в коменте есть спойлер - нажимаешь на чебокс и он скроет весь коммент (?) А зачем?
    Лучше же делать так
    1.png
    Или в этой ветке код именно это и делает?

    Но ведь есть стандартный тег DLE:
    Код:
    [spoiler=Спойлер] текст[/spoiler]
    В /language/... меняешь "скрытый текст" (или как там) на Спойлер и вот тебе тот же спойлер. Правда как на резке не получиться - это минус (в стандартном теге DLE переносит строку).

    Зачем городить столько кода/неудобных правок? В чем я не прав? Покажите изображения с вашими комментами и спойлерами, в которых используется код из этой темы.
     
  16. TopicStarter Overlay
    Bayko

    Bayko Бывалый

    Регистрация:
    30 июл 2019
    Сообщения:
    110
    Лучших ответов:
    0
    Рейтинги:
    +5 / 1 / -0
    Лично я не использую редактор для комментарии, стоит без редактора, мне например необходимо только спойлер и все, остальные там смаилики все не нужны, вот и все, + у тебя показатели производительности становится выше.
     
  17. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    Вау, у человека бывает жизнь и дела и он не сидит за пк 24/7. Даже такое бывает, представь себе.
     
Яндекс.Метрика