Стена пользователя в двойке на отдельной странице

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 6 декабря 2015 в 11:48
Вопрос в заголовке: как вывести стену пользователя в двойке на отдельную страницу и разместить ссылку на неё в "табах"?

Спасибо!
#2 7 декабря 2015 в 05:38
Если ссылка в табах необязательна, то нужно создать в папке /system/controllers/users/actions экшн profile_wall.php, который начинается с
  1. <?php
  2.  
  3. class actionUsersProfileWall extends cmsAction {
  4.  
  5. public function run($profile){
("profile_" в имени файла обязателен, иначе ссылку придется формировать через frontend.php) и заканчиваться
  1.  
  2. cmsTemplate::getInstance()->render('имя_файла_в_шаблоне', array( // /templates/default/controllers/users/имя_файла_в_шаблоне.tpl.php
  3. 'Все_что_объявлено_выше' => $передаеться_на_рендеринг_в_шаблон
  4. ));
  5. }
  6.  
  7. }
ну и внутри что-нибуть типа
  1. $wall_controller = cmsCore::getController('wall', $this->request);
  2.  
  3. $wall_target = array(
  4. 'controller' => 'users',
  5. 'profile_type' => 'user',
  6. 'profile_id' => $profile['id']
  7. );
  8.  
  9. $wall_permissions = array(
  10. 'add' => $user->is_logged && $user->isPrivacyAllowed($profile, 'users_profile_wall'),
  11. 'delete' => ($user->is_admin || ($user->id == $profile['id'])),
  12. );
  13.  
  14. $wall_html = $wall_controller->getWidget($wall_title, $wall_target, $wall_permissions);
А если ссылка в табах обязательна, то там надо с хуками возиться, насколько я понимаю.
#3 7 декабря 2015 в 11:42
Виктор, спасибо!

А если ссылка в табах обязательна, то там надо с хуками возиться, насколько я понимаю.

Виктор
И ссылка обязательна, и выход за шаблон не радует.
#4 7 декабря 2015 в 16:23
Олег Васильевич я, Честное слово не знаю как в таб вынести laughНасколько я понимаю, нужно создать
/system/controllers/wall/hooks/user_tab_info.php,
/system/controllers/wall/hooks/user_tab_show.php ,
/templates/default/controllers/wall/profile_tab.tpl.php.
И еще что-то, но я не смог найти что именно. sad
#5 7 декабря 2015 в 16:45
Олег Васильевич я, сделайте запрос в бд
  1. INSERT INTO `cms_users_tabs` (
  2. `id` ,
  3. `title` ,
  4. `controller` ,
  5. `name` ,
  6. `is_active` ,
  7. `ordering`
  8. )
  9. VALUES (
  10. NULL , 'Стена', 'users', 'wall', '1', '6'
  11. );
  12.  
Это выведет ссылку в табах, с остальным чуть позже раскажу, сейчас убегаю.
#6 7 декабря 2015 в 18:37
В продолжении надо смержить эти файлы.
#7 7 декабря 2015 в 19:08


В продолжении надо смержить эти файлы.

Loadырь
Спасибо огромное!
А что, не выйти за пределы шаблона никак нельзя?
#8 7 декабря 2015 в 19:16
Олег Васильевич я, не совсем видимо догоняю, попробуйте в файле \templates\default\controllers\users\profile_wall.tpl.php удалить строки
  1.  
  2. <div id="user_profile_header">
  3. <?php $this->renderChild('profile_header', array('profile'=>$profile)); ?>
  4. </div>
  5.  
#9 7 декабря 2015 в 19:16
Выглядеть будет как отдельная страница
#10 7 декабря 2015 в 19:18

А что, не выйти за пределы шаблона никак нельзя?

Олег Васильевич я
за пределами шаблона — только белая материя
#11 7 декабря 2015 в 19:24
Loadырь, спасибо за помощь!
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.