Плагин - показывать форму «Контакты» только зарегистрированным юзерам

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 20 мая 2013 в 20:10
Проект: доска объявлений на 1.9
В конце каждого объявления привязана форма «Контакты», созданная с помощью конструктора форм.
Нужно реализовать плагин, который будет показывать форму «Контакты» только зарегистрированным пользователям, которые загрузили свой Аватар и заполнили поля профиля.

Кто-нибудь такое уже реализовал, реально это?
#2 21 мая 2013 в 01:32
плагин нет — хак вот:
Там где идёт код
  1.  
  2. ...
  3. {if $formsdata}
  4. ...
  5. {foreach key=tid item=form from=$formsdata}
  6. {if $form.field}
  7. ...
  8.  
обносим это условием проверки что он залогиненен, в else пишем что будет если это гость.
Но вот про проверку заполнения профиля не подскажу.
#3 21 мая 2013 в 14:06

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

Алексей
К сожалению, я не прогер и для меня нужно написать как для чайника, что я понял… cry
#4 23 мая 2013 в 19:05
up
#5 23 мая 2013 в 20:27
Man, найдите в com_board_item.tpl:
  1. <div class="bd_text_full">
  2. <p>{$item.content}</p>
  3. {if $formsdata}
  4. <table width="100%" cellspacing="0" cellpadding="2" style="border-top:1px solid #C3D6DF; margin:5px 0 0 0">
  5. {foreach key=tid item=form from=$formsdata}
  6. {if $form.field}
  7. <tr>
  8. <td valign="top" width="140px">
  9. <strong>{$form.title}:</strong>
  10. </td>
  11. <td valign="top">
  12. {$form.field}
  13. </td>
  14. </tr>
  15. {/if}
  16. {/foreach}
  17. </table>
  18. {/if}
  19. </div>
замените на:
  1. <div class="bd_text_full">
  2. <p>{$item.content}</p>
  3. {if $formsdata}
  4. {php}
  5. $inUser = cmsUser::getInstance();
  6. if (!$inUser->id){
  7. {/php}
  8. <p>Тест для гостей (его культурнее будет в LANG куда-то засадить)</p>
  9. {php} } else { {/php}
  10. <table width="100%" cellspacing="0" cellpadding="2" style="border-top:1px solid #C3D6DF; margin:5px 0 0 0">
  11. {foreach key=tid item=form from=$formsdata}
  12. {if $form.field}
  13. <tr>
  14. <td valign="top" width="140px">
  15. <strong>{$form.title}:</strong>
  16. </td>
  17. <td valign="top">
  18. {$form.field}
  19. </td>
  20. </tr>
  21. {/if}
  22. {/foreach}
  23. </table>
  24. {php}}
  25. {/php}
  26. {/if}
  27. </div>
Тест для гостей напишите какой нужно. Он будет выводиться вместо формы.
Удачи!
#6 23 мая 2013 в 22:36
Спасибо! Работает!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.