Александр Наумов

Александр Наумов

С нами с 15 декабря 2012; Место в рейтинге пользователей: #103

Поиск по 2Gis на MODX

Всем привет. Решил написать компонент поиска по 2gis кому интересно смотреть тут.
Кто не в курсе это:
Более 1 533 000 компаний и свыше 2 115 000 POI. Точный адрес, вся контактная информация, время работы и способы оплаты.
Картографические данные и многое другое...
Многое еще не реализовано, но попробовать можно тут — поиск по 2gis


пока работает:
-поиск по организациям
-поиск по координатам
-вывод списка результатов
-вывод профиля фирмы
-вывод рекламы от 2gis
Володя
20 июня 2014, 09:39
modx.pro
4
2 829
+5

Реализация выбора города

Василий, большое спасибо за уроки по созданию компонента! Весь день усиленно вчитываюсь)
Маленькая проба пера — компонент по выбору города.
Есть на демо сайте — тут
joxi.ru/J3acU_3JTJAsY2beWkM
Володя
14 июня 2014, 16:16
modx.pro
12
9 963
+7

Как начать участвовать в Open Source

Какое-то время назад я считал, что порог вхождения в OpenSource-разработку очень высок — ведь надо использовать git, отправлять пулл-реквесты. Это было чем-то незнакомым, далеким и останавливало меня. Тем более, что весь github.com на английском и многие слова и, соответственно, функции непонятны.

Однако сейчас я понимаю, как ошибался. Надеюсь, что после этой статьи вы согласитесь со мной и начнете вносить свой вклад в сообщество Open Source (и сообщество MODX в частности). Предлагаю на примере разобрать, как помочь разработчикам радовать нас дополнениями и уроками.
Илья Уткин
25 апреля 2014, 00:14
modx.pro
14
6 010
+9

Выборка pdoPage where по дате

Добрый день. В тикете можно указать дату мероприятия через бекенд, вот выборка, которая показывает сегодняшние мероприятия:
[[!pdoPage?
&element=`getTickets`
&includeTVs=`program-start`
&tpl=`program-list-ru`
&sortby=`program-start` &sortbyTV=`program-start` &sortdirTV=`ASC` &sortby=``
&where=`{«program-start:LIKE»:"%[[!today]]%"}`
]] — тут всё ок

Как сделать, чтобы была выборка по сегодняшним и предстоящим?
Пробовал:
[[!pdoPage?
&element=`getTickets`
&includeTVs=`program-start`
&tpl=`program-list-ru`
&sortby=`program-start` &sortbyTV=`program-start` &sortdirTV=`ASC` &sortby=``
&where=`({«program-start:LIKE»:"%[[!today]]%"}) AND ({«program-start RLIKE '[[:>:]]%[[!today]]%'»}) `
]]
Andrei D.
15 апреля 2014, 09:09
modx.pro
6
5 350
0

Кастомизация TicketForm

Доброго времени суток, сообщество =)

На днях, видел вопрос человека, еще на старом сайте сообщества, о том, как же добавить свои поля в форму редактирования\создания тикетов.

Вот мой вариант, который только что написал. За основу, в целом взял подход Василия (ну т.е так как сделано тут), т.к считаю его оптимальным.
Clean
14 апреля 2014, 19:05
modx.pro
8
2 846
+2

Подписка на блоги

На нашем сайте проведено большое обновление на последнюю версию Tickets.

Теперь можно подписываться на блоги, для чего нужно просто кликнуть на соответствующем чекбоксе.


Подробности по ссылке в моём блоге.
Василий Наумкин
13 апреля 2014, 13:44
modx.pro
3
1 257
+6

Расширенные поля пользователей

Небольшая пошаговая инструкция, как научиться сохранять любые интересующие данные о юзере в специальное поле extended.

На самом деле, это никакой не секрет. Во многих объектах MODX есть специальное поле типа JSON, которое хранится в БД как текст, например, properties у modResource и extended у modUserProfile.

При работе с объектами xPDO, JSON текст из этих полей превращается в массивы. То есть, общий принцип выглядит так:
// id нужного пользователя
$user_id = 15;
// Получаем объект modUser
if ($user = $modx->getObject('modUser', $user_id)) {
	// Получаем связанный с ним профиль пользователя
	if ($profile = $user->getOne('Profile')) {
		// Получаем специальное поле extended
		$extended = $profile->get('extended');
		// Добавляем новое значение
		$extended['mykey'] = 'mydata';
		// И сохраняем обратно в профиль
		$profile->set('extended', $extended);
		$profile->save();
	}
}
Самое приятное, что эти данные вы можете не только просмотреть на странице пользователя, но и изменить.
Василий Наумкин
07 апреля 2014, 11:00
modx.pro
40
16 524
+11

Нужен способ через API чистить кэш одного ресурса

Помогите кто знает

Нужен способ через API чистить кэш одного ресурса — товара в miniShop2

Что мне удалось нарыть самостоятельно:
forums.modx.com/index.php?topic=59814.0
Reply #6 — не работает
Reply #7 от Боба Рея — процессор не чистит кэш ресурса. Стопудово. Нужно чистить после внесения изменений. А я изменения вношу напрямую через MySQL (импортирую файл большого объёма) по расписанию каждый час.

Чистить кэш всего сайта каждый час — вообще не вариант, учитывая определённые уязвимости.

Последнее, что я пробовал, что в моём понимании должно было работать, но по факту не работает:
<?php
$id=27;
$resource=$modx->getObject('modResource',$id);
$alias=$resource->get('alias');
$params=array(
  'id' => $id
, 'alias' => $alias
, 'alias' => $alias
,'context_key' => 'web'
);
$options=array();
$res=$modx->runProcessor('resource/update', $params,$options);

return $res;
Илья Ершов
28 марта 2014, 09:02
modx.pro
4
6 374
0

Система личных сообщений

Доброго времени суток!
Я смотрю в сообществе Василия краудфандинг начал приживаться, это хорошо и даже очень.

Есть предложение собраться, обмозговать и скинуться на систему личных сообщений для MODx,
на первой версии достаточно думаю P2P реализации, т.е один человек пишет другому,
должно быть уведомление о получении сообщения, а так же о его прочтении.
Собеседники дожлны так же видеть статус друга друга-Online\Offline.
Нотификация о получении личного сообщения должна быть реализована в реальном времени-отличный пример является VK.com.
Clean
03 февраля 2014, 17:21
modx.pro
1
4 189
+8

Вывод категорий товара тегами

Может быть кому-нибудь еще понадобится вывести все категории текущего товара. Делюсь.
Виктор Долгий
30 июня 2013, 20:37
modx.pro
5
5 824
0