Всего 125 340 комментариев

Алексей Карташов
02 мая 2013, 20:18
0
Не, меня всё устраивает :-)
Тем более, если других вариантов нет)
Василий Наумкин
02 мая 2013, 19:22
0
Очень просто: юзер инициализируется до загрузки страницы, на которой отрабатывает твой скрипт с авторизацией.

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

Так что, твой код вполне нормальный, ничего не сломается. Если хочешь более красивого решения — можно унаследовать процессор и переписать, как тебе нужно.
Алексей Карташов
02 мая 2013, 19:11
0
Тогда по логике получается, что это не доработка системы? Или ошибка?
Почему бы юзера сразу не перезаписывать? У разработчиков были причины?
А если были, то есть вероятность, что при таком подходе что-то где-то может сломаться или сработать не так…

Но вообще, странное, на мой взгляд, поведение.
Василий Наумкин
02 мая 2013, 19:03
0
На мой взгляд — зависит. Там есть товары (аренда билбоардов), корзина и заказ.

То есть, это интернет-магазин, только очень хитро оформленный.
Алексей Карташов
02 мая 2013, 18:52
0
В общем, пока выход такой:
Чтобы данные о пользователе в системе были доступны сразу же после логина, надо просто перезаписывать $modx->user:
$modx->user = $user;
При логауте устанавливать в анонима:
$modx->user = $modx->getObject('modUser', 0);
Не знаю, на сколько правильный подход и что может сломаться при таком действии, но другого варианта я пока не вижу.

Если кто-то прочитает это после праздников и у него будут мысли по этому поводу — не стесняйтесь их здесь высказывать :-)
Степанов Максим
02 мая 2013, 18:50
0
спасибо я уже разобрался
Алексей Карташов
02 мая 2013, 18:46
0
Так, на тестовом мой косяк, внутри функции loginUser забыл написать global $modx.

А вот по сабжу выяснилось вот что: юзер логинится, но это становится видно только после перезагрузки страницы.
Т.е. получается, что при
$modx->runProcessor('security/login', $data);
в $modx->user пользователь станет доступен не прям сразу после вызова процессора, а только при перезагрузке страницы. С логаутом та же картина.
Уже что-то, но всё-равно не годится :-(
Алексей Карташов
02 мая 2013, 18:19
0
Попробовал сейчас на тестовом воспроизвести, так там вообще система не даёт пользователя зарегистрировать — в лог падает ошибка:
User create error. Username: mail@example.com, Message: not_logged_in
Ну т.е. в лог ошибку-то я записываю, но вот not_logged_in (Не вошёл!) процессор отдаёт. И почему вот он её отдаёт?..
Мордынский Николай
02 мая 2013, 15:47
0
Эта реализация не зависит от CMS или CMF это yandex map api а вставить его ее реализацию можно куда захочется главное разобраться в ней и дописать что надо.
Василий Наумкин
02 мая 2013, 12:31
0
Разберись один раз, поставь виртуальную машину и забудь о подобных проблемах.

Я так и работаю.
Igor Ivanov
02 мая 2013, 11:56
0
Спасибо, я верю и знаю что все будет ок. На MODX Cloud с первого раза все заработало. Но мне удобнее работать на локальной машине, хочу разобраться. Спасибо еще раз. Если ты не против, я буду сюда писать, если еще что обнаружу, ну и когда найду причину. Может еще кому пригодиться. Это не просьба о помощи лично к тебе, а так, мои 5 копеек в общую копилку. Может еще есть чудики на винде.
Василий Наумкин
02 мая 2013, 11:49
0
Честно, не знаю, что может происходить на Windows, у меня его нет.

Попробуй сделать сайт на modx-test.com — там всё будет ок.
Igor Ivanov
02 мая 2013, 11:31
0
Нет, PHP 5.3.2 + Apache 2.2 + MySQL 5.5.28 на Win 7
Василий Наумкин
02 мая 2013, 11:29
0
Локальный сервер? Уж не Denwer, ли?
Igor Ivanov
02 мая 2013, 10:21
0
В продолжение, на локальном сервере, на котором была ошибка «TicketComment_err_save» при нажатии кнопки «написать» и в журнале появлялось сообщение об ошибке «Incorrect datetime value: '0' for column 'editedon' at row 1» обнаружил следующее:
Если в таблице modx_tickets_comments поменять типы полей editedon и deletedon на int, то комменты записываются, т.е. создаются. Правда потом, само собой, нельзя отредактировать или удалить их, т.к. возникают проблемы с записью даты в соответствующие поля. Но создание комментария работает, т.е. 0 в эти поля тогда записывается.
P.S. Только что безграничная сила моего разума позволила мне сообразить попробовать выставить тип time, с ним тоже все работает, и даже можно редактировать, правда, естественно, отображается только время редактирования, без даты. Ну хоть так пока. Все-таки интересно, что за хня не позволяет записывать в эти поля в формате datetime.
Василий Наумкин
02 мая 2013, 06:38
0
Да, думаю, что можно.

Только не спрашивай, «а как»?
Виталий Киреев
01 мая 2013, 15:08
0
Такая ссылка генерится порядка 0,01с, непонятно откуда могут быть тормоза :( Но, конечно, меню это не тот случай, где следует применять такие вещи.
Василий Наумкин
01 мая 2013, 13:51
0
Очень просто — скрипт не должен ничего выдавать.

Либо делай так, чтобы он ничего не возвращал, либо направляй его вывод в /dev/null
Алексей Яковлев
01 мая 2013, 12:53
0
ясно, будем ждать и верить