Вход • Регистрация

is_admin

  • 12 февраля 2016 г. , редакция: 12 февраля 2016 г.
  • [Решено]

    Доброго дня!
    Не могу понять в какую ветку задать вопрос, поэтому спрошу тут, надеюсь модераторы простят. =)

    А ситуация в следующем:
    Я вставил например в подвал сайта блок (div). Мне, а вернее владельцу сайта необходимо, что бы данный блок мог видеть только администратор.
    Возможно ли это сделать?
    Вот тут http://www.diafan.ru/dokument/full-manual/developers/architecture/module/model/ вроде бы и написано как это сделать, но почему то не получается.

    Буду благодарен за любые советы!

    • 12 февраля 2016 г.
    • Назовите файл и выдержку кода, как вставляете.
      • 12 февраля 2016 г.
      • Виталий файл footer.php тот, что в themes/blocks/.
        Код:
        <?php if($this->is_admin())
        {
        echo 'Привет';
        };
        ?>

        Ошибка:
        Call to undefined method Parser_theme::is_admin()
        /home/users/a/adm10/domains/adm10.myjino.ru/includes/parser_theme.php(141) : eval()'d code:1
  • 12 февраля 2016 г. , редакция: 12 февраля 2016 г.
  • Виталий, простите что беспокою, а если вместо
    echo 'Здравствуйте, администратор!';
    вставлять например скрипт счетчика яндекса или ливинтернета?
    Пытаюсь вставить вот такое


    <?php
    if($this->diafan->_users->admin)
    {;?>
    <div class="livi">

    <script type="text/javascript"><!--
    document.write("<a href='//www.liveinternet.ru/click' "+
    "target=_blank><img src='//counter.yadro.ru/hit?t18.11;r"+
    escape(document.referrer)+((typeof(screen)=="undefined")?"":
    ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
    screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
    ";"+Math.random()+
    "' alt='' title='LiveInternet: показано число просмотров за 24"+
    " часа, посетителей за 24 часа и за сегодня' "+
    "border='0' width='88' height='31'><\/a>")
    </script>

    </div>
    <?php };?>

    говорит, что не закрыт }.
    • 12 февраля 2016 г.
    • В сточке
      Цитата
      "border='0' width='88' height='31'><\/a>")
      ошибка
      Цитата
      <\/a>
      должно быть так
      Код
      </a>
      • 12 февраля 2016 г.
      • К сожалению не помогло, так и ругается на unexpected } =(((
        • 12 февраля 2016 г.
        • еще ошибка, незакрытый комент
          Цитата
          <!--

          без ошибки
          Код
          <?php
          if($this->diafan->_users->admin)
          {;?>
          <div class="livi">

          <script type="text/javascript">
          document.write("<a href='//www.liveinternet.ru/click' "+
          "target=_blank><img src='//counter.yadro.ru/hit?t18.11;r"+
          escape(document.referrer)+((typeof(screen)=="undefined")?"":
          ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
          screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
          ";"+Math.random()+
          "' alt='' title='LiveInternet: показано число просмотров за 24"+
          " часа, посетителей за 24 часа и за сегодня' "+
          "border='0' width='88' height='31'></a>")
          </script>

          </div>
          <?php };?>
          • 12 февраля 2016 г.
          • <!-- убирал, 0 эмоций....
            syntax error, unexpected '}'
            /home/users/a/adm10/domains/adm10.myjino.ru/includes/parser_theme.php(141) : eval()'d code:1

            • 12 февраля 2016 г.
            • Эта ошибка решается так https://user.diafan.ru/forum/show3045/#27819
              Цитата
              в оригинальном файле useradmin.view.panel.php (версии diafan.cms 6.0.1.0) Эта строчка:

              Код
              <a href="'.($link_current_edit==BASE_PATH.ADMIN_FOLDER.'/site/edit1/'?BASE_PATH.ADMIN_FOLDER.'/'.($_GET["help"]?'?help=1':'site/'):$link_current_edit).'" title="'.$this->diafan->_('Редактировать текущую страницу в административной части', false).'">

              Цитата
              Должна быть такой

              Код
              <a href="'.($link_current_edit==BASE_PATH.ADMIN_FOLDER.'/site/edit1/'?BASE_PATH.ADMIN_FOLDER.'/'.(!empty($_GET["help"])?'?help=1':'site/'):$link_current_edit).'" title="'.$this->diafan->_('Редактировать текущую страницу в административной части', false).'">

              Успехов.
              • 12 февраля 2016 г.
              • Мы давным давно её поправили. Достаточно просто обновиться
              • 12 февраля 2016 г.
              • Виталий, спасибо, но не могу понять, как это относится к данной ситуации. И если как то относится:
                1. Версия CMS 5.4
                2. По какому пути находится указанный Вами файл?


                Еще раз спасибо, за потраченное на меня время.
            • 12 февраля 2016 г.
            • Виталий (DIAFAN.CMS), я не смотрел последний пакет diafan.cms, поэтому принял во внимание, что если человек, который задает вопрос, не указывает версию cms, то это последняя версия (как говорится: самая - самая). Исходя из этого и видя приведённую им ошибку предположил, что в последней версии эта ошибка пока не исправлена. Поэтому исключил обновление и привел выше отмеченное решение.
              • 12 февраля 2016 г.
              • Да она там была между двумя сборками, один программист ночью бахнул, выпускающий к следующей сборке уже поправил к норме.
              • 12 февраля 2016 г.
              • Цитата
                Виталий (nvgpro) Сегодня, 13:34
                принял во внимание, что если человек, который задает вопрос, не указывает версию cms, то это последняя версия
                Виталий (DIAFAN.CMS), может всё-таки стоит хотя бы одно необязательное поле ввести перед отправкой сообщений. Как минимум этот вопрос о версии всплывает постоянно.
              • 12 февраля 2016 г.
              • Любимов Павел (webnavigator), поддерживаю Вас, т.к. на форуме есть некоторые решения, но новичку сразу не понять: то ли решение относится к 6.0, то ли к 5.4, то ли 4.х и т.д. А эти решения могут быть не совместимы.
  • 12 февраля 2016 г.
  • Виталии, спасибо что откликнулись, но проблему решить не удалось, из-за банального незнания структуры движка. Скажите пожалуйста, где это файл лежит?
    Я не спец в Диафане, меня попросили сделать верстку, но по ходу этого приходится и всякие "хотелки" делать. Уж не откажите в помощи. =)
    • 12 февраля 2016 г. , редакция: 12 февраля 2016 г.
    • Если у Вас 5.4, то это другой случай. К сожалению у меня нет этого дистрибутива, поэтому, что в строчке 141 файла parser_theme.php увидеть не могу. Могу лишь предложить идти методом исключения.
      Кстати, а вот так
      Код
      <?php
      if($this->diafan->_users->admin)
      {?>
      <div class="livi">

      <script type="text/javascript">
      document.write("<a href='//www.liveinternet.ru/click' "+
      "target=_blank><img src='//counter.yadro.ru/hit?t18.11;r"+
      escape(document.referrer)+((typeof(screen)=="undefined")?"":
      ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth?
      screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+
      ";"+Math.random()+
      "' alt='' title='LiveInternet: показано число просмотров за 24"+
      " часа, посетителей за 24 часа и за сегодня' "+
      "border='0' width='88' height='31'></a>")
      </script>

      </div>
      <?php };?>

      Копируйте один к одному. Ошибка остается?
      • 12 февраля 2016 г.
      • Остается =(((
        • 12 февраля 2016 г. , редакция: 12 февраля 2016 г.
        • Хорошо, методом исключения, т.к. не вижу Ваш код в целом.
          Код
          <?php
          if($this->diafan->_users->admin)
          {
          echo '<div class="livi">
          <script type="text/javascript">

          </script>
          </div>';
          }
          ?>

          Копируйте один к одному. Ошибка остается?
          • 12 февраля 2016 г.
          • нет, ошибка пропадает.

            но сам скрипт содержит символы " и ', и эти символы не дают обернуть его в кавычки или апострофы.

            • 12 февраля 2016 г.
            • Хорошо, методом исключения, т.к. не вижу Ваш код в целом.
              Код
              <?php
              if($this->diafan->_users->admin)
              {
              echo '<div class="livi">';
              echo "<script type='text/javascript'>
              document.write('<a href=\"//www.liveinternet.ru/click\" target=\"_blank\"><img src=\"//counter.yadro.ru/hit?t18.11;r'+
              escape(document.referrer)+((typeof(screen)=='undefined')?'':
              ';s'+screen.width+'*'+screen.height+'*'+(screen.colorDepth?screen.colorDepth:screen.pixelDepth))+';u'+escape(document.URL)+
              ';'+Math.random()+'\" alt=\"\" title=\"LiveInternet: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня\" border=\"0\" width=\"88\" height=\"31\"></a>');
              </script>";
              echo '</div>';
              }
              ?>

              Копируйте один к одному. Ошибка остается?
            • 12 февраля 2016 г. , редакция: 12 февраля 2016 г.
            • Цитата
              Алексей (Vargant) 32 минуты назад
              скрипт содержит символы " и ', и эти символы не дают обернуть его в кавычки или апострофы.

              Экранируйте их обратным слешем \"
              Код
              echo "<script>foo=\"url('bar')\"</script>";
              echo '<script>foo="url(\'bar\')"</script>';
  • 12 февраля 2016 г.
  • Отлично! Спасибо огромное! А про экранирование то я и не подумал, осёл! =))


    Еще раз спасибо!

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум