Sports Agenda: Calendar and Event Management for Sports News Website

by 247sports
0 comment

Open
Agenda

‘,
id: ‘colorPicker’
}
],
on: {
visibleChange: function(event) {
var instance = this;

var calendarList = instance.get(‘host’);

var calendar = calendarList.activeItem;

if (calendar && event.newVal) {
var permissions = calendar.get(‘permissions’);

var hiddenItems = [];

if (calendarList !== window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_otherCalendarList) {
hiddenItems.push(‘hide’);
}

var defaultCalendar = calendar.get(‘defaultCalendar’);

if ((permissions.DELETE === false) || (defaultCalendar === true)) {
hiddenItems.push(‘delete’);
}

if (permissions.MANAGE_BOOKINGS === false) {
hiddenItems.push(‘addEvent’);
}

if (permissions.PERMISSIONS === false) {
hiddenItems.push(‘permissions’);
}

if (permissions.UPDATE === false) {
hiddenItems.push(‘settings’);
hiddenItems.push(‘separator1’);
hiddenItems.push(‘colorPicker’);
}

instance.set(‘hiddenItems’, hiddenItems);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_colorPicker.set(‘host’, instance);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_colorPicker.setAttrs(
{
color: calendar.get(‘color’),
visible: true
}
);

var colorPickerContainer = instance.get(‘boundingBox’).one(‘.calendar-portlet-color-picker’);

colorPickerContainer.append(window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_colorPicker.get(‘boundingBox’));
}
}
},
width: 225
};

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_colorPicker = new Liferay.SimpleColorPicker(
{
on: {
colorChange: function(event) {
var instance = this;

var simpleMenu = instance.get(‘host’);

if (simpleMenu) {
var calendarList = simpleMenu.get(‘host’);

calendarList.activeItem.set(
‘color’,
event.newVal,
{
silent: true
}
);

simpleMenu.set(‘visible’, false);
}
}
},
visible: false
}
).render();

A.one(‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_calendarListContainer’).delegate(
‘click’,
function(event) {
var currentTarget = event.currentTarget;

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_calendarListsMenu.calendarResourceId = currentTarget.getAttribute(‘data-calendarResourceId’);

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_calendarListsMenu.setAttrs(
{
alignNode: currentTarget,
toggler: currentTarget,
visible: !window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_calendarListsMenu.get(‘visible’)
}
);
},
‘.calendar-resource-arrow’
);

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_toggler = new A.TogglerDelegate(
{
animated: true,
container: ‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_calendarListContainer’,
content: ‘.calendar-portlet-calendar-list’,
header: ‘.calendar-portlet-list-header’
}
);

A.one(‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_columnToggler’).on(
‘click’,
function(event) {
var columnTogglerIconId = ‘_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_columnTogglerIcon’;
var columnGrid = A.one(‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_columnGrid’);
var columnOptions = A.one(‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_columnOptions’);
var columnTogglerIcon = A.one(‘#’ + columnTogglerIconId);

Liferay.Util.Session.set(‘com.liferay.calendar.web_columnOptionsVisible’, columnOptions.hasClass(‘hide’));

columnGrid.toggleClass(‘col-md-9’).toggleClass(‘col-md-12’);

columnOptions.toggleClass(‘hide’);

var newIcon = A.Node.create(
Liferay.Util.getLexiconIconTpl(
columnTogglerIcon._node.classList.contains(‘lexicon-icon-caret-left’) ?
‘caret-right’ :
‘caret-left’
)
);

newIcon.attr(‘id’, columnTogglerIconId);

columnTogglerIcon.replace(newIcon);
}
);

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshMiniCalendarSelectedDates = function() {
_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar._clearSelection();

var activeView = _com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.get(‘activeView’);
var viewDate = _com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.get(‘viewDate’);

var viewName = activeView.get(‘name’);

var total = 1;

if (viewName == ‘month’) {
total = A.Date.daysInMonth(viewDate);
}
else if (viewName == ‘week’) {
total = 7;
}

var selectedDates = Liferay.CalendarUtil.getDatesList(viewDate, total);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.selectDates(selectedDates);

var todayDate = _com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.get(‘todayDate’);

if ((selectedDates.length > 0) && DateMath.between(todayDate, selectedDates[0]selectedDates[total – 1])) {
viewDate = todayDate;
}

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.set(‘date’, viewDate);
};

var DateMath = A.DataType.DateMath;

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshVisibleCalendarRenderingRules = function() {
var miniCalendarStartDate = DateMath.subtract(DateMath.toMidnight(window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.get(‘date’)), DateMath.WEEK, 1);

var miniCalendarEndDate = DateMath.add(DateMath.add(window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.get(‘date’), DateMath.MONTH, 1), DateMath.WEEK, 1);

miniCalendarEndDate.setHours(23, 59, 59, 999);

remoteServices.getCalendarRenderingRules(
A.Object.keys(calendarContainer.get(‘visibleCalendars’)),
Liferay.CalendarUtil.toUTC(miniCalendarStartDate),
Liferay.CalendarUtil.toUTC(miniCalendarEndDate),
‘busy’,
function(rulesDefinition) {
var selectedDates = _com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar._getSelectedDatesList();

Read More:  Exciting Judo Competition Recap: U11 and U13 Results at Demitz-Thumitz

window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.set(
‘customRenderer’,
{
filterFunction: function(date, node, rules) {
node.addClass(‘lfr-busy-day’);

DateMath.toMidnight(date);

var selected = (selectedDates.length > 0) && A.Date.isInRange(date, selectedDates[0]selectedDates[selectedDates.length – 1]);

if (A.DataType.DateMath.isToday(date)) {
node.addClass(‘lfr-current-day’);
}

node.toggleClass(‘yui3-calendar-day-selected’, selected);
},
rules: rulesDefinition
}
);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar.selectDates(selectedDates);
}
);
};
window._com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendar = new A.Calendar(
{
after: {
dateChange: _com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshVisibleCalendarRenderingRules,
dateClick: function(event) {
_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.setAttrs(
{
date: event.date
}
);
}
},
date: new Date(1711553107349),
headerRenderer: ‘x25Bx20x25Y’,
locale: ‘en_GB’,
‘strings.first_weekday’: 1
}
).render(‘#_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_miniCalendarContainer’);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.after(
[‘*:add’, ‘*:change’, ‘*:load’, ‘*:remove’, ‘*:reset’],
A.debounce(_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshVisibleCalendarRenderingRules, 100)
);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_scheduler.after(
[‘activeViewChange’, ‘dateChange’],
_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshMiniCalendarSelectedDates
);

_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshVisibleCalendarRenderingRules();
_com_liferay_calendar_web_portlet_CalendarPortlet_INSTANCE_calendar_refreshMiniCalendarSelectedDates();
})();});
// ]]>

Related Posts

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.