• Как на PHP проверить наличие атрибута у тега img?

    @midarovrk Автор вопроса
    Всё, решил проблему вот так:

    if(strpos($img, 'data-src') !== false)
      {
        echo "[ есть ]";
      } else {
        echo "[ нет ]";
    }

    Правда я не совсем понимаю что значит это !==
    Кто может объяснить?
    Ответ написан
  • Как сделать сохранение выбора темы тёмная/светлая на любой странице?

    @midarovrk Автор вопроса
    Решил проблему.
    Чтобы сохранение происходило не только на главной, в скрипте из

    "./themes.php?theme="

    нужно удалить "точку".

    А также прикрутил куки к этому методу, выложу, может кому пригодится.

    В php файл надо добавить

    SetCookie("имя куки","$theme",time()+86400 * 30 * 12);

    Должно получиться так:

    <?php
    session_start();
    
    if(isset($_GET["theme"]))
    {
        $theme = $_GET["theme"];
        
        SetCookie("имя куки","$theme",time()+86400 * 30 * 12);
    
        if($theme == "light" || $theme == "dark")
        {
            $_SESSION["theme"] = $theme;
        }
    }
    ?>

    А в тот кусок php кода который располагается в head надо добавить:

    if(isset($_COOKIE['имя куки'])){
      $_SESSION["theme"] = $_COOKIE['имя куки'];
    }

    Должно получиться так:

    <?php
    session_start();
    
    if(!isset($_SESSION["theme"]))
    {
        $_SESSION["theme"] = "light";
    }
    
    if(isset($_COOKIE['имя куки'])){
      $_SESSION["theme"] = $_COOKIE['имя куки'];
    }
    ?>

    Таким образом будет проверка на сессию и на куки.
    И даже если юзер разлогинится и сессия затрётся, выбранная им тема вытянется из куки.
    Ответ написан
    Комментировать
  • Как запретить группе публиковать новости на главной в DLE?

    @midarovrk Автор вопроса
    В общем решил проблему.
    В файле engine/modules/addnews.php в строке 167 есть:

    if( ! $user_group[$member_id['user_group']]['moderation'] ) {
                $approve = 0;
                $allow_comm = 1;
                $allow_main = 1;
                $allow_rating = 1;
                $news_fixed = 0;
            }


    Т.е. если у группы разрешено "Редактирование всех новостей", то судя по этому коду, ДЛЕшке уже плевать на всякие галочки.
    Решил проблему поменяв $allow_main = 1; на $allow_main = 0;
    Ответ написан
    Комментировать
  • Как сократить вывод даты из php скрипта?

    @midarovrk Автор вопроса
    Всё оказалось просто.

    Заменить
    function relativeTime($dt, $precision = 2) {
    На
    function relativeTime($dt, $precision = 1) {
    Ответ написан
    Комментировать