Each user can have a default personal calendar created. Use the NewUserListener to configure that. To use the plugin in the component configuration, you must use the target-component:
<target-component>org.exoplatform.services.organization.OrganizationService</target-component>
The configuration can be found here.
<component-plugin>
<name>calendar.new.user.event.listener</name>
<set-method>addListenerPlugin</set-method>
<type>org.exoplatform.calendar.service.impl.NewUserListener</type>
<description>description</description>
<init-params>
<value-param>
<name>defaultEventCategories</name>
<value>defaultEventCategoryIdMeeting,defaultEventCategoryIdCalls,defaultEventCategoryIdClients,defaultEventCategoryIdHoliday,defaultEventCategoryIdAnniversary</value><!-- Multi value, use coma (,) to split values-->
<!-- The event category's name will be get from resource bundle by key "UICalendars.label." + defaultEventCategory's value.
If the key does not exist, the defaultEventCategory's value will be used to display.
Sample:
If the value is "defaultEventCategoryIdMeeting" then the resource bundle key is "UICalendars.label.defaultEventCategoryIdMeeting".
The value of this key is "Meeting", so "Meeting" will be display as default event category.
If the value is "Not exist key", because this key doesn't exist in resource bundle then
"Not exist key" will be display as default event category.
-->
</value-param>
<value-param>
<name>defaultCalendarCategory</name>
<value>defaultCalendarCategoryId</value><!-- Single value, default calendar category's name is "My group"-->
<!-- The calendar category's name will be get from resource bundle by key "UICalendars.label." + defaultCalendarCategory's value.
If the key does not exist, the defaultCalendarCategory's value will be used to display.
Sample:
If the value is "defaultCalendarCategoryId" then the resource bundle key is "UICalendars.label.defaultCalendarCategoryId".
The value of this key is "My group", so "My group" will be display as default calendar category.
If the value is "My calendar category", because this key doesn't exist in resource bundle then
"My calendar category" will be display as default calendar category.
-->
</value-param>
<value-param>
<name>defaultCalendar</name>
<value>defaultCalendarId</value> <!-- Single value, default calendar's name is "Default"-->
<!-- The calendar's name will be get from resource bundle by key "UICalendars.label." + defaultCalendar's value.
If the key does not exist, the defaultCalendar's value will be used to display.
Sample:
If the value is "defaultCalendarId" then the resource bundle key is "UICalendars.label.defaultCalendarId".
The value of this key is "Default", so "Default" will be display as default calendar.
If the value is "My calendar", because this key doesn't exist in resource bundle then
"My calendar" will be display as default calendar.
-->
</value-param>
<!--Params for default calendar setting-->
<value-param>
<name>viewType</name>
<value>1</value><!-- DAY_VIEW = "0" ; WEEK_VIEW = "1" ; MONTH_VIEW = "2" ; YEAR_VIEW = "3" ; LIST_VIEW = "4" ; SCHEDULE_VIEW = "5" ; WORKING_VIEW = "6" ;-->
</value-param>
<value-param>
<name>weekStartOn</name>
<value>2</value><!--SUNDAY = "1" ; MONDAY = "2" ; TUESDAY = "3" ; WEDNESDAY = "4" ; THURSDAY = "5" ; FRIDAY = "6" ;SATURDAY = "7" ;-->
</value-param>
<value-param>
<name>dateFormat</name>
<value>MM/dd/yyyy</value>
</value-param>
<value-param>
<name>timeFormat</name>
<value>HH:mm</value> <!-- HH:mm/hh:mm a -->
</value-param>
<value-param>
<name>localeId</name>
<value>BEL</value><!-- see more locale ids http://userpage.chemie.fu-berlin.de/diverse/doc/ISO_3166.html -->
</value-param>
<value-param>
<name>timezoneId</name>
<value>Europe/Brussels</value><!-- see more for timeZone ids http://www.unicode.org/cldr/data/docs/design/formatting/zone_log.html#windows_ids -->
</value-param>
<value-param>
<name>baseUrlForRss</name>
<value></value>
</value-param>
<value-param>
<name>isShowWorkingTime</name>
<value>false</value><!-- boolean true/false -->
</value-param>
<value-param>
<name>workingTimeBegin</name>
<value>08:00</value><!-- -->
</value-param>
<value-param>
<name>workingTimeEnd</name>
<value>18:00</value><!-- -->
</value-param>
<values-param>
<name>ignoredUsers</name>
<description>Definition users to ignore create default calendar</description>
<!--
<value>demo</value>
<value>marry</value>
-->
</values-param>
</init-params>
</component-plugin>
Details:
Name:
calendar.new.user.event.listener
- The unique key to avoid duplicate names. Users can change it.
Type:
org.exoplatform.calendar.service.impl.NewUserListener
- The class is set up to execute the creation of database.
Description: It is a plugin used to create default personal calendars.
See the details about the init-params of the component in the following table:
Value-params | Possible values | Default value | Description |
---|---|---|---|
defaultEventCategories |
String (Comma separated list of resource bundle keys for category names)
|
defaultEventCategoryIdMeeting,defaultEventCategoryIdCalls,defaultEventCategoryIdClients,defaultEventCategoryIdHoliday,defaultEventCategoryIdAnniversary
| The default event categories for users. |
defaultCalendarCategory |
String
|
defaultCalendarCategoryId
| The name of the default calendar categories. |
defaultCalendar |
String
|
defaultCalendarId
| The name of the default calendar. |
viewType |
0-6 (see below)
|
1
| Default view after user logs in and goes to the Calendar portlet. |
weekStartOn |
1-7 (see below)
|
2
| Day to use as the beginning of the week. It only affects the Week view. |
dateFormat |
valid Java Date format
|
MM/dd/yyyy
| The display format for dates. |
timeFormat |
valid Java Date format
|
HH:mm
| The display format for time. |
localeId |
valid locale ID
|
BEL
| Id of the geographic locale. |
timezoneId |
valid TimeZone id
|
Europe
| User time zone. |
baseUrlForRss |
none
|
none
| The URL to publish the RSS content. |
isShowWorkingTime |
true/false
|
false
| Indicates if the working time should be highlighted in the Day view. |
workingTimeBegin |
time in timeFormat
|
08:00
| The start time in working time. |
workingTimeEnd |
time in timeFormat
|
18:00
| The end time in working time. |
ignoredUsers |
user id, use multiple by each line
|
N/A
| Definition users to ignore creating the default calendar. |
The viewType parameter is encoded by a number as follows:
0: Day view
1: Week view
2: Month view
3: Year view
4: List view
5: Schedule view
6: Working days view
The weekStartOn parameter is encoded as follow:
1: Sunday
2: Monday
3: Tuesday
4: Wednesday
5: Thursday
6: Friday
7: Saturday