You are here: Foswiki>Tasks Web>Item12722 (23 Dec 2014, GeorgeClark)Edit Attach

Item12722: JSCalendarContrib defines a calendar class that interferes with CalendarPlugin

pencil
Priority: Low
Current State: Confirmed
Released In: n/a
Target Release: n/a
Applies To: Extension
Component: JSCalendarContrib
Branches:
Reported By: VickiBrown
Waiting For:
Last Change By: GeorgeClark
JSCalendarContrib defines a calendar class that interferes with CalendarPlugin's own expected class of the same name.

Given that CalendarPlugin bears the name 'Calendar', JSCalendarPlugin should call its class jscalendar, not calendar.

Issue can present itself if a Topic (or a wiki app) calls %Calendar% and includes JSCalendarContrib CSS code. The calendar output will be invisible because JSCalendarPlugin sets Display:None.

See:

lib/Foswiki/Plugins/CalendarPlugin/Core.pm:
#CSS
    tableclass       => 'calendar $month $year',

pub/System/JSCalendarContrib/calendar-blue.css
.calendar .combo{position:absolute;display:none;top:0;left:0;width:4em;cursor:default;border:1px solid #655;background:#def;color:#000;font-size:90%;z-index:100}

Apparently System/JSCalendarContribInline works around this flaw, setting the .calendar locally without importing it. However, there may be old code in the wild that imports the JSCalendarContrib CSS (I had some).

I will be reworking my code to use %INCLUDE{"System.JSCalendarContribInline"}%, but we should be aware of the effects of a possible overlap in class names.

-- VickiBrown - 18 Jan 2014

 

ItemTemplate edit

Summary JSCalendarContrib defines a calendar class that interferes with CalendarPlugin
ReportedBy VickiBrown
Codebase 1.1.9
SVN Range
AppliesTo Extension
Component JSCalendarContrib
Priority Low
CurrentState Confirmed
WaitingFor
Checkins
TargetRelease n/a
ReleasedIn n/a
CheckinsOnBranches
trunkCheckins
masterCheckins
ItemBranchCheckins
Release01x01Checkins
Topic revision: r2 - 23 Dec 2014, GeorgeClark
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy