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

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

Важно Тем кто использует в dle мобильную версию сайта

Тема в разделе "Хаки DLE", создана пользователем ZerocooL, 17 июн 2015.

17.06.15 в 09:39
21.09.16 в 10:00
31
15.530
7
  1. dr.gopher

    dr.gopher Команда форума VIP Кинотрафик v2

    Сообщения:
    1.591
    Симпатии:
    346
    Лучших ответов:
    8
    @ZerocooL,
    DLE 10.2 - /engine/init.php

    не нашел совпадения

    if ( ($config['allow_smartphone'] AND !$_SESSION['mobile_disable'] AND $tpl->smartphone) OR $_SESSION['mobile_enable'] ) {
     
  2. TopicStarter Overlay
    ZerocooL

    ZerocooL Команда форума Администратор VIP Кинотрафик v2

    Сообщения:
    8.771
    Симпатии:
    4.467
    Лучших ответов:
    10
    Мануалы:
    31
    @dr.gopher, пробуй ЧАСТЬ кода искать что то типо mobile_disable или smartphone и визуально сотри совпадение потом
     
    • Нравится Нравится x 1
  3. dusk

    dusk Команда форума VIP Кинотрафик v2

    Сообщения:
    1.106
    Симпатии:
    360
    Лучших ответов:
    0
    В зависимости от версий dle или от кривизны кнопок ctlr+c, иногда приходится искать не полную запись, а частями и после визуально сравнивать.
     
  4. dr.gopher

    dr.gopher Команда форума VIP Кинотрафик v2

    Сообщения:
    1.591
    Симпатии:
    346
    Лучших ответов:
    8
    :)
    Часть моего кода отдаленно напоминает пример:

    Код:
    $smartphone_detected = false;
    
    if( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == "mobiledisable" ) $_SESSION['mobile_disable'] = 1;
    if( isset( $_REQUEST['action'] ) and $_REQUEST['action'] == "mobile" ) { $_SESSION['mobile_enable'] = 1; $_SESSION['mobile_disable'] = 0;}
    if( !isset( $_SESSION['mobile_disable'] ) ) $_SESSION['mobile_disable'] = 0;
    if( !isset( $_SESSION['mobile_enable'] ) ) $_SESSION['mobile_enable'] = 0;
    
    if ( $config['allow_smartphone'] AND !$_SESSION['mobile_disable'] ) {
    
        if ( check_smartphone() ) {
    
            if ( @is_dir ( ROOT_DIR . '/templates/smartphone' ) ) {
    
                $config['skin'] = "smartphone";
                $smartphone_detected = true;
                $config['allow_comments_wysiwyg'] = 0;
    
            }
    
        }
    
    }
     
  5. TopicStarter Overlay
    ZerocooL

    ZerocooL Команда форума Администратор VIP Кинотрафик v2

    Сообщения:
    8.771
    Симпатии:
    4.467
    Лучших ответов:
    10
    Мануалы:
    31
    @dr.gopher, быть может в вашей версии дле еше не было поддержки таблетов ? )) Список изменений версий посмотрите.
     
  6. dr.gopher

    dr.gopher Команда форума VIP Кинотрафик v2

    Сообщения:
    1.591
    Симпатии:
    346
    Лучших ответов:
    8
    ИМХО, надобно написать в шапке, для какой версии DLE данный хак. :)
     
  7. TopicStarter Overlay
    ZerocooL

    ZerocooL Команда форума Администратор VIP Кинотрафик v2

    Сообщения:
    8.771
    Симпатии:
    4.467
    Лучших ответов:
    10
    Мануалы:
    31
  8. dusk

    dusk Команда форума VIP Кинотрафик v2

    Сообщения:
    1.106
    Симпатии:
    360
    Лучших ответов:
    0
    ИМХО, пора обновиться до актуальной версии dle:D
     
    • Нравится Нравится x 1
  9. dr.gopher

    dr.gopher Команда форума VIP Кинотрафик v2

    Сообщения:
    1.591
    Симпатии:
    346
    Лучших ответов:
    8
    :-( Шаблон под актуальной версией не работает.

    P.S. Лучшее враг хорошего! :)
     
  10. dusk

    dusk Команда форума VIP Кинотрафик v2

    Сообщения:
    1.106
    Симпатии:
    360
    Лучших ответов:
    0
    НЕ ВЕРЮ:D
     
  11. dr.gopher

    dr.gopher Команда форума VIP Кинотрафик v2

    Сообщения:
    1.591
    Симпатии:
    346
    Лучших ответов:
    8
    Увы, моих познаний недостаточно, а платить за адаптацию шаблона не вижу смысла. Ибо P.S. выше :)

    Спасибо @ZerocooL, WAP начал приносить денежку. :)
     
  12. progmaster

    progmaster Забанен

    Сообщения:
    202
    Симпатии:
    87
    Лучших ответов:
    0
    Чет мне кажется данный код будет работать не совсем корректно, т.е. мобильная версию включится, если:
    1. В конфиге сайта разрешена мобильная версия и если они не отключена пользователем и если это телефон
    2. Если это планшет, игнорирая настройки сайта и пожелания пользователя.

    Нужно либо использовать конструкцию кода ($tpl->smartphone OR $tpl->tablet), т.е. обернуть в скобки, ибо по умолчанию php будет обрабатывать OR, только потом AND, а не последовательно.
    Либо после $tpl->tablet дописать AND $config['allow_smartphone'] AND !$_SESSION['mobile_disable'].

    Т.е. получается сейчас
    (config AND !session AND smart) OR tables
    Нужно сделать
    config AND !session AND (smart OR tables)
    или
    config AND !session AND smart OR tables AND config AND !session