Type:
Bug
Resolution:
Fixed
Priority:
Normal
Affects Version/s:
3.1.1
Steps to Reproduce
DefaultCalendarItem colorItem = new DefaultCalendarItem.Builder()
.withTitle("blue" )
.withContent("yellow" )
.withBegin(day1.withHour(2))
.withEnd(day1.withHour(4))
.withHeaderColor("blue" )
.withContentColor("yellow" )
.withSclass("colored" )
.withZoneId(defaultZoneId)
.build();
model.add(colorItem);
Current Result
doesn't render specified color on the item
Expected Result
render specified color on the item
is duplicated by
ZKCAL-100
Calendar item header and content color is not applied correctly
Closed
{"searchers":{"groups":[{"searchers":[{"name":"Project","id":"project","key":"issue.field.project","isShown":true,"lastViewed":1744192319502},{"name":"Summary","id":"summary","key":"issue.field.summary","isShown":true},{"name":"Type","id":"issuetype","key":"issue.field.issuetype","isShown":true,"lastViewed":1744192319502},{"name":"Status","id":"status","key":"issue.field.status","isShown":true,"lastViewed":1744192319505},{"name":"Priority","id":"priority","key":"issue.field.priority","isShown":true},{"name":"Resolution","id":"resolution","key":"issue.field.resolution","isShown":true},{"name":"Creator","id":"creator","key":"issue.field.creator","isShown":true},{"name":"Affects Version","id":"version","key":"issue.field.affectsversions","isShown":true},{"name":"Fix Version","id":"fixfor","key":"issue.field.fixversions","isShown":true,"lastViewed":1744192319507},{"name":"Component","id":"component","key":"issue.field.components","isShown":false},{"name":"% Limits","id":"workratio","key":"issue.field.workratio","isShown":true},{"name":"Link types","id":"issue_link_type","key":"issue.field.issuelinks","isShown":true},{"name":"Environment","id":"environment","key":"issue.field.environment","isShown":true},{"name":"Description","id":"description","key":"issue.field.description","isShown":true},{"name":"Comment","id":"comment","key":"issue.field.comment","isShown":true},{"name":"Label","id":"labels","key":"issue.field.labels","isShown":true},{"name":"Query","id":"text","key":"text","isShown":true},{"name":" Freshservice Tickets","id":"customfield_10200","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":false},{"name":"Development","id":"customfield_10800","key":"com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary","isShown":true},{"name":"Hit Rate Index","id":"customfield_10000","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Original story points","id":"customfield_11103","key":"com.atlassian.jpo:jpo-custom-field-original-story-points","isShown":true},{"name":"Parent Link","id":"customfield_11100","key":"com.atlassian.jpo:jpo-custom-field-parent","isShown":false},{"name":"Release Version History","id":"customfield_10310","key":"com.pyxis.greenhopper.jira:greenhopper-releasedmultiversionhistory","isShown":true},{"name":"Safety specification requirements","id":"customfield_11300","key":"com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons","isShown":false},{"name":"Team","id":"customfield_11200","key":"com.atlassian.teams:rm-teams-custom-field-team","isShown":true},{"name":"Epic Colour","id":"customfield_10308","key":"com.pyxis.greenhopper.jira:gh-epic-color","isShown":false},{"name":"Epic Name","id":"customfield_10306","key":"com.pyxis.greenhopper.jira:gh-epic-label","isShown":true},{"name":"Epic Link","id":"customfield_10305","key":"com.pyxis.greenhopper.jira:gh-epic-link","isShown":true},{"name":"Epic Status","id":"customfield_10307","key":"com.pyxis.greenhopper.jira:gh-epic-status","isShown":false},{"name":"Business Value","id":"customfield_10303","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Flagged","id":"customfield_10300","key":"com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes","isShown":true},{"name":"Epic/Theme","id":"customfield_10301","key":"com.atlassian.jira.plugin.system.customfieldtypes:labels","isShown":true},{"name":"Story Points","id":"customfield_10302","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Rank","id":"customfield_10309","key":"com.pyxis.greenhopper.jira:gh-lexo-rank","isShown":true},{"name":"Sprint","id":"customfield_10304","key":"com.pyxis.greenhopper.jira:gh-sprint","isShown":true},{"name":"issueFunction","id":"customfield_10600","key":"com.onresolve.jira.groovy.groovyrunner:jqlFunctionsCustomFieldType","isShown":true}],"type":"DETAILS","title":"Details"},{"searchers":[{"name":"Created Date","id":"created","key":"issue.field.created","isShown":true},{"name":"Updated Date","id":"updated","key":"issue.field.updated","isShown":true},{"name":"Resolution Date","id":"resolutiondate","key":"issue.field.resolution.date","isShown":true},{"name":"Target end","id":"customfield_11102","key":"com.atlassian.jpo:jpo-custom-field-baseline-end","isShown":true},{"name":"Target start","id":"customfield_11101","key":"com.atlassian.jpo:jpo-custom-field-baseline-start","isShown":true}],"type":"DATES","title":"Dates"},{"searchers":[{"name":"Assignee","id":"assignee","key":"issue.field.assignee","isShown":true,"lastViewed":1744192319506},{"name":"Reporter","id":"reporter","key":"issue.field.reporter","isShown":true}],"type":"PEOPLE","title":"People"}]},"values":{"issuetype":{"name":"Type","editHtml":"\n\n\n\n <div class=\"field-group aui-field-issuetype\" >\n <label for=\"searcher-type\">Type</label> <select class=\"select js-default-checkboxmultiselect\"\n id=\"searcher-type\"\n multiple=\"multiple\"\n name=\"type\"\n data-max-inline-results-displayed=\"100\"\n data-placeholder-text=\"Find Issue Types...\">\n <optgroup>\n \n <option class=\" \"\n id=\"type_-2\"\n title=\"All Standard Issue Types\"\n value=\"-2\">All Standard Issue Types</option>\n \n <option class=\" \"\n id=\"type_-3\"\n title=\"All Sub-Task Issue Types\"\n value=\"-3\">All Sub-Task Issue Types</option>\n </optgroup>\n\n <optgroup label=\"Standard Issue Types\">\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12403&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_1\"\n title=\"Bug\"\n value=\"1\">Bug</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12407&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10002\"\n title=\"Epic\"\n value=\"10002\">Epic</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12411&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_2\"\n title=\"New Feature\"\n value=\"2\">New Feature</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12415&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10003\"\n title=\"Story\"\n value=\"10003\">Story</option>\n </optgroup>\n\n <optgroup label=\"Sub-Task Issue Types\">\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12416&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10200\"\n title=\"Documentation\"\n value=\"10200\">Documentation</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12416&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10001\"\n title=\"Research\"\n value=\"10001\">Research</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12407&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10100\"\n title=\"Testing\"\n value=\"10100\">Testing</option>\n \n <option class=\" imagebacked 10000 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12418&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_10000\"\n title=\"Verify\"\n value=\"10000\">Verify</option>\n </optgroup>\n </select>\n </div>\n ","validSearcher":true,"isShown":true},"project":{"name":"Project","viewHtml":" <div class=\"searcherValue\">\n \n <label class=\"fieldLabel\" for=\"fieldpid\">Project:</label><span id=\"fieldpid\" class=\"fieldValue\">\n \n <a data-pid=\"10201\" data-issue-type-ids=\"\" href=\"/browse/ZKCAL\" title=\"Browse ZK Calendar project\">ZK Calendar</a> </span></div>\n","editHtml":" \n <div class=\"field-group aui-field-project\" >\n <label for=\"searcher-pid\">Project</label> <select class=\"js-project-checkboxmultiselect\"\n data-placeholder-text=\"Find Projects...\"\n id=\"searcher-pid\"\n multiple=\"multiple\"\n name=\"pid\">\n <optgroup label=\"Recent Projects\">\n </optgroup>\n <optgroup label=\"All Projects\" >\n <option data-icon=\"/secure/projectavatar?pid=10201&size=small\"\n selected=\"selected\" title=\"ZK Calendar\"\n value=\"10201\">\n ZK Calendar (ZKCAL)\n </option>\n \n <option data-icon=\"/secure/projectavatar?pid=10600&size=small\"\n title=\"Freshdesk Jira Test Project\"\n value=\"10600\">\n Freshdesk Jira Test Project (FD)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=11100&size=small\"\n title=\"Keikai\"\n value=\"11100\">\n Keikai (KEIKAI)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=11200&size=small\"\n title=\"Keikai Doc\"\n value=\"11200\">\n Keikai Doc (KKDOC)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10800&size=small\"\n title=\"Project Q\"\n value=\"10800\">\n Project Q (PQ)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10400&size=small\"\n title=\"ZATS\"\n value=\"10400\">\n ZATS (ZATS)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10000&size=small\"\n title=\"ZK\"\n value=\"10000\">\n ZK (ZK)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10900&size=small\"\n title=\"ZK Addon\"\n value=\"10900\">\n ZK Addon (ZKADDON)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10500&size=small\"\n title=\"ZK Charts\"\n value=\"10500\">\n ZK Charts (ZKCHARTS)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10700&size=small\"\n title=\"ZK CKeditor\"\n value=\"10700\">\n ZK CKeditor (ZKCK)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10300&size=small\"\n title=\"ZK Document\"\n value=\"10300\">\n ZK Document (ZKDOC)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=11000&size=small\"\n title=\"ZK Fiddle\"\n value=\"11000\">\n ZK Fiddle (ZKFIDDLE)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10701&size=small\"\n title=\"ZK Gmaps\"\n value=\"10701\">\n ZK Gmaps (ZKGMAPS)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10103&size=small\"\n title=\"ZK JSP\"\n value=\"10103\">\n ZK JSP (ZKJSP)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10203&size=small\"\n title=\"ZK Pivottable\"\n value=\"10203\">\n ZK Pivottable (ZKPVT)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10101&size=small\"\n title=\"ZK Spreadsheet\"\n value=\"10101\">\n ZK Spreadsheet (ZSS)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10202&size=small\"\n title=\"ZK Spring\"\n value=\"10202\">\n ZK Spring (ZKSPRING)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10200&size=small\"\n title=\"ZK Studio\"\n value=\"10200\">\n ZK Studio (ZKSTUDIO)\n </option>\n <option data-icon=\"/secure/projectavatar?pid=10100&size=small\"\n title=\"ZTL\"\n value=\"10100\">\n ZTL (ZTL)\n </option>\n </optgroup>\n </select>\n </div>\n \n\n","jql":"project = ZKCAL","validSearcher":true,"isShown":true},"fixfor":{"name":"Fix Version","viewHtml":" <div class=\"searcherValue\">\n \n <label class=\"fieldLabel\" for=\"fieldfixfor\">Fix Version:</label><span id=\"fieldfixfor\" class=\"fieldValue\">\n \n 3.1.2 </span></div>\n","editHtml":"\n <div class=\"field-group aui-field-projectconstant\" >\n <label for=\"searcher-fixfor\">Fix Version</label> <select class=\"select js-default-checkboxmultiselectversion\"\n id=\"searcher-fixfor\"\n multiple=\"multiple\"\n name=\"fixfor\"\n data-max-inline-results-displayed=\"100\"\n >\n <optgroup label=\"\">\n <option value=\"-1\" title=\"No Version\">No Version</option>\n <option value=\"-2\" title=\"Unreleased Versions\">Unreleased Versions</option>\n <option value=\"-3\" title=\"Released Versions\">Released Versions</option>\n </optgroup>\n <optgroup label=\"Unreleased Versions\">\n <option value=\"id:3.0.2\" title=\"3.0.2\">3.0.2</option>\n <option value=\"id:3.1.1\" title=\"3.1.1\">3.1.1</option>\n </optgroup>\n <optgroup label=\"Released Versions\">\n <option value=\"id:1.0.0\" title=\"1.0.0\">1.0.0</option>\n <option value=\"id:2.0.0\" title=\"2.0.0\">2.0.0</option>\n <option value=\"id:2.1.0\" title=\"2.1.0\">2.1.0</option>\n <option value=\"id:2.1.1\" title=\"2.1.1\">2.1.1</option>\n <option value=\"id:2.1.2\" title=\"2.1.2\">2.1.2</option>\n <option value=\"id:2.1.3\" title=\"2.1.3\">2.1.3</option>\n <option value=\"id:2.1.4\" title=\"2.1.4\">2.1.4</option>\n <option value=\"id:2.1.5\" title=\"2.1.5\">2.1.5</option>\n <option value=\"id:3.0.0\" title=\"3.0.0\">3.0.0</option>\n <option value=\"id:3.0.1\" title=\"3.0.1\">3.0.1</option>\n <option value=\"id:3.1.0\" title=\"3.1.0\">3.1.0</option>\n <option selected=\"selected\" value=\"id:3.1.2\" title=\"3.1.2\">3.1.2</option>\n <option value=\"id:3.2.0\" title=\"3.2.0\">3.2.0</option>\n </optgroup>\n </select>\n </div>\n \n","jql":"fixVersion = 3.1.2","validSearcher":true,"isShown":true},"assignee":{"name":"Assignee","editHtml":"\n \n <div class=\"field-group aui-field-userlist\" >\n <label for=\"searcher-assigneeSelect\">Assignee</label> <fieldset rel=\"assignee\" class=\"hidden user-group-searcher-params\">\n </fieldset>\n <select class=\"js-usergroup-checkboxmultiselect\" multiple=\"multiple\" id=\"assignee\" name=\"assignee\" data-placeholder-text=\"Enter username or group\">\n <optgroup>\n <option class=\"headerOption\" data-icon=\"https://tracker.zkoss.org/secure/useravatar?size=xsmall&avatarId=10123\" value=\"empty\" title=\"Unassigned\">Unassigned</option>\n </optgroup>\n <optgroup>\n </optgroup>\n </select>\n <input type=\"hidden\" name=\"check_prev_assignee\" value=\"true\">\n </div>\n \n","validSearcher":true,"isShown":true},"status":{"name":"Status","editHtml":"\n <div class=\"field-group aui-field-constants\" >\n <label for=\"searcher-status\">Status</label> <select class=\"select js-default-checkboxmultiselectstatuslozenge\"\n data-placeholder-text=\"Find Statuses...\"\n id=\"searcher-status\"\n multiple=\"multiple\"\n name=\"status\"\n data-max-inline-results-displayed=\"100\"\n data-footer-text=\"-94 more options. Continue typing to refine further.\" data-status-lozenge=\"true\">\n <optgroup >\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/open.png\" value=\"1\" title=\"Open\" data-simple-status=\"{"id":"1","name":"Open","description":"The issue is open and ready for the assignee to start work on it.","iconUrl":"/images/icons/statuses/open.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Open</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/inprogress.png\" value=\"3\" title=\"In Progress\" data-simple-status=\"{"id":"3","name":"In Progress","description":"This issue is being actively worked on at the moment by the assignee.","iconUrl":"/images/icons/statuses/inprogress.png","statusCategory":{"id":4,"key":"indeterminate","colorName":"inprogress"}}\">In Progress</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/reopened.png\" value=\"4\" title=\"Reopened\" data-simple-status=\"{"id":"4","name":"Reopened","description":"This issue was once resolved, but the resolution was deemed incorrect. From here issues are either marked assigned or resolved.","iconUrl":"/images/icons/statuses/reopened.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Reopened</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/resolved.png\" value=\"5\" title=\"Resolved\" data-simple-status=\"{"id":"5","name":"Resolved","description":"A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.","iconUrl":"/images/icons/statuses/resolved.png","statusCategory":{"id":3,"key":"done","colorName":"success"}}\">Resolved</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/closed.png\" value=\"6\" title=\"Closed\" data-simple-status=\"{"id":"6","name":"Closed","description":"The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.","iconUrl":"/images/icons/statuses/closed.png","statusCategory":{"id":3,"key":"done","colorName":"success"}}\">Closed</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/resolved.png\" value=\"10000\" title=\"In Testing\" data-simple-status=\"{"id":"10000","name":"In Testing","description":"A resolution has been taken, and it is awaiting verification by tester. From here issues are either reopened, or are closed. ","iconUrl":"/images/icons/statuses/resolved.png","statusCategory":{"id":4,"key":"indeterminate","colorName":"inprogress"}}\">In Testing</option>\n </optgroup>\n</select>\n </div>\n \n","validSearcher":true,"isShown":true}}}
[{"id":-1,"name":"My open issues","jql":"assignee = currentUser() AND resolution = Unresolved order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":true},{"id":-2,"name":"Reported by me","jql":"reporter = currentUser() order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":true},{"id":-4,"name":"All issues","jql":"order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-5,"name":"Open issues","jql":"resolution = Unresolved order by priority DESC,updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-9,"name":"Done issues","jql":"statusCategory = Done order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-3,"name":"Viewed recently","jql":"issuekey in issueHistory() order by lastViewed DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-6,"name":"Created recently","jql":"created >= -1w order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-7,"name":"Resolved recently","jql":"resolutiondate >= -1w order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-8,"name":"Updated recently","jql":"updated >= -1w order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false}]
0.3
0
Root Cause
the "headerColor" and "contentColor" properties in the DefaultCalendarItem class were intended to set the background color for the header and content of the calendar item, but the provided color values were not properly applied to the CSS.
Solution
Deprecated the "withHeaderColor" and "withContentColor" methods in the DefaultCalendarItem class as they were not functioning as expected and replaced them with a new approach using the "withSclass" method.
Modified the "withHeaderColor" and "withContentColor" methods to prepended "background-color" to color values