[Решено] не голосовать за свои материалы vote up down

Главные вкладки

Аватар пользователя lopata24 lopata24 11 ноября 2009 в 14:56

Скажу сразу, поиском пользовался. И на Швабре тоже смотрел, тем не менее под мои нужды решения не походили.
Помогите сделать так, чтобы автор не мог голосовать за свои материалы! Весь день методом тыка пытаюсь наладить, но никак ((

Комментарии

Аватар пользователя T-34 T-34 11 ноября 2009 в 17:01

Если виджет выводится в node.tpl.php таким образом:

<?php print(theme("vote_up_down_widget", $node->nid, 'node')); ?>

то решить задачу можно так:

<?php global $user; if ($uid != $user->uid): ?>
  <?php print(theme("vote_up_down_widget", $node->nid, 'node')); ?>
<?php endif ?>
Аватар пользователя lopata24 lopata24 11 ноября 2009 в 17:15

Отлично, уже лучше
Но вот только тогда автору виджет вообще не выводится! как сделать, чтобы выводился, но стрелки были неактивными?

p.s. спасибо огромное уже за это )

Аватар пользователя T-34 T-34 11 ноября 2009 в 19:20
      <?php
        if (user_access('view up/down votes')) {
          global $user;
          if ($uid != $user->uid) {
            print(theme("vote_up_down_widget", $node->nid, 'node'));
          }
          else {
            print(theme("vote_up_down_points", $node->nid, 'node'));
          }
        }
      ?>

Так автору будет показываться только сумма голосов без стрелок. Чтобы стрелки были неактивными, надо править template_preprocess_vote_up_down_widget, а мне честно говоря лень Smile

Аватар пользователя lopata24 lopata24 11 ноября 2009 в 17:32

T-34
Спасибо все равно. В моем незнании php я решил проблему "не правильно", но так:

<?php global $user; if ($uid != $user->uid): ?>
<?php print(theme("vote_up_down_widget", $node->nid, 'node')); ?>
<?php else: ?>
<img src="ссылка на неактивные стрелки" alt="Вы не можете голосовать за свой контент">
<?php endif ?>

Smile

Правда, alt почему-то не всплывает (

Аватар пользователя lopata24 lopata24 11 ноября 2009 в 21:02

T-34
Слушай, а как тоже самое для комментариев сделать?
а то мое для комментов

<?php global $user; if ($uid != $user->uid): ?>
<?php print(theme("vote_up_down_widget", $comment->cid, 'comment')); ?>
<?php else: ?>
<img src="ссылка на неактивные стрелки" title="Вы не можете голосовать за свой материал!">
<img src="ссылка на неактивные стрелки" title="Вы не можете голосовать за свой материал!">
<?php endif ?>

чего-то не работает. Голосовать все могут, в том числе и автор =\

Аватар пользователя lopata24 lopata24 11 ноября 2009 в 23:24

Опять решил проблему и опять "не правильно"
Но-так изучаю drupal с php nтем, ем имею ))
смейтесь, сделал так!

<?php global $user; if (comment_access('edit','delete',$comment)): ?>
<?php print(theme("vote_up_down_widget", $comment->cid, 'comment')); ?>
<?php elseif (comment_access('edit',$comment)): ?>
<img src="ссылка на неактивные стрелки" title="Вы не можете голосовать за свой материал!">
<img src="ссылка на неактивные стрелки" title="Вы не можете голосовать за свой материал!">
<?php else: ?>
<?php print(theme("vote_up_down_widget", $comment->cid, 'comment')); ?>
<?php endif ?>