[myCalendar] Календарь для MODX
        Есть прикольный календарик на javascript — fullCalendar. Много настроек, красивый вид, поддерживается разработчиками. Но он расчитан только на рендеринг событий. Лично мне он понравился и поэтому я решил познакомить его с MODX Revolution. 

Вызывается так
Добавлять события можно либо просто кликом на нужное время, либо выделением диапазона. В первом случае конечное время события определяется согласно параметру defaultDuration. А во втором случае, начальное и конечное время определяются по границам выделения.
События можно перемещать, ресайзить, удалять.

Календарь может работать с Google Calendar. Для этого нужно в системных настройках указать Google Calendar API Key, а в сниппете через запятую указать google календари
С событиями Google календаря манипуляции ограничены. Их можно только редактировать, да и то только в собственном Google интерфейсе.
Собственно это все.
Проект на Github
В главном магазине MODX страны.
Update. В новой версии можно вызывать несколько календарей одновременно.
    
    
                                                        
Вызывается так
[[!myCalendar?]]У сниппета есть несколько параметров из настроек fullCalendar, которых вполне достаточно для работы. Если нужны дополнительные настройки, то их можно добавить в скрипт самостоятельно. Добавлять события можно либо просто кликом на нужное время, либо выделением диапазона. В первом случае конечное время события определяется согласно параметру defaultDuration. А во втором случае, начальное и конечное время определяются по границам выделения.
События можно перемещать, ресайзить, удалять.

Календарь может работать с Google Calendar. Для этого нужно в системных настройках указать Google Calendar API Key, а в сниппете через запятую указать google календари
[[!myCalendar? &googleCalendars=`ru.russian#holiday@group.v.calendar.google.com`]]Как настроить можно прочитать тут.С событиями Google календаря манипуляции ограничены. Их можно только редактировать, да и то только в собственном Google интерфейсе.
Собственно это все.
Проект на Github
В главном магазине MODX страны.
Update. В новой версии можно вызывать несколько календарей одновременно.
            
                Поблагодарить автора            
            
                 Отправить деньги            
        
        
            Комментарии: 96
                Очень рад, что кто-то вспомнил про замечательный fullCalendar.
Я тоже делал что-то подобное давно, но потом забросил.
                    Я тоже делал что-то подобное давно, но потом забросил.
                Я так понял, что ты начал с fullCalendar, а закончил eventCalendar2.            
                    
                Не, наоборот. eventsCalendar был вообще моим первым готовым дополнением для MODX.            
                    
                крутой календарь)) это для фронтенда? правильно я понял?            
                    
                Ага.            
                    
                и перетаскивать, ресайзить и удалять события на фронте может только залогиненый в mgr?)            
                    
                Все кому не лень. :)
Если нужно разрешить редактировать только авторизованным, то в сниппет перед перед сохранением параметров в сессию можно дописать условие
                    Если нужно разрешить редактировать только авторизованным, то в сниппет перед перед сохранением параметров в сессию можно дописать условие
if (!$modx->user->isAuthenticated($modx->context->get('key'))
	$scriptProperties['readOnly'] = true;Тогда неавторизованный пользователь может только любоваться. :)            
                Может эту фичу сразу в параметры вызова сниппета вынести? Мне кажется так будет востребовано.            
                    
                Наверно. 
А вообще это решение — вырезка из дополнения, которое я щас заканчиваю по заказу знакомого — с авторизацией, неограниченным количеством календарей с интерфейсом в админке, уведомлением пользователя на сайте и по почте, повторением событий. В дальнейшем хочет назначать задачи пользователям и следить за исполнением.

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

                тоже делала подобное, но с меньшим функционалом тут

Любой мог добавить, но удалить \ изменить время мог только админ
                    
Любой мог добавить, но удалить \ изменить время мог только админ
                Ваше решение на основе jquery.weekcalendar. Он не обновляется уже несколько лет. Плюс у него возможностей поменьше. Мне больше fullCalendar понравился.            
                    
                Я ж не спорю) просто говорю что тоже пришлось заморочить, там просто были определенные требования к календарю. 
Возможность менять период времени записи. тут 20 мин например, а сказали могут 10. + день как видите размет на 4 кабинки. это все надо было учесть. и самый оптимальный вариант на тот момент оказался этот
                    Возможность менять период времени записи. тут 20 мин например, а сказали могут 10. + день как видите размет на 4 кабинки. это все надо было учесть. и самый оптимальный вариант на тот момент оказался этот
                Заметил, что тут никто никогда не задумывается о фронтенд оптимизации. Все компоненты, которые подключают скрипты/стили, почему то всегда подключают их несжатыми и не объединенными, но ведь же можно оставлять исходники, а рядом класть сжатый файл и подключать его. Все равно файл компонента нельзя править, в связи с его затиранием при апдейте, а кому надо изменить тот соберет себе новый из исходников. 
Может у этого есть, конечно, какой-то смысл?
                    Может у этого есть, конечно, какой-то смысл?
                Разработчик сайта, сам должен или может минифицировать, конкатенировать, и компилировать асетсы как ему угодно            
                    
                Ну вы меня немножко не поняли, вот пример, как это сжать и объединить через MinifyX? Получается нужно выпилить из кода и вручную вставить там где вызывается компонент. Что очень странно.            
                    
                А вот тут можно поспорить. Глядя на тот же код, можно заметить недокументированную возможность указывать свой путь к файлам. 
В системных настройках нужно указать свой путь в параметре mycalendar.assets_url и, соответственно, css и js файлы будут доступны по новому пути — «новое значение/css/» и «новое значение/js/». И пожалуйста, подключай свои файлы.
Это к разговору о разработчиках. Для простого админа это не очень прозрачно.
                    В системных настройках нужно указать свой путь в параметре mycalendar.assets_url и, соответственно, css и js файлы будут доступны по новому пути — «новое значение/css/» и «новое значение/js/». И пожалуйста, подключай свои файлы.
Это к разговору о разработчиках. Для простого админа это не очень прозрачно.
                хм, действительно. Но почему тогда тут не включено сжатие? И на modhost тоже.            
                    
                Как раз такие скрипты и стили MinifyX собирает в один файл и минимизирует.
UPD. Василий меня опередил))
                    UPD. Василий меня опередил))
… но ведь же можно оставлять исходники, а рядом класть сжатый файл и подключать его...Согласен.
                Появился в репозитории modstore.pro            
                    
                В продолжение темы про сжатие скриптов…
Разработчикам на PhpStorm будет полезно узнать про плагин File Watchers, который автоматически сжимает css и js файлы. Работаешь в нормальной версии, а рядом появляется сжатый вариант. После каждого редактирования обычного файла сжатый файл автоматом обновляется. Я себе настроил этот плагин. Очень удобно.
                    Разработчикам на PhpStorm будет полезно узнать про плагин File Watchers, который автоматически сжимает css и js файлы. Работаешь в нормальной версии, а рядом появляется сжатый вариант. После каждого редактирования обычного файла сжатый файл автоматом обновляется. Я себе настроил этот плагин. Очень удобно.
                1. во время вызова календаря выдает ошибку There was an error while fetching events!
на оном ресурсе без ошибки, на другом с это ошибкой — оба сайта идентичны, разница только в домене.
2. И при изменении настройки разрешить редактировать только авторизованным доступ к изменениям становится недоступен всем пользователям, авторизованным и нет.
Подскажите куда копать?
                    на оном ресурсе без ошибки, на другом с это ошибкой — оба сайта идентичны, разница только в домене.
2. И при изменении настройки разрешить редактировать только авторизованным доступ к изменениям становится недоступен всем пользователям, авторизованным и нет.
Подскажите куда копать?
1. во время вызова календаря выдает ошибку There was an error while fetching events!Можно посмотреть на сайт?
на оном ресурсе без ошибки, на другом с это ошибкой — оба сайта идентичны, разница только в домене.
2. И при изменении настройки разрешить редактировать только авторизованным доступ к изменениям становится недоступен всем пользователям, авторизованным и нет.Сниппет нужно вызывать не кэшированным, как в описании.
                1. Доступы должны на почту прийти;
2. Так и делал.
                    2. Так и делал.
                1. У тебя при обращении к скрипту action.php возвращается ошибка 404. Проверь права.
2. Ты вызываешь сниппет кэшированным
                    2. Ты вызываешь сниппет кэшированным
[[myCalendar? &allowGuestEdit=`1` &allDaySlot=`0` &defaultColor=`0` &height=`auto` &minTime=`07:00` &maxTime=`22:00`]]Чтобы вызвать его некэшированным нужно указывать восклицательный знак перед именем сниппета.[[!myCalendar...]]Кроме того, в параметре defaultColor нужно указывать значение цвета в css формате. Если нужен черный цвет, то так&defaultColor=`#000000`            
                1. Права проверял, делал по аналогии с другим сайтом где работает, все без изменений. Уже несколько дней с этим бьюсь, прочитал кучу мануалов, рекомендаций и т.п., делал по всякому, но без результатно;
2. Спасибо, исправил, но все равно тоже самое (проверяю на другом сайте, не где ошибку выдает) при вызове [[!myCalendar? &allowGuestEdit=`0`]] авторизованному пользователю не дает возможность редактировать, но выводит календарь на странице. при вызове [[!myCalendar? &allowGuestEdit=`1`]] выводит календарь всем, авторизованным и нет, и дает возможность редактировать
                    2. Спасибо, исправил, но все равно тоже самое (проверяю на другом сайте, не где ошибку выдает) при вызове [[!myCalendar? &allowGuestEdit=`0`]] авторизованному пользователю не дает возможность редактировать, но выводит календарь на странице. при вызове [[!myCalendar? &allowGuestEdit=`1`]] выводит календарь всем, авторизованным и нет, и дает возможность редактировать
                после манипуляций с allowGuestEdit(изменеия значений с 0 на 1 и обратно), календарь не выводиться не авторизованным посетителям, только залогиненым            
                    1. Права проверял, делал по аналогии с другим сайтом где работает, все без изменений.Убей не знаю в чем причина. Почему-то ajax запросы не проходят- отдается 404. Тут может старшие товарищи подскажут.
А хостинг один и тот же?
                хостинг одинаковый мирахаб, но сервера разные. который едку даже пошустрее летает. 
1. Попробую еще тогда погуглить, спасибо за направление куда копать.
видел вот такое решение с async:false вот только где прописывать это не понял.
2. А по этому что скажешь? я уже и кеша чистил, и права перегружал и папку кеш сносил, ничего не помогает. может какие настройки с самим modx? я уже и не знаю куда копать (((
пробовал по этим вопросам тестировать на двух разных хостингах и на локальном опенсервер все одинаково.
                    1. Попробую еще тогда погуглить, спасибо за направление куда копать.
видел вот такое решение с async:false вот только где прописывать это не понял.
2. А по этому что скажешь? я уже и кеша чистил, и права перегружал и папку кеш сносил, ничего не помогает. может какие настройки с самим modx? я уже и не знаю куда копать (((
пробовал по этим вопросам тестировать на двух разных хостингах и на локальном опенсервер все одинаково.
                На алиф изменил сниппет и скрипт default.js. Все работает. Но при обновлении все слетит. Так что лучше сохранить под другими именами. А лучше разобраться, почему ajax не проходит.
                    2. А по этому что скажешь? я уже и кеша чистил, и права перегружал и папку кеш сносил, ничего не помогает. может какие настройки с самим modx? я уже и не знаю куда копать (((Параметр allowGuestEdit работает как положено. Где проверить эту ошибку?
                Спасибо тебе!!! Надо сюда, наверное выложить код изменений? хоть и не пользуется спросом календарь (пока). Хотя на wp +30К загрузок Еще бы такой функционал получить) «из коробки» 
С аяксом обязательно буду разбираться, может что-то старшие товарищи подскажут.
2. только что гонял туда — сюда этот параметр на алифе, все так-же. Думал кеша браузера, попробовал в двух разных и из под разных учеток.
                    С аяксом обязательно буду разбираться, может что-то старшие товарищи подскажут.
2. только что гонял туда — сюда этот параметр на алифе, все так-же. Думал кеша браузера, попробовал в двух разных и из под разных учеток.
Надо сюда, наверное выложить код изменений?Нет не надо.
2. только что гонял туда — сюда этот параметр на алифе, все так-же.Только что погонял с авторизацией и без несколько раз. Ставлю allowGuestEdit =`1` -> F5. Ставлю allowGuestEdit =`0` -> F5. И так несколько раз. Все работает. Что-то видимо у тебя криво стоит. Или мы друг друга не понимаем.
                Спасибо. 
Скорее всего криво или с хостингом что-то, во общем буду искать. Сейчас сайт живет какой-то своей жизнью, BannerY вообще отвалились (в админке не отображаются). Хотя на другом сайте, все гуд.
Проверю, отпишусь.
                    Скорее всего криво или с хостингом что-то, во общем буду искать. Сейчас сайт живет какой-то своей жизнью, BannerY вообще отвалились (в админке не отображаются). Хотя на другом сайте, все гуд.
Проверю, отпишусь.
                пересобрал все с нуля и все равно с allowGuestEdit такакя же проблема. 
Ставлю allowGuestEdit =`1` -> F5, доступ к редактированию есть у всех. У тех кто авторизован и нет.
Ставлю allowGuestEdit =`0` -> F5, доступа к редактированию нет ни у кого.
            
                    Ставлю allowGuestEdit =`1` -> F5, доступ к редактированию есть у всех. У тех кто авторизован и нет.
Ставлю allowGuestEdit =`0` -> F5, доступа к редактированию нет ни у кого.
                Это на алифе?            
                    
                да            
                    
                Проблема как раз в том что когда авторизованный точно такая же картина. Или я чего-то не понимаю в реализации allowGuestEdit. 
Хотя выше описана тобой-же верная логика.
Еще раз повторюсь.
Ставлю [[!myCalendar? &allowGuestEdit=`1`]]
Доступ к редактированию есть у всех.
Ставлю [[!myCalendar? &allowGuestEdit=`0`]]
Редактировать ни кто не может, авторизованный и не авторизованный пользователь.
Как я понял при &allowGuestEdit=`0` доступ к редактированию должен пропасть только у не авторизованных пользователей. исходя из твоего коммента
            
                    Хотя выше описана тобой-же верная логика.
Еще раз повторюсь.
Ставлю [[!myCalendar? &allowGuestEdit=`1`]]
Доступ к редактированию есть у всех.
Ставлю [[!myCalendar? &allowGuestEdit=`0`]]
Редактировать ни кто не может, авторизованный и не авторизованный пользователь.
Как я понял при &allowGuestEdit=`0` доступ к редактированию должен пропасть только у не авторизованных пользователей. исходя из твоего коммента
Проблема как раз в том что когда авторизованный точно такая же картина.Не такая же. Все работает как положено.
Для неавторизованного пользователя
//Нельзя редактировать гостям
[[!myCalendar? &allowGuestEdit=`0`]]
Для авторизованного пользователя
//Нельзя редактировать гостям
[[!myCalendar? &allowGuestEdit=`0`]]
Как видишь, редактирование возможно.
Дружище, я больше не знаю чем тебе помочь. Все работает как я и писал выше. Только теперь с подтверждением.
                Кажись, я понял. Ты, видимо, авторизуешься в админке, а не во фронте. А если так, то получается, что ты всегда гость, не зависимо от того, авторизовался ты или нет. Поэтому и редактирование невозможно. 
Если ты хочешь, чтоб параметр allowGuestEdit работал и для авторизованных в админке, то нужно в условии указать контекст mgr, а не текущий
                    Если ты хочешь, чтоб параметр allowGuestEdit работал и для авторизованных в админке, то нужно в условии указать контекст mgr, а не текущий
if (!$modx->user->isAuthenticated('mgr')
	$scriptProperties['readOnly'] = true;            
                Спасибо! Все работает как надо            
                    
                День добрый. Подскажите как сделать так чтобы отображался только месяц, чтобы не было возможности выбора — день и неделя?            
                    
                В файле default.js в указанной строчке оставить только «month». И не забыть у сниппета указать параметр defaultView=month.
Вообще, настроек огромадное количество. Они все описаны на сайте fullCalendar.
В следующей версии добавлю возможность подключать свои js и css файлы, чтоб не затирались изменения в настройках при обновлении.
            
                    Вообще, настроек огромадное количество. Они все описаны на сайте fullCalendar.
В следующей версии добавлю возможность подключать свои js и css файлы, чтоб не затирались изменения в настройках при обновлении.
                Как вывести описание события во всплывающем окне?
            
                    
            
                Спасибо            
                    
                А можно так
                    title:event.title,
text:event.description            
                так и сделал) еще раз спасибо            
                    
                Добрый день, не подскажите как сделать чтоб только определённая группа (manager) могла редактировать            
                    
                В сниппете изменить/добавить условие
                    if (! $modx->user->isMember('manager')) {
	$scriptProperties['readOnly'] = true;
}Ну уж такие простые вещи можно и самому попробовать сделать.            
                Спасибо, я примерно так и сделал, когда начал читать комменты )). 
Ещё такой вопрос, у меня на одной странице 2 календаря, eventCalendar2 и myCalendar при попытки добавить запись
евент преображается.            
                    Ещё такой вопрос, у меня на одной странице 2 календаря, eventCalendar2 и myCalendar при попытки добавить запись
евент преображается.            
                Разобрался, спс            
                    
                Ещё у меня выдавал ошибку в консоле об отсутствие файла assets/components/mycalendar/js/lib/jquery.qtip.min.map
Создал пустой файл с эти именем
                    Создал пустой файл с эти именем
                Подскажите пожалуйста как можно сделать 2 календаря на одной страницы?            
                    
                Mission impossible.
П.С. Теперь знаю чем заняться вечерком.
                    П.С. Теперь знаю чем заняться вечерком.
                хахаха ждём когда будет possible            
                    
                В этой версии только один календарь. Есть вот такая версия. В ней можно использовать несколько календарей. Но скорее всего, если заказчик разрешит её выложить, то не бесплатно.            
                    
                Конечно крутая версия, но мне такой много, хотя бы намекните что можно сделать чтоб 2 календаря вывести, если оторвать у eventCalendar механизм с возможностью &calendar_id=`cal3` должно работать?            
                    
                Я так понимаю, что эти 2 календаря на странице должны отображать разные события. И соответственно сохранять в разные календари разные события. А это в текущей информационной модели невозможно. Как события в таблице разделить по разным календарям?
Выход только один — переписывать все с нуля.
                    если оторвать у eventCalendar механизм с возможностью &calendar_id=`cal3` должно работать?eventCalendar просто выводит события. Он не может их сохранять. Поэтому там все проще.
Выход только один — переписывать все с нуля.
                А если одни и те же?,            
                    
                Подумаю. Пока ничего простого в голову не приходит.            
                    
                Очень нужное дополнение, я так понимаю что пока с его помощью нельзя выводить ресурсы по времени/дате? в будущем планируется?            
                    
                Для этого есть eventCalendar2            
                    
                Приветствую! Календарь шикарный! Но пара вопросов имеется…
1. При установке опции &allowGuestEdit=`0` вроде все гуд — гости смотрят, админы редактируют и добавляют. Но только админ не может удалить событие. Всплывает окно с предупреждением, а далее сообщение, что редактирование запрещено.
2. Помогите подружить его с гугл-календарем! Вроде и api сделал, и id гугловского календаря прописал… но что-то где-то не так. Кстати, у меня id в виде e-mail, а здесь в примере вот так: &googleCalendars=`ru.russian#holiday@group.v.calendar.google.com`. Это как понимать?
                    1. При установке опции &allowGuestEdit=`0` вроде все гуд — гости смотрят, админы редактируют и добавляют. Но только админ не может удалить событие. Всплывает окно с предупреждением, а далее сообщение, что редактирование запрещено.
2. Помогите подружить его с гугл-календарем! Вроде и api сделал, и id гугловского календаря прописал… но что-то где-то не так. Кстати, у меня id в виде e-mail, а здесь в примере вот так: &googleCalendars=`ru.russian#holiday@group.v.calendar.google.com`. Это как понимать?
                Ну, про 1, изменил в файле core/components/mycalendar/model/mycalendar/mycalendar.class.php в методе public function removeEvent (404 строка) 
if (!$this->config['allowGuestEdit'] && !$this->modx->user->isAuthenticated('mgr')) (406 строка).
И всё заработало.
Вообще, думаю, там следует учинять ровно такую же проверку, как и в коде сниппета. У меня, в частности, требуется, чтобы только залогиненный в админку пользователь мог редактировать календарь, поэтому и проверяю isAuthenticated('mgr').
                    if (!$this->config['allowGuestEdit'] && !$this->modx->user->isAuthenticated('mgr')) (406 строка).
И всё заработало.
Вообще, думаю, там следует учинять ровно такую же проверку, как и в коде сниппета. У меня, в частности, требуется, чтобы только залогиненный в админку пользователь мог редактировать календарь, поэтому и проверяю isAuthenticated('mgr').
Вообще, думаю, там следует учинять ровно такую же проверку, как и в коде сниппета.Какой смысл дублировать код? Все манипуляции с правами вынесены в сниппет. Там, в зависимости от требуемых условий, выставляется флаг readOnly. А в классе просто должен проверяться этот флаг. В новой версии это дело поправлено.
                Я не так выразился. Для сиюминутного решения, чтобы работало, предложил Виктору решение, а не внёс предложение на улучшение кода.
Конечно, дублировать код не надо.
Благодарю за вашу работу.
            
                    Конечно, дублировать код не надо.
Благодарю за вашу работу.
1. При установке опции &allowGuestEdit=`0` вроде все гуд — гости смотрят, админы редактируют и добавляют. Но только админ не может удалить событие. Всплывает окно с предупреждением, а далее сообщение, что редактирование запрещено.Есть такое дело. Логику с правами вынес в сниппет, а в классе забыл подправить это дело. Исправление будет доступно в новой версии. А пока можно самому поправить в файле core/components/mycalendar/model/mycalendar/mycalendar.class.php (строка 406)
if ($this->config['readOnly'])2. Помогите подружить его с гугл-календарем!По инструкции должно быть 3 шага:
1. Получить API Google календаря.
2. Создать доступный всем (public) google календарь.
3. Получить его ID. Он должен выглядеть как-то так abcd1234@group.calendar.google.com.
API Google календаря прописать в системных настройках, а ID календаря в параметре &googleCalendars сниппета. Если все сделано правильно, то должно работать.
Календарь ru.russian#holiday@group.v.calendar.google.com является общим календарем с праздниками, у Вас он тоже должен работать.
                Добрый день, подскажите пожалуйста как избавиться от шибки в логе 
(ERROR @ /assets/components/mycalendar/action.php) No class specified for loadClass
Появилась после обновления движка и компонента
                    (ERROR @ /assets/components/mycalendar/action.php) No class specified for loadClass
Появилась после обновления движка и компонента
                Без понятия. Попробуйте выяснить в какой момент она появляется — при открытии страницы, при редактировании события и т.п. Тогда будем думать.            
                    
                К сожалению не могу определить точно когда появляется ошибка, иногда при хождении по админке сайта, иногда по фронтенду, при логине пользователя появляется, 
Ещё присутствуют такие ошибки
(ERROR @ /assets/components/mycalendar/action.php) Could not load class: myCalendarEvents from mysql.mycalendarevents.
(ERROR @ /assets/components/mycalendar/action.php) myCalendarEvents::getSelectColumns() is not a valid static method.
            
                    Ещё присутствуют такие ошибки
(ERROR @ /assets/components/mycalendar/action.php) Could not load class: myCalendarEvents from mysql.mycalendarevents.
(ERROR @ /assets/components/mycalendar/action.php) myCalendarEvents::getSelectColumns() is not a valid static method.
                А возможно ли сделать так чтобы при &allowGuestEdit=`0` нажатие на событие выдавало подсказку как при наведении, вместо открытия окна редактирования. Просто проверяю на телефоне и каждое касание открывает окно редактирования.            
                    
                Все пожелания собираю тут.            
                    
                Отличный сниппет! Спасибо огромное!
Если еще поделитесь фрагментом кода который добавляет в «eventform» возможность создавать периодические события, буду крайне Вам признателен!
                    Если еще поделитесь фрагментом кода который добавляет в «eventform» возможность создавать периодические события, буду крайне Вам признателен!
                В myCalendar нет такого функционала. Он есть в fullCalendar.            
                    
                Добрый день!
Установил сниппет. Вызываю так:
Спасибо!
                    Установил сниппет. Вызываю так:
[[!myCalendar? &allowGuestEdit=`0`]]При этом всё равно, если пользователь не авторизован в админке — он может править события. Подскажите, что можно сделать и куда копать?Спасибо!
                Авторизация в админке не учитывается. Если пользователь авторизован на сайте, то он уже не гость и на него параметр allowGuestEdit не действует.            
                    
                А если на сайте в принципе нет авторизации со стороны фронтенда?
У меня чисто информационный сайт. И при просмотре календаря я захожу из другого браузера.
Когда я сделал сниппет на основе вот этого кода из вашей доки:
                    У меня чисто информационный сайт. И при просмотре календаря я захожу из другого браузера.
Когда я сделал сниппет на основе вот этого кода из вашей доки:
<?php
// Если пользователь зарегистрирован и входит в группу "Manager", то редактирование календаря разрешено.
if ($modx->user && $modx->user->isMember('Manager') {
    $scriptProperties['readOnly'] = true; // Редактирование запрещено
} else {
    $scriptProperties['readOnly'] = false; // Редактирование разрешено
}
// А теперь передаём параметры в сниппет myCalendar
return $modx->runSnippet('myCalendar', $scriptProperties);Допустим с названием и выводом [[!calendarPermission?]] сайт выпадает с ошибкой 500. Или же это опять же связано с авторизацией во фронтенде?            
                Банальная опечатка — не хватает закрывающей скобки в конструкции if.            
                    
                Да, спасибо! Ошибку 500 исчезла. Но всё равно неавторизованный нигде пользователь может нажать на событие и изменить его. Т.е. просто случайный посетитель сайта.            
                    
                Значит не судьба. Попробуйте другой календарь.
П.С. У меня на сайте почему-то всё работает как положено.
                    П.С. У меня на сайте почему-то всё работает как положено.
                Возможно ли сейчас подключить Google-календарь? Попытка вызвать как 
[[!myCalendar? &googleCalendars=`ru.russian#holiday@group.v.calendar.google.com`]]
ни к чему не приводит — календарь на фронт-энде пустой, хотя выше указан именно этот календарь для примера. Другие календари тоже не подключались. В консоли выводится ошибка
«Specify a googleCalendarApiKey. See fullcalendar.io/docs/google_calendar/»
В гугле опять что-то наменяли, что перестало работать? С этими «обновлениями с последствиями» на других языках уже сталкивался.
                    [[!myCalendar? &googleCalendars=`ru.russian#holiday@group.v.calendar.google.com`]]
ни к чему не приводит — календарь на фронт-энде пустой, хотя выше указан именно этот календарь для примера. Другие календари тоже не подключались. В консоли выводится ошибка
«Specify a googleCalendarApiKey. See fullcalendar.io/docs/google_calendar/»
В гугле опять что-то наменяли, что перестало работать? С этими «обновлениями с последствиями» на других языках уже сталкивался.
                Чтобы вызвать Гугл календарь, его нужно сначала настроить. Об этом и сообщается в ошибке. Проверить можно на демосайте.            
                    
                А каким образом настроить? Я скопировал с демосайта код «Первый вызов» — все равно в нем пусто и та же ошибка в консоли.            
                    
                Нужно получить API ключ Гугл календаря. Как это сделать указано в ссылке в ошибке — «Specify a googleCalendarApiKey. See fullcalendar.io/docs/google_calendar/».            
                    
                Друзья. А как в сниппете или вызове выставить язык русский?            
                    
                Язык определяется в системной настройке cultureKey.            
                    
                спасибо большое. Только начал работать с REVO            
                    
                Добрый день!
Подскажите как на бэкенде возможно обработать добавление события?
                    Подскажите как на бэкенде возможно обработать добавление события?
                ребят как добавить поле в базу(то есть добавить колонку как ти title description и тп)?? хочу к событиям прикрутить возможность добавления ссылки…            
                    
                как удалить свой комментарий?            
                    
                День добрый! Есть товары минишопа(обучающие курсы.) у каждого товара есть название описание и тв поле время старта курса. Как их вывести в данном календаре?
                    [[!pdoResources?
    &tpl=`@INLINE <div>[[+start]]. [[+title]]</div><div>[[+description]]</div>
`
    &class=`myCalendarEvents`
    &loadModels=`mycalendar`
    &sortby=`start`
    &sortdir=`ASC`
     &showLog=`1`
]]Такой вызов выводит простой список без рендера календаря из таблицы mycalendar… Каким образом можно приджойнить товары минишопа и возможно ли это??            
                Этот календарь на такое не заточен. А вот этот могёт.            
                    
                Благодарю за ответ! На след неделе приобрету в Модстор.            
                    
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                    
            
                    
                    
                
