Вторая попытка создать эту тему. К сожалению, предыдущий текст форум "зажевал" (подробности - здесь), поэтому сейчас буду краток.
В небольших соцсетях есть проблема - мало людей вступают в группы. Один из способов улучшить ситуацию - сделать возможность вступления в группы со страницы обзора, чтобы у каждой группы была ссылка "вступить в группу".
Для этого находим в browse_groups.tpl:
HTML:
<div>
{$groups[group_loop].group->group_info.group_desc|strip_tags|truncate:300:"...":true}
</div>
После вставляем:
HTML:
{if $user->user_exists}
<a href="javascript:TB_show('{lang_print id=2000165}', 'user_group_manage.php?group_id={$groups[group_loop].group->group_info.group_id}&TB_iframe=true&height=300&width=450', '', './images/trans.gif');">
{lang_print id=2000165}
</a>
{/if}
Всё
Этот же код можно ставить и на главную страницу, если у вас там выводятся новые группы.
Остаётся вопрос, как сразу же определять, состоит ли пользователь в группе (в данном хаке это не учитывается), чтобы для этих групп не выводить ссылку "вступить в группу".
Мой вариант - добавить в browse_groups.tpl вместо предыдущего кода следующее:
HTML:
{if $user->user_exists}
{if $groups[group_loop].group->groupmember_info.groupmember_id != 0 && $groups[group_loop].group->groupmember_info.groupmember_approved != 1}
<div class='nolink'>
{lang_print id=2000223}
</div>
{elseif $groups[group_loop].group->groupmember_info.groupmember_id != 0 && $groups[group_loop].group->groupmember_info.groupmember_approved == 1}
<a href="javascript:TB_show('{lang_print id=2000203}', 'user_group_manage.php?group_id={$groups[group_loop].group->group_info.group_id}&TB_iframe=true&height=300&width=450', '', './images/trans.gif');">
{lang_print id=2000203}
</a>
{else}
<a href="javascript:TB_show('{lang_print id=2000165}', 'user_group_manage.php?group_id={$groups[group_loop].group->group_info.group_id}&TB_iframe=true&height=300&width=450', '', './images/trans.gif');">
{lang_print id=2000165}
</a>
{/if}
{/if}
Однако, данный фильтр не работает, потому что условия вроде {if $groups[group_loop].group->groupmember_info.groupmember_id} и т.п. шаблонизатору непонятны.
Буду очень благодарен за помощь в решении проблемы.
Кому пригодился хак - не забывайте про "спасибо"
Чтобы в группы вступало ещё больше людей, обязательно поставьте это >>.