PiBot

PiBot

+18
Репутация
8
Рейтинг
#1 [ЕСТЬ РЕШЕНИЕ] Страница "Друзья" 14 апреля 2018 в 14:42

сверяй $this->cms_user->id c $profile['id'] если разные это чужой профиль))

use strict ;)

Благодарю, буду пробовать :)
#1 [ЕСТЬ РЕШЕНИЕ] Страница "Друзья" 14 апреля 2018 в 08:47
Доброго времени друзья! Помогите организовать проверку кто просматривает страницу друзей.
Пример: Если Я просматриваю свою страницу друзей (в которой скажем пусто) выводит одно сообщение (это уже есть), и если КТО ТО просматривает страницу моих друзей, выводит другое сообщение.

Спасибо за любую помощь.
#2 [ЕСТЬ РЕШЕНИЕ] Фотоальбомы 10 апреля 2018 в 15:16

добавь
Код PHP:
<?php echo html_button(LANG_CANCEL, 'cancel', "history.back();"); ?>

use strict ;)

спасибо за чудесный код :)
возвращаясь к своей проблеме я искал где же это место, которое меня переправляет с добавления альбомов на корневой каталог альбомов. Перерыв все файлы наконец то нашел item_form.tpl
Модифицировав не много предоставленный товарищем use strict, все получилось как и желал.
  1.  
  2. $this->addToolButton(array(
  3. 'class' => 'cancel',
  4. 'title' => LANG_CANCEL,
  5. 'href' => "javascript:history.back()"
  6. ));
  7.  
Если кому то будет интересно, почему именно такой способ вывода кнопки мне удобен, поясню в личку :)
#3 [ЕСТЬ РЕШЕНИЕ] Фотоальбомы 27 марта 2018 в 18:22


2. Теперь пользователь хочет добавить изображение. Нажимает "Добавить фотографии" и попадает на страницу photos/upload. Вот тут конечно выбора юзеру не оставили😊т.к. кнопки "Отмена" нету — вперед и только вперед :)

DrDooM
С этим делом разобрался, прикрутил кнопку "Отмена"
Для тех кому это надо, но не знает как:
идем по пути: \templates\default\controllers\photos
Заходим в файл: upload.tpl
после строки:
  1. $this->addBreadcrumb($title);
добавляем:
  1.  
  2. $this->addToolButton(array(
  3. 'class' => 'cancel',
  4. 'title' => LANG_CANCEL,
  5. 'href' => href_to($ctype['name'])
  6. ));
  7.  
Думаю для решения своего первого вопроса, нужно в альбомах, кнопке "Отмена" переназначить путь возврата. Ну пока буду ломать голову как, может кто подскажет, что именно вписать.
#1 [ЕСТЬ РЕШЕНИЕ] Фотоальбомы 22 марта 2018 в 21:29
Доброго времени суток! Изучая возможности хорошего компонент Photos, я наткнулся на несколько неприятных моментов:
1. Выводим кнопку "Мои фото" в меню users/{user.id}/content/albums. Далее пользователь нажимая на кнопку "Мои фото" попадает на страницу users/..../content/albums, жмет кнопку "Добавить фотоальбом", попадает на страницу albums/add. Если он создал альбом то возвращается на страницу со своими альбомами, если же он решил нажать "Отмена", то его перекидывает на страницу /albums. Тут юзер уже наблюдает все альбомы, которые остальные пользователи решили сделать видимыми для всех, а хотелось бы попадать обратно в свои альбомы. Так же хотелось бы фотоальбомы "показываемые для всех", были отображены всем пользователям только при посещении страницы хозяина фотоальбома. Есть ли возможность реализовать что то подобное? Пробовал поиграть с масками на страницах контента Фотоальбомы — не помогло, а так же на самих страницами Фотоальбомы. Думаю над вариантом вообще закрыть страницу /albums для просмотра, но куда тогда будет отправлять пользователя? в 404. Так же думал убрать управление приватностью, но в таком случае останется два варианта (в зависимости от изменения кода контроллера) либо все фотоальбомы будут доступны для всех либо только для друзей, в обоих случаях будут не довольны пользователи.
2. Теперь пользователь хочет добавить изображение. Нажимает "Добавить фотографии" и попадает на страницу photos/upload. Вот тут конечно выбора юзеру не оставили😊т.к. кнопки "Отмена" нету — вперед и только вперед😊. Предположим что она есть, он ее нажимает и попадет на страницу /photos, где тоже наблюдает все фото пользователей.
Буду благодарен за помощь где искать, что поменять, что добавить и что удалить :)
#4 [ЕСТЬ РЕШЕНИЕ] подвал шаблона 12 марта 2018 в 21:05


Здравствуйте скажите что надо прописать в этих позициях чтоб в подвале выводить виджиты. а то я в php не силен)))

@mishaka

а чем не устраивает уже имеющееся место под виджет?😊 Панель управления-> виджеты и страницы
#5 Глубиномер - Хлебные крошки - Breadcrumbs 7 марта 2018 в 18:11


Смотрю вот на глубиномер, в рамках проекта, уже 2 раза отключал его и возвращал. С одной стороны, для глубоковложенных страниц он очень полезен: например, когда мы в объявлениях, несколько этажей категорий — все круто и удобно.
С другой стороны на большинстве страниц он не только не нужен, но по сути в третий раз дублирует название страницы:
Иллюстрация

Новости Новости Новости. Надеюсь, пользователи уже поняли, что это Новости :)

Либо, в большинстве случаев, глубиномер позволяет только подняться наверх на 1 ступеньку из статьи/поста/новости, что в общем-то тоже не особо нужно, ведь пункт меню находится чуть выше.

Короче говоря, кто-нибудь может знает, как отключить breadcrumbs для всех страниц, кроме например страниц определенного типа контента? Например, включить только в объявлениях.
Если бы глубиномер был в виде виджета, было бы вообще прекрасно — включил только там где нужно и ок.

alkokrolik
Есть несколько вариантов, попробуй пока этот:
заходишь в файл main.tpl
находишь строки:
  1.  
  2. <?php if ($config->show_breadcrumbs && $core->uri && $this->isBreadcrumbs()){ ?>
  3. <div id="breadcrumbs">
  4. <?php $this->breadcrumbs(array('strip_last'=>false)); ?>
  5. </div>
  6. <?php } ?>
  7.  
меняешь на:
  1.  
  2. <?php $cont = cmsCore::getController('content'); ?>
  3. <?php if (!empty ($cont)) { ?>
  4. <?php if ($config->show_breadcrumbs && $core->uri && $this->isBreadcrumbs()){ ?>
  5. <div id="breadcrumbs">
  6. <?php $this->breadcrumbs(array('strip_last'=>false)); ?>
  7. </div>
  8. <?php } ?>
  9. <?php } ?>
  10.  
Если не ошибаюсь, должен включаться на страницах с контентом
#6 [ЕСТЬ РЕШЕНИЕ] Вывод блока на определенных страницах 3 марта 2018 в 15:07
Ну в общем разобрался, оказалось ничего сложного. Может кому пригодится. Выводим в боковом блоке контроллер Авторизации: подставляем часть коды в файле main.tpl.php
  1.  
  2. <aside>
  3. <?php if (!cmsUser::isLogged()){ ?>
  4. <div id="controller_wrap"><?php $this->body(); ?></div>
  5. <?php } ?>
  6. .............div div div..........
  7. </aside>
  8.  
Спасибо всем за помощь
#7 [ЕСТЬ РЕШЕНИЕ] Вывод блока на определенных страницах 3 марта 2018 в 09:39
Возможно еще поможете вытащить контроллер авторизации в сайдбар?
Я так понимаю в main.tpl необходимо добавить проверку на авторизацию, и как то вывести контроллер :
  1.  
  2. <aside>
  3. <?php if (!cmsUser::isLogged()){ ?>
  4. <?php echo cmsCore::getController ('auth') ?>
  5. <?php } ?>
  6. остальные блоки
  7. </aside>
  8.  
пока получаются только костыли, но я учусь :)
#8 [ЕСТЬ РЕШЕНИЕ] Вывод блока на определенных страницах 3 марта 2018 в 09:22


  1.  
  2.  
  3. ... ....
  4.  
  5.  

Loadырь

Благодарствую барин😊Все работает как надо, не хватило мозгов допилить первый способ :)
#9 [ЕСТЬ РЕШЕНИЕ] Вывод блока на определенных страницах 3 марта 2018 в 09:00


Тут все гораздо проще. Виджеты и страницы — создать страницу. В положительных масках указывает страницы, на которых должен быть блок. Документация по этой части внутри админки есть — как создавать маски

GWK

именно так и реализовано😊положительные маски: *auth*, отрицательные маски: auth/restore, auth/register
Вся проблема в том что для не авторизованных, cms выводит блок авторизации в теле страницы, а мне этого не нужно, мне нужно что бы в сайдбаре выводил. А поскольку в main.tpl за это отвечает controller_wrap и как вытащить из него контроллер auth я не знаю, мне приходится его прятать, а в сайдбаре вывел виджет. Вот так все не просто у меня :)
#1 [ЕСТЬ РЕШЕНИЕ] Вывод блока на определенных страницах 3 марта 2018 в 08:25
Приветствую всех! Уважаемые гуру ICMS нужна ваша помощь. Пытаюсь реализовать вывод определенного блока на страницах содержащих в адресе 'auth'. И наоборот, не отображать на этих же страницах. У меня есть два способа проверки, но каждый из них ведет за собой сложности. Сайт закрыт от не авторизованных пользователей.
1 Способ: Через определения ссылки
  1. $_SERVER['REQUEST_URI']
, вроде бы работает, но для всех подкатегорий приходится прописывать отдельно, иначе не работает:
  1. <?php if ($_SERVER['REQUEST_URI'] == '/auth/login?back=/' or $_SERVER['REQUEST_URI'] == '/auth/register' or $_SERVER['REQUEST_URI'] == '/auth/restore') { ?>
  2. ...блок....
  3. <?php } ?>
  4.  
И все бы ничего, но появляется проблема после того, как пользователь разлогинивается например со страницы новости и страница имеет вид:
...../auth/login?back=/news
И блок на этой странице уже не показывает.
Как то это муторно для каждого случая делать проверку.
2 Способ: Делаем проверку по контроллеру. Думаю что это вообще каряво, надеюсь поправит кто
  1.  
  2. <?php $auth = cmsCore::getController('auth'); ?>
  3. <?php if (!empty ($auth)) { ?>
  4. .......блок....
  5. <?php } ?>
  6.  
Этот метод почему то либо закрывает на всех страницах, либо показывает на всех страницах.
#1 Виджет Авторизации 14 февраля 2018 в 21:29
Доброго времени! Вопрос такой: при закрытом сайте, все не авторизованные попадают на страницу .../auth, а сам виджет авторизации выводится в центре. Как запихнуть его в сайдбар?
Я так понимаю что выводит его эта строчка в файле main.tpl.php
  1. <div id="controller_wrap"><?php $this->body(); ?></div>
Может быть добавить условие типо "если это login то отображать его в <aside>" ?
Или может что то подобное можно дописать в login.tpl.php ?
Подскажите пожалуйста :)
#10 Гостевая страница, админ, репутация. 12 февраля 2018 в 17:15
апну темку, вопросы актуальны :)
#1 Гостевая страница, админ, репутация. 6 января 2018 в 11:50
Доброго времени друзья! С наступающим Рождеством Всех!
Есть пару моментов на которые не могу найти ответы, и так:
1. При закрытии сайта от не авторизованных пользователей перенаправляет на страницу www......../auth/login?back=/. Все бы ничего при этом постоянно появляется ошибка о том, что доступ к запрошенной страницы закрыт от не авторизованных, по всей видимости потому что пытается на главную страницу попасть, ну да ладно, тут мы идем в main.tpl и убираем строки отвечающие за вывод ошибки, вроде бы ошибку спрятали но как то это не правильно😊Поэкспериментировав, нашел что ошибку не выдает если заходить сразу на www......./auth. Теперь вопрос как бы сделать проверку пользователя так, что бы не авторизованных сразу кидало на страницу аутентификации без ошибок?
2. Возможно вопрос избитый в прошлом но для меня он так и остался открытым. Как спрятать админа из ленты активности и вообще из видимости можно ли его убрать?
3. Однажды я спрашивал как отключить репутацию, рейтинг, но тогда ответом было все спрятать через CSS. Теперь есть возможность ее просто отключить и не выводить на страницах?
Благодарю всех за помощь :)
🍪Мы используем файлы cookie для работы сайта. Читать подробнее.