Помогите портировать код joomla => modx

Добрый день.

Помогите плиз разобраться, направьте в нужную сторону))

например вот

$input = JFactory::getApplication()->input;

есть код:
?php
defined('_JEXEC') or die;

include "/usr/local/www/joom/templates/source_moduls/common.php";

$input = JFactory::getApplication()->input;
 
 
// получаем ID из адресной строки (из $_GET)
$user_id = $input->getInt('userid', 0);

echo "<div class=\"uk-panel uk-panel-box uk-panel-contents\">";
echo "<table border=0 width=\"100%\">";
if ($user_id == 0)
{
	$res = $mysqli_erp->query("SELECT ID FROM erp.Users WHERE Name ='$user->name'");
	if ($user_data = $res->fetch_object())
		$user_id = $user_data->ID;
	$res->close();
}

$result = $mysqli_erp->query("SELECT *
						FROM `erp`.`Users`
						WHERE `erp`.`Users`.`ID` = '$user_id'");
if ($user_data = $result->fetch_object())
{
	//выдираем дату рождения, убираем год и делаем красиво
	if ($user_data->Birthday == "0001-01-01")
		$birthdate = "не указан";
	else
	{
		$date = explode("-", $user_data->Birthday); ///yyyy-mm-dd
		$d = $date[2] + 0;
		$birthdate = $d . " " .$months_genitive[$date[1]-1];
	}
	$phone = $user_data->WorkPhone != 0 ? $user_data->WorkPhone : '';
	echo	"<table border=0>
			<tr><td width = 600 valign = top>
			<p><b>Имя:</b> $user_data->Name
			<p><b>Должность:</b> $user_data->Position
			<p><b>Отдел:</b> $user_data->Department
			<p><b>E-mail:</b> <a href=mailto:$user_data->Mail>$user_data->Mail</a>
			<p><b>Мобильный:</b> $user_data->Cellphone
			<p><b>Внутр. номер:</b> $phone
			<p><b>День рождения:</b> $birthdate
			</td>";

	if (file_exists("/usr/local/www/joom/images/photo/$user_id.jpg"))
	{
		echo "<td width = 300 align = center>
			<img src='/images/photo/$user_id.jpg' class='thanks'>
			</td></tr></table>";
	}
	else
		echo "<td width = 500 align = right>
			<img src='/images/user.png'>
			</td></tr></table>";

}
	$result->close();

echo "</table></div>";
Pavel
02 декабря 2022, 15:41
modx.pro
384
0

Комментарии: 4

Артур Шевченко
03 декабря 2022, 01:15
+1
Код приведённый выше делает выборку пользователей из БД по Id или имени и возвращает данные найденных пользователей в виде html таблицы. Если надо тоже самое сделать в Modx, то вот статья о том как делать запросы к БД средствами этой CMS. Данные пользователей хранятся в таблицах modx_users и modx_user_attributes. Джойнить по modx_users.id=modx_user_attributes.internalKey.
    Pavel
    06 декабря 2022, 18:39
    0
    я всё равно не могу понять, что обозначает эта строка
    $input = JFactory::getApplication()->input;
    из чего формируется
    $input
    что такое
    JFactory::getApplication()
    и ещё не понимаю тут
    $user_id = $input->getInt('userid', 0);
    это метод какой-то?
    getInt
    Остальное всё для меня постижимо))
    У меня цель тянуть данные из внешней БД
      Константин Ильин
      06 декабря 2022, 20:46
      +1
      JFactory::getApplication() — это класс JFactory и вызываемая функция getApplication

      getInt функция

      В целом эти две строчки не нужны вам(они нужны для получения userid из GET) Вы сами можете сделать это без всяких функций например (int) $_GET['userid'], а дальше вы сами разберетесь)
        Pavel
        06 декабря 2022, 21:39
        0
        Спасибо ребята огромное! Обожаю вас!
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4