Получить айди пользователя из строки

#1 4 октября 2018 в 16:06
Привет всем, как мне получить 121 из строки.
instantcms.ru/users/121

Задача в хуке сравнить моя ли это страница пользователя. На ум приходит только одно, стравнение айди из строки и $user->id
Может есть какие варианты другие, но тем не менее вопрос такой😊
#2 4 октября 2018 в 16:22
Что-то мне подсказывает, что данный функционал уже есть в системе, зайдя в профиль пользователя система определяет ваша это страница или нет.
Посмотрите в сторону компонента USERS.
#3 4 октября 2018 в 16:42

Задача в хуке сравнить моя ли это страница пользователя.

Рачей
В каком именно хуке?
#4 4 октября 2018 в 16:48


Задача в хуке сравнить моя ли это страница пользователя.

Рачей
В каком именно хуке?

Loadырь

controller/users/widgets_before_list
#5 4 октября 2018 в 16:49


Что-то мне подсказывает, что данный функционал уже есть в системе, зайдя в профиль пользователя система определяет ваша это страница или нет.
Посмотрите в сторону компонента USERS.

Win_wiruzz

а как конкретно это посмотреть?
#6 4 октября 2018 в 17:04
Рачей, можно попробовать через
  1. $uri_data = cmsCore::getInstance()->getUriData();
  2. if($uri_data['action'] == cmsUser::get('id')){ тут если страница совпала с посетителем })
#7 4 октября 2018 в 17:09

Привет всем, как мне получить 121 из строки.
instantcms.ru/users/121

Рачей
Не самый кошерный вариант, но самый простой — посмотреть в $_SERVER['REQUEST_URI']
#8 4 октября 2018 в 17:23


Рачей, можно попробовать через

  1. $uri_data = cmsCore::getInstance()->getUriData();
  2. if($uri_data['action'] == cmsUser::get('id')){ тут если страница совпала с посетителем })

Loadырь
Спасибо. Сработало на отлично! То что надо.
#9 4 октября 2018 в 17:30
Рачей,

  1. $current_profile = cmsModel::getCachedResult('current_profile');
  2. $id = $current_profile['id'];
  3.  
еще вариант в копилку
#10 4 октября 2018 в 17:32


Рачей,

  1. $current_profile = cmsModel::getCachedResult('current_profile');
  2. $id = $current_profile['id'];
  3.  
еще вариант в копилку

@SmartControl
Спасибо, я тем воспользовался😊 Все работает как надо. Может кому еще кроме меня пригодится😊
#11 4 октября 2018 в 17:43

Спасибо, я тем воспользовался

Рачей
В том условии ещё желательно поставить в условие $uri_data['controller'] == 'users', чтобы на страницах каких-нибудь сторонних компонентов не сработало.
  1. if($uri_data['controller'] == 'users' && $uri_data['action'] == cmsUser::get('id'))
#12 4 октября 2018 в 17:53


Спасибо, я тем воспользовался

Рачей
В том условии ещё желательно поставить в условие $uri_data['controller'] == 'users', чтобы на страницах каких-нибудь сторонних компонентов не сработало.
  1. if($uri_data['controller'] == 'users' && $uri_data['action'] == cmsUser::get('id'))

Loadырь

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