ale10257 / Simple-calendar-Event-Yii2-Ajax

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Простой календарь событий (модуль для Yii2)

Техническое задание

Зарегистрированный пользователь должен легко создавать, редактировать, удалять события для произвольного дня, произвольного года и произвольного месяца

Незарегистрированный пользователь должен видеть: свободно то, или иное время ,нужного ему дня, или нет.

В нашей компании, например, это туроператоры, планирующие заранее мероприятия. Они смотрят наш календарь и видят свободные/занятые часы

img

Возможности администратора

img

Установка

  • В пространстве имен app\modules создать папку calendar.

  • Например: cd path_your_project; mkdir modules/calendar

  • Переходим в папку модуля, и клонируем репозитарий:

  • cd modules/calendar; git clone https://github.com/ale10257/Simple-calendar-Event-Yii2-Ajax.git .

  • Регистрируем модуль в конфигурационном файле вашего приложения

    'modules' => [
        ...
        'calendar' => [
            'class' => 'app\modules\calendar\CalendarEvent',
        ],
        ...
    ],
  • Создаём и применяем миграции:

  • ./yii migrate/create create_calendarEvent_table --fields="year:integer(4),month:integer(2),day:integer(2),time:integer(2),event:string"; ./yii migrate

  • Редактируем время для событий в модели @app/modules/calendar/models/CalendarEvent

public $time_array = [
   '1' => '9:00',
   '2' => '10:00',
   '3' => '11:00',
   '4' => '12:00',
   '5' => '13:00',
   '6' => '14:00',
   '7' => '15:00',
   '8' => '16:00',
   '9' => '17:00',
   '10' => '18:00',
];

Известные проблемы

Не реализовано разграничение прав пользователей. В текущем проекте есть только Гость и неГость. Т.е., если в вашем проекте есть регистрация пользователей - они будут видеть форму для работы с событиями.

About


Languages

Language:PHP 89.6%Language:JavaScript 6.5%Language:CSS 3.9%