CalendarEvents
Календарь событий

Описание

  • Репозиторий на GitHub
  • Плагин CalendarEvents сделан на основе плагина календаря Ion.Calendar
  • Все возможности плагина Ion.Calendar сохранены и добавлена возможность задавать при инициализации и выводить события
  • Позволяет выводить несколько событий для одного дня
  • CalendarEvents основан на мощной библиотеке для работы со временем - Moment.js.
  • Поддерживает несколько независимо работающих календарей на одной странице
  • Кроссбраузерная поддержка: Google Chrome, Mozilla Firefox, Opera, Safari, IE(8.0+)
  • Плагин поддерживает устройства с touch-экраном (iPhone, iPad, etc.)

Демо

Календарь с событиями

Календарь на русском, первый день - понедельник. Вывод годов с 2010 по 2020.
Отображение событий: 3 февраля 2017 (2 события), 20 февраля 2017 (1 событие).


$('#calendar-1').bitroidCalendarEv({
    lang: "ru",
    sundayFirst: false,
    years: "2010-2020",
    format: "DD.MM.YYYY",
    showEventBlock: true,
    events : [
    	{
    		day : "03",
    		month : "02",
    		year : "2017",
    		event_description : "Описание события",
    		event_title : "Заголовок для события",
    		event_body : "Описание для события"
    	},
    	{
    		day : "03",
    		month : "02",
    		year : "2017",
    		event_description : "Описание события 2",
    		event_body : "Событие 2!"
    	},
    	{
    		day : "20",
    		month : "02",
    		year : "2017",
    		event_description : "Описание события",
    		event_body : "Событие!"
    	}
    ],
    containers : {
    	events : ".calendarev-events-container"
    }
});

Календарь без событий

Календарь на русском, первый день - воскресенье. Вывод годов с 2010 по 2020.


$('#calendar-2').bitroidCalendarEv({
    lang: "en",
    sundayFirst: true,
    years: "2010-2020",
    showEventBlock: false
});

Календарь на английском

Календарь на английском, первый день - воскресенье. Вывод годов с 2017 по 2050.


$('#calendar-3').bitroidCalendarEv({
    lang: "en",
    sundayFirst: true,
    years: "2017-2050",
    showEventBlock: false
});

Календарь на японском

Календарь на японском. Первый день недели - воскресенье. Возвращает дату в локализованом формате.
Доступный диапазон лет: текущий год минус 20 лет.
По клику на день отображает всплывающее окно с датой в формате, которая указана скриптом (LLLL).


$('#calendar-4').bitroidCalendarEv({
    lang: "ja",
    years: "20",
    format: "LLLL",
    onClick: function(date){
        alert("onClick: " + date);
    }
});

Подключение

Для использования CalendarEvents потребуется подключить библиотеку JQuery 1.9+ и Moments.js 2.1+.

В шапке сайта подключите файл стилей bitroidCalendarEv.css - в нем находятся стили календаря.
Также необходимо подключить следующие скрипты: библиотеку jQuery выше версии 1.9, moment-with-locales.min.js, bitroidCalendarEv.js


<link rel="stylesheet" type="text/css" href="css/bitroidCalendarEv.css"> <!-- стили -->

<script type="text/javascript" src="js/jquery.min.js"></script> <!-- библиотека jquery -->
<script type="text/javascript" src="js/moment-with-locales.min.js"></script> <!-- библиотека moment-with-locales.min.js -->
<script type="text/javascript" src="js/bitroidCalendarEv.js"></script> <!-- плагин CalendarEvents -->

Создайте контейнер, в котором будет находиться календарь.


<div id="calendar-id" class="my-class"></div>

Инициализируйте календарь с параметрами или без них


$('#calendar-id').bitroidCalendarEv();

Параметры

Свойства

Атрибут По умолчанию Описание
lang "en" Необязательный параметр, позволяет выбрать язык календаря. Каждый дополнительный язык требует своего файла локализации
sundayFirst true Необязательный параметр, позволяет выбрать первый день недели в календаре. (Например в США неделя начинается с воскресенья, в России с понедельника). Если true - то первый день будет воскресенье, если false - то понедельник.
years "80" Необязательный параметр, определяет дипазон лет, которым будет оперировать календарь. Может принимать 1 или 2 значения через дефис. Значения должны быть целыми числами. Одиночное значение, например "80", означает, что дипазон календаря: 80 лет назад - сегодняшний год. Двойное значение же, например "1900-2000" задает точный диапазон от 1900-го до 2000-го года.
format Необязательный параметр, задает формат возвращаемой даты. Основные значения: пустой - вернет дату в формате ISO8601; "moment" - вернет объект moment(); "строка сформированная по правилам Moment.js" - вернет дату в выбранном формате. Например строка "DD.MM.YYYY" - вернет "15.07.2013".
clickable true Необязательный параметр, если установить false, то клики по дням больше не будут возвращать дату.
hideArrows false Необязательный параметр, прячет стрелки переключения месяцев.
startDate Необязательный параметр, позволяет отметить на календаре выбранную дату (имеет смысл для датапикера).
showEventBlock false Необязательный параметр, должен быть установлен в true только если необходимо вывести события
events Необязательный параметр, должен быть заполнен только если необходимо вывести события. Представляет из себя массив событий, где каждый элемент массива - это объект, в котором описывается одно и только одно событие одного дня. Для того, чтобы записать несколько событий обного дня, следует указать их друг за другом. Например:

events : [
	{
		day : "03",
		month : "02",
		year : "2017",
		event_description : "Описание события",
		event_title : "Заголовок для события",
		event_body : "Описание для события"
	},
	{
		day : "03",
		month : "02",
		year : "2017",
		event_description : "Описание события 2",
		event_body : "Событие 2!"
	}
]

Атрибуты для параметра events

Атрибут Описание
day День. Обязательный параметр. Число, начинающееся с нуля, если меньше 10. Значение должно быть обернуто в скобки и восприниматься как строка
month Месяц. Обязательный параметр. Число, начинающееся с нуля, если меньше 10. Значение должно быть обернуто в скобки и восприниматься как строка
year Год. Обязательный параметр. Четырехзначное число. Значение должно быть обернуто в скобки и восприниматься как строка
event_title Заголовок события. Необязательный параметр. При выводе событий будет визуально выделяться.
event_body Описание события. Необязательный параметр. При выводе событий будет находиться под заголовком события.
event_description Описание события, которое отображается при наведении на день, к которому привязано событие. Необязательный параметр.

Функции

Атрибут По умолчанию Описание
onClick Функция возвращает выбранную дату при клике по дням. Возвращаемое значение может быть строкой или объектом moment().
onReady Функция возвращает текущую дату при готовоности календаря. В том же формате что и onClick

Скачать CalendarEvents

Скачать архив GitHub