Админ не может изменить статус пользователя

#1 14 июля 2017 в 00:19
Случайно обнаружил проблему со статусом в профиле пользователя.
Думал у меня галюны начались, но нет, проверил на чистой и там такая же история.
Никто, кроме самого пользователя не может удалить то, что там написано.

Решил у себя так:

Добавил пару строк в controllers/users/profile_header.tpl.php

Находим подобный кусок
  1.  
  2. <?php if ($profile['id'] == $user->id) { ?>
  3. <span class="delete">
  4. <a href="#delete-status" onclick="return icms.users.deleteStatus(this)" data-url="<?php echo $this->href_to('status_delete', $profile['id']); ?>"><?php echo LANG_DELETE; ?></a>
  5. </span>
  6. <?php } ?>
  7. <?php } ?>
  8. </div>
  9. <?php } ?>
  10.  
  11. <?php if ($this->controller->options['is_status'] && $profile['id'] == $user->id) { ?>
  12. <script><?php
  13. echo $this->getLangJS('LANG_REPLY', 'LANG_USERS_DELETE_STATUS_CONFIRM');
  14. ?></script>
  15.  
  16. <div id="user_status_widget">
  17. <?php
  18. echo html_input('text', 'status', '', array(
  19. 'maxlength' => 140,
  20. 'placeholder' => sprintf(LANG_USERS_WHAT_HAPPENED, $profile['nickname']),
  21. 'data-url' => $this->href_to('status'),
  22. 'data-user-id' => $profile['id']
  23. ));
  24. ?>
  25. </div>
  26.  
  27. <?php } ?>
  28.  
И добавляем условие показа кнопки "УДАЛИТЬ" если ты админ
  1.  
  2. <?php if ($profile['id'] == $user->id or $user->is_admin) { ?>
  3. <span class="delete">
  4. <a href="#delete-status" onclick="return icms.users.deleteStatus(this)" data-url="<?php echo $this->href_to('status_delete', $profile['id']); ?>"><?php echo LANG_DELETE; ?></a>
  5. </span>
  6. <?php } ?>
  7. <?php } ?>
  8. </div>
  9. <?php } ?>
  10.  
  11. <?php if ($this->controller->options['is_status'] && $profile['id'] == $user->id or $user->is_admin) { ?>
  12. <script><?php
  13. echo $this->getLangJS('LANG_REPLY', 'LANG_USERS_DELETE_STATUS_CONFIRM');
  14. ?></script>
  15. <?php } ?>
  16. <?php if ($this->controller->options['is_status'] && $profile['id'] == $user->id) { ?>
  17. <div id="user_status_widget">
  18. <?php
  19. echo html_input('text', 'status', '', array(
  20. 'maxlength' => 140,
  21. 'placeholder' => sprintf(LANG_USERS_WHAT_HAPPENED, $profile['nickname']),
  22. 'data-url' => $this->href_to('status'),
  23. 'data-user-id' => $profile['id']
  24. ));
  25. ?>
  26. </div>
  27.  
  28. <?php } ?>
#2 14 июля 2017 в 09:54
Недоработка. На Git
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.