создать Кнопку добавить в друзья

ЕСТЬ РЕШЕНИЕ InstantCMS 2.X
#1 2 марта 2022 в 18:57

делаю в профиле кнопки написать сообщение и кнопку добавить в друзья, написать сообщение кнопка работает а вот со второй беда, даже не проявляется в профиле. Что я делаю не так? что поменять?

  1. <?php if(isset($this->menus['toolbar']) && $this->menus['toolbar']){ ?>
  2.  
  3.  
  4. <ul class="user_profile_buttons">
  5. <?php foreach($this->menus['toolbar'] as $tb){
  6. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){
  7. continue;
  8. }
  9. if($tb['title']=='Написать сообщение'){
  10. $tb['title'] = 'Сообщение';
  11. }
  12. ?>
  13. <?php
  14. $onclick = isset($tb['options']['onclick']) ? $tb['options']['onclick'] : false;
  15. $onclick = isset($tb['options']['confirm']) ? "return confirm('{$tb['options']['confirm']}')" : $onclick;
  16. $css_classes = array();
  17. if (!empty($tb['options']['class'])){$css_classes[] = $tb['options']['class'];}
  18. ?>
  19.  
  20. <li <?php if ($css_classes) { ?>class="nav-item <?php echo implode(' ', $css_classes); ?>"<?php } ?>>
  21. <a href="<?php html($tb['url']); ?>" class="btn"><span><?php html($tb['title']); ?></span></a>
  22. </li>
  23.  
  24.  
  25.  
  26.  
  27. <?php } ?>
  28.  
  29. </ul>
  30.  
  31. <?php } ?>
#2 2 марта 2022 в 21:53
  1. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){

Возможно надо && заменить на ||  то есть (или)

#3 3 марта 2022 в 00:50
  1. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){

Возможно надо && заменить на ||  то есть (или)

Tolyaш

Увы нет, на 2.13.1 работал именно этот код, на последней версии почему то не хочет 

#4 3 марта 2022 в 08:53
  1. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){

Тогда здесь же измените  !== на !=

#5 3 марта 2022 в 13:09
  1. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){

Тогда здесь же измените  !== на !=

Tolya

К сожалению не помогло 

#6 3 марта 2022 в 13:15

К сожалению не помогло 

Happy

Интересно как вот так бывает, копирую код вставлю себе в файл profile_view.tpl заменяю !== на Не равно (!=) и работает.

Сейчас вопрос даже не к вам, а так рассуждение в плане спама. Не вы первый не вы последней у кого просто (не работает) (не помогло). Просто интересно НУ КАК ТАК? 🤣🤣 

Все чаще хочется проходить темы мимо 😕.

ИЗВИНИТЕ ЗА СПАМ, СНИМАю ШЛЯПУ!!!

#7 3 марта 2022 в 13:22

К сожалению не помогло 

Happy

Интересно как вот так бывает, копирую код вставлю себе в файл profile_view.tpl заменяю !== на Не равно (!=) и работает.

Сейчас вопрос даже не к вам, а так рассуждение в плане спама. Не вы первый не вы последней у кого просто (не работает) (не помогло). Просто интересно НУ КАК ТАК? 🤣🤣 

Все чаще хочется проходить темы мимо 😕.

ИЗВИНИТЕ ЗА СПАМ, СНИМАю ШЛЯПУ!!!

Tolya

Может вы на другом шаблоне тестите, мне помог способ заменить !== на ==

Ну это благодаря вам в любом случае, вашим наводкам, так что спасибо и продолжайте помогать людям ;)

#8 3 марта 2022 в 15:07

мне помог способ заменить !== на ==

Happy

так вить это не логично, так как

  1. foreach($this->menus['toolbar'] as $tb){
  2. if($tb['title']!=='Написать сообщение' && $tb['title']!=='Добавить в друзья' && $tb['title']!=='Убрать из друзей'){
  3. continue;
  4. }

мы перебираем масив меню через цикл и в условие пишем что если title не равен значение то пропускаем не нужные нам пункты меню, тем самым оставляя нужные, вы же получается изменили не равно (!==) на равно (==) то есть в вашем случае получается если title равен значение то пропускаем!!! И получается что в вашем случае остаются совсем другие пункты меню. 

или ковид добил мои мозги и превратил их в жижку и я уже не чего не понимаю (и мне стоит об этом задуматься)🤣

#9 3 марта 2022 в 15:39

 Tolya, предположу, что вместо строк 'Написать сообщение', 'Добавить в друзья', 'Убрать из друзей' должны использоваться языковые константы. Тогда и условия будут работать.

#10 3 марта 2022 в 15:48

предположу, что вместо строк 'Написать сообщение', 'Добавить в друзья', 'Убрать из друзей' должны использоваться языковые константы. Тогда и условия будут работать.

IamB

Условия работает если убрать жёсткое сравнения !== и не сравнивать тип

мне интересно другое как не равно стало равном и заработало, этож не логично если просмотреть код. 😃

#11 3 марта 2022 в 16:29

предположу, что вместо строк 'Написать сообщение', 'Добавить в друзья', 'Убрать из друзей' должны использоваться языковые константы. Тогда и условия будут работать.

IamB

Условия работает если убрать жёсткое сравнения !== и не сравнивать тип

мне интересно другое как не равно стало равном и заработало, этож не логично если просмотреть код. 😃

Tolya

Извини мой косяк, ты прав, я подставлял другой текст кнопке ( не системный, по этому не работало ) сейчас вернул все на свои места и о чудо ) спасибо !

#12 4 марта 2022 в 12:26

Все чаще хочется проходить темы мимо 😕.

Tolya

Это нормально. Если нет минимального эмоционального отклика на твою работу по осмыслению чужой ситуации, на твоё, пусть иногда неуклюжее желание помочь, с некоторого времени выставляю у себя в уме такому человеку чек-бокс и далее иду мимо его тем.

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.