|
Social Collaboration provides unification of all social networking and collaboration applications within WEM:
Amongst other things, these allow users to generate content (user generated content), which require:
A blog (or weblog to use the full name) is a website that provides commentary or information on a particular subject or company, while also letting readers interact by:
- leaving comments about the individual entries
- subscribing to feeds
- setting trackbacks
The blog template provides a quick and easy mechanism for setting up a complete blog, including:
- creating a new blog
- entering individual entries; you can specify whether these are displayed:
- in the timeline; shown in reverse chronological order in the main body of the blog overview
- under the heading Pages in the sidebar
- quick reference links sorted by various criteria:
- Archives - Allows quick reference to blog entries according to their dates of entry.
- Authors - Overview of participating authors.
- Categories - Allows quick reference to blog entries according to their categories (tags).
- Pages - Overview of individual pages.
- Search - A search box that allows the user to search all blog entries.
- Tag Cloud - Displays tags; either from the entire website or the current page.
- embedding another blog
An example might look as follows:
Blogs have a predetermined structure in the Content Repository. The root (or overview) page is at the head of the structure:
Under this the pages are sorted according to:
- Timeline, the page structure reflects the date of the individual blog entries
- Sidebar, all such pages are grouped together in one folder structure
Open the Websites console.
Select the location where you want to create your blog, then click on New... to create a new page.
Enter a Title for your new page and the Name if you do not want the default.
Select the Blog Template.
Click Create to create the new blog page. A completely new blog page looks as follows:
Adding Quick Reference Links
Quick reference links provide additional navigation aids for your visitors. To add such links to your blog overview page:
Open the blog overview page.
From the sidekick you can add various quick reference components to the right column:
To post a new entry to your blog:
-
Click Add Entry to open the dialog:
Here you can enter a heading and body text. Assigning categories (tags) to this entry means that it will be listed under the appropriate category.
Click on Timeline or Sidebar to specify where the entry should be displayed:
- Timeline, the entry will be shown in the main body of the blog overview page; this is the default.
- Sidebar, the entry will only be shown under Pages in the right sidebar.
Click Submit Entry to save the blog entry. It appears as follows:
A paragraph system is now available for this blog entry. Here you can add further instances of the components (from various sections of sidekick); including Image, Download, Text, and Read More.
The overview page will also reflect the new entry, with the Timeline and Sidebar being updated as appropriate:
Importing Other Blogs by using Feeds
You can import content into your blog by using the feed importer.
This can be useful for:
- importing an existing blog; for example, from a legacy platform
- creating a community with blog feeds from several people
- using aggregated content from a remote source (might also require changes to your template)
To import blogs from other websites into your blog:
Navigate to the Tools window.
In the Tools window, expand the Importers folder and double-click the Feed Importer:
Click Add to open the New Importer Configuration dialog:
- Type
The type of feed. Select from RSS, Atom, Calendar, IMAP, IMAP (over SSL), POP3 and POP3 (over SSL).
- Feed URL
The source URL for the blog data.
- Import to Path
Add the path where the imported blog should be stored.
- Update Interval in Seconds
Enter a time in seconds. The minimum is 300 seconds. The first import of blog information happens after the time you specify (you do not see content import until after the specified time period has elapsed). Using the OSGi interface the minimum can be reduced, but this should only be considered for testing purposes.
Click OK. Your import configuration is stored.
Navigate to your blog. After the specified interval, imported data appears on the blog.
Internet forums provide an area for your site users to discuss issues and ask questions. Individual comments (or posts) are added to conversations (or threads) related to specific topics. This in itself is a valuable source of content.
The forum functionality included in WEM provides:
In the following sections Geometrixx is used an an example to illustrate the features available.
A typical forum page will list all topics, for example the Geometrixx Community page:
Add the Forum component to your own page to create a new forum. Using the dialog of this component, you can also make your forum available as a feed.
Creating a New Forum Topic
Users can create new topics using the field provided at the head of the forum:
Clicking in this field will expand the function, so that visitors can enter a subject and message; if required they can also select to be notified of any changes to "their" thread before submitting the new topic.
Clicking on a link to an individual topic will drill down to give an overview of that topic and all the replies.
From here, visitors can post their replies to the topic.
Note
The URL for an individual topic is built up from the forum page and the topic (stored as user-generated content); for example:
.../community.topic.html/forum-why_won_t_anybodyhe.html
When appropriate the topic can be closed, this prevents further replies being posted.
You can close a topic by:
- Double-clicking on the forum to open the dialog of the Forum Topic.
- Use the Settings tab in the dialog to select Closed.
- Click OK to save.
Pinned topics appear at the top of the list shown in the Forum overview. They can be used to highlight specific topics.
They are sorted by the date of the last reponse and also highlighted.
Pin an individual a topic by:
- Double-clicking on the forum to open the dialog of the Forum Topic.
- Use the Settings tab in the dialog to select Pinned.
- Click OK to save.
You can moderate your forums using the Community console or workflows.
After a user creates a topic with the Notify me of changes checkbox active when posting, they are automatically notified of changes to the topic (new posts).
Other visitors to the topic can also subscribe to notifications using the Subscribe button, which toggles to Unsubscribe as appropriate. Subscription starts a workflow, this creates a subscription for the topic and sends the user a confirmation email. Notification emails are sent when new posts are added to the topic.
Note
The default Subscribe workflow is Forum Topic Subscription.
The default Unsubscribe workflow is Forum Topic Unsubscription.
In a standard Geometrixx installation notifications are sent when a new post is added to the topic; i.e. linked to the forum event PostAdded. With further development this could be extended to other events (such as modifications) or the notifications could be sent to the Workflow Inbox if required.
Texts for the subscribe and unsubscribe emails can be configured to your requirements:
- /etc/workflow/forum/email/topicsubscribe.txt
- /etc/workflow/forum/email/topicsubscribe.txt
Caution
A few settings need to be configured in order to be notified by email. It is also possible to customize the email template or to add an email template for a new language. Please refer to Configuring Email Notification to configure email notifications.
Tags in the Forum namespace can be assigned to a topic or post. Tags added to a topic will be shown in the header.
These tags can be managed using the Tagging console.
The standard Forum component includes a Search function, which should be configured to link to a Forum Search component on a separate Search Result Page; for example:
http://localhost:4503/content/geometrixx/en/community/search.html
This offers the visitors options for configuring their search:
The forum posts are saved in CRX, under:
/content/usergenerated
Various standard components are available as a basis for building your forum.
This provides the basis of an entire forum.
Note
The forum component is stored on the page itself, whereas the topics and individual posts are stored in the appropriate location under:
/content/usergenerated/...
Various settings can be configured:
- Topics Per Page
You can specify the number of topics or posts shown on a page. Excess of this will be displayed on separate pages.
- Moderated
If checked, user generated forum entries must be moderated before they are displayed on the publish instance; for example, using the Community console or a workflow for moderation.
- Closed
After a forum has been closed, no new posts can be made.
- Feed Enabled
When selected, the forum will be made available as an RSS feed.
You can also customize various texts that are shown in specific scenarios:
In Design Mode you can also configure the search box:
- Search Result Page
The path to the page that will display the search results. This page must then contain the Forum Search component.
- Empty Text
Your customized text to show in the empty search field; the text disappears as soon as the user clicks in the field.
A skeleton forum provides:
- Search (search box)
- a mechanism for creating a new topic
Adding a new topic, then posts for this forum, will automatically generate the appropriate components required to give an overview and access to the new topics and posts.
The Forum Search component is designed to be used on the Search Result Page as defined for the Forum component (in Design Mode).
The forum search component can be configured by the author, then the visitor can select the required option:
- Forum Paths
Restrict the paths to be searched. If empty, all forums are searched.
- Results Per Page
Specify the number of results to be shown on each page.
Again, a range of texts can be customized:
The forum search component provides the site visitors with more selection options:
Note
Usually this component is only available when the Forum component has been instanced.
When a new topic is created the Forum Topic component is implemented.
This also has a dialog, though often you do not need to edit this directly as a lot of the actions can also be managed over the Community console.
Note
Topics and individual posts are stored in the appropriate location under:
/content/usergenerated/...
- Subject
The subject is used:
- in the topic list, for the link to the individual topic
- as the title on the individual topic page
- for searching, when selected
- Message
The message body can be viewed and edited if necessary.
- Approved by moderator
This is active if:
- the forum is not moderated; i.e. all topics and posts are automatically approved
- the message has been explicitly approved by a moderator; for example, from the Community console or using a moderation workflow.
- Mark as spam
This can be set either directly in the dialog or from the Community console.
- Tags
Tags from the Forum namespace can be selected here. They will be shown in the topic header.

- Topics Per Page
Sets the number of posts to be shown, before the list is paginated.
- Pinned
Pinned topics appear at the top of the list; sorted by the date of the last response and also highlighted.
- Moderated
If checked, user generated forum topics must be moderated before they are displayed on the publish instance; for example, using the Community console or a workflow for moderation.
- Closed
When closed no new posts can be added to the forum.
When available, the Name, E-mail Address and Website will be filled in from the users profile or information given when registering the post. When necessary they can be viewed and edited.
Note
Usually this component is only available when the Forum component has been instanced.
The post component is used when a visitor replies to a topic.
This also has a dialog, though again you do not often need to edit it directly as it can also be managed over the Community Console.
- Subject
A subject can be added, this is used for searching.
- Message
The message body can be viewed and edited if necessary.
- Approved by moderator
This is active if:
- the forum is not moderated; i.e. the post is automatically approved
- the post has been explicitly approved by a moderator; for example, from the Community console or using a moderation workflow.
- Mark as spam
This can be set either directly in the dialog or from the Community console.
- Tags
Tags from the Forum namespace can be set here.
When available, the Name, E-mail Address and Website will be filled in from the users profile or information given when registering the post. When necessary they can be viewed and edited.
Subscribe / Unsubscribe (User State Toggle Button)
The Subscribe button is not forum specific, but a definition of a user state toggle button that can be used to define a generic user state.
A wiki is a web site where any users with access can collaborate and edit the web site directly using a simplified markup language. You create and modify wiki topics in a simple markup language within a web browser.
In WEM, a single wiki page is called a topic and a collection of topics is called a wiki space. You can create multiple wiki spaces. Permissions determine who can read or change the content of the wiki space. You can search across a wiki space as well as create topics on the fly. In addition, you can add attachments to wiki topics.
This section describes wiki concepts and describes how to use the provided wiki functionality.
To add a wiki to your website, simply go to the Website Console and copy the Wiki Content (/content/wiki) to the location in your site structure where you want to start the new wiki space.
- Open the Websites Console.
- Copy the Wiki Content structure from /content/wiki to where you want to create a wiki.
- Rename the newly created wiki space by changing its title as appropriate.
- Open the main page of the newly created wiki.
After you create a wiki space you can edit the main topic (or any new topics you may have created).
- In the Websites Console, navigate to the page where you have started your wiki.
- Click the Edit tab and edit the wiki page, using the wiki syntax for simple formatting.
- You can switch between Wysiwyg and Wiki text edit mode by clicking Convert to Wysiwyg/WIKI-text in Advanced Operations. Both edit modes provide formatting shortcuts.
- Optionally, in the topic title field you can enter a new name for the topic. If you do not type a name, the title will automatically be used as topic name for this wiki page.
- Click Save to persist your changes or, to save the page without notifying subscribed users of the change, click Quiet Save. Click Preview to see what your page looks like before saving (all changes are saved in the wiki page's history).
After you create a wiki space you can also create new topics by either:
You can delete wiki topics and spaces by either entirely removing
them from the system or archiving them in the attic.
To delete a wiki topic or space:
- Navigate to the wiki topic that you want to delete.
- Click the Edit tab.
- Below the textarea, under Advanced Operations, click Delete. WEM requests confirmation that you want to delete and recommends that you archive the topic in the attic.
- To move the topic to the attic, click Delete. To delete the page entirely, clear the Attic check box and click Delete. You can also click Cancel to keep the topic.
Renaming and/or moving wiki topics
To rename or move a wiki topic:
- Navigate to the wiki topic that you want to rename or move.
- Click the Edit tab.
- Below the textarea, under Advanced Operations, click Move/Rename.
- To change the name of the topic, type a new name in the New Name field.
- To move a topic, select a new parent from the New Topic Parent list. To move subtopics with the main topic, select the Move subtopics check box.
- Click Rename to make the change. If you make a mistake, you can click Reset to revert to current settings or click Cancel to close the Rename page.
Modifying topic properties
To modify topic properties:
- Navigate to the wiki topic that you want to modify properties for.
- Click the Edit tab.
- Below the textarea, under Advanced Operations, click Edit topic properties.
- Make changes to the topic properties and click Apply to save them or Cancel to ignore them. See Environment Variables for information on how to use and include environment variables in topic pages.
Adding attachments to topics
To add an attachment to a topic:
- Navigate to the wiki topic that you want to attach files to.
- Click the Attachments tab.
- Click Browse to upload a local file.
- If you want the attachments to be listed on the topic page, select the check box in Display Options.
- If you want to create a link to the attached file, select the check box in the Attach new file.
- Click Upload to upload the attachment.
To view changes made to a particular wiki topic:
- Navigate to the wiki topic that you want to view the history for.
- Click the History tab. WEM displays any changes that were made to the topic and saved.
Subscribing to and unsubscribing from topics
To subscribe to a topic whenever changes are made:
- Navigate to the wiki topic you want to subscribe to.
- Click the History tab.
- Click the subscribe to this topic link. If you are subscribed to a topic, the link changes to unsubscribe from this topic. Click the link to unsubscribe.
The Calendar and Event components provide the following functionality:
An example Calendar can be seen on the Events page of Geometrixx; for example, http://localhost:4502/content/geometrixx/en/events.html.
To add a new calendar you can add an instance of the Calendar component to your existing page (ensure that the calendar component has been enabled in Design mode; it will appear under Calendar in the sidekick, from here you can drag it to create an instance at the required position).
Creating an Event in a Calendar
When creating an event in a calendar you specify the start and finish days; and optionally, the specific times too.
In the Month view click on a specific date to open the Create event dialog:
- In the Summary field, enter a descriptive name for the event.
- Set the appropriate start and end dates with the From and To fields.
Deactivate the All day check box to add specific times if required. The drop down list provides times at 15 minute intervals, but you can type in any time.
- If you select a period for Repeats, copies of the event will be automatically generated at the required interval.
- Optionally, add a Description, Tags and a Link.
Click Save. The event appears on your calendar:
-
In the calendar, click on the event you want to modify. The Edit event window opens.
-
Make your changes and click Save.
If you are editing an event that has been set to repeat at intervals you will be asked to confirm whether you want to update all occurrences, or just the current instance:
To delete an event you also use the Edit event dialog:
In the calendar, click on the event you want to delete. The Edit event window opens.
Click Delete.
You will be asked to confirm the deletion, and in the case of a recurring event you will be asked whether you want to delete the series or only the current instance.
To navigate through the calendar month by month, click the left and right arrows above the calendar. To move directly to today, click the Today link.
Changing the Calendar View
CQ Calendars provide views to determine how you, and the visitors to your website, see the calendars and events presented.
The Month and Agenda views are activated and available on the calendar when using CQ out of the box.
Clicking Month displays the month view:
If there are too many events to be shown for a single day, then this will be indicated:
Clicking Agenda displays the agenda view:
Defining Default Settings for Your Calendar
You can select the timezone, date and time formats and also the day you want as the start of the week:
-
-
In the General tab you can define formats and the day to use for start of week.
- Date format: Select from Locale dependent, 25.09.2009, 09/25/2009 or 2009-09-25
Locale dependent uses the locale/language setting of the user currently logged in (translations include date/time format strings). This setting makes sense for intranet-based usage on author instances only (since a login is normal there). When publishing the calendar, a fixed format setting that is used for all website users is often used.
- Time format: Select from Locale dependent, 1 pm or 13:00.
- Start of week: Select from Locale dependent or any day of the week.
- Time Zone: Select the required time zone (according to area/location) from the drop down list; type a substring of the required the location to select a sublist, e.g. typing Euro will limit the list to those entries containing that string.
If left empty the locale value locale of the server will be taken (this is the locale of the server JVM).
-
Note
Changing the time zone will refresh the view of any existing events.
Note
The time zones listed are taken from the zoneinfo database (also known as Olson database). Each time zone uses the standard naming of <area>/<location>; for example, Europe/London or Atlantic/Faroe amongst many others.
Daylight saving changes are made automatically, based on information in the database.
Customizing the Appearance of a Calendar
At any time after you have created a calendar, you can customize certain aspects of the appearance:
Click Edit on the calendar.
Select the Appearance tab to set:
- Calendar lens height
- Show querybuilder
- Event view popup size
- Event edit dialog size
- Default lens
-
Defining where Events on the Calendar can be edited
To define when events on the calendar can be edited:
Click Edit on the calendar.
Select the Edit tab to specify:
Click OK to save the changes.
You can filter events to see only those events containing a specific string. The filter will be enforced when you navigate through the months.
For example, to see only those items that have the word "Staff" in them:
In the Search box, type the term you want to filter with (i.e. the keyword that CQ will look for in the calendar events).
Click the magnifiying glass to apply the filter. Only events containing this term are shown, all other calendar events are hidden.
Remove the keyword in the Search box (either manually or use the x button) and click the magnifying glass to remove the filter. All events are displayed again.
Note
After applying the filter the view stays on the current month. You might have to navigate to another month/week/day to see any filtered events.
The Query Builder can be used (once activated for the calendar) for more detailed searches than are possible with the filter.
For more information see the Dam Asset Share.
You can import an ics file to include events from another calendar (this is a one-off action, see Importing an External Calendar for full integration).
For example, to import an event with the following details:
Click Edit on the calendar and select the Subscriptions / Import tab:
Click the Upload ICS file button to open a dialog allowing you to either enter the file name, or browse your local file system:
After specifying the file, use the Upload button to initiate the action. CQ will confirm the success with a message box.
Click OK to save. The new event will be shown:
The Calendar Export Link component can be selected from sidekick and allows you to create a link to the entire content of a calendar component - both the calendar's own and any subscribed content.
There are two types of link:
- ICS file download
This can be used for a one-time download; for example, when importing content into Outlook or iCal.
- Webcal link
This is recognized by most browsers and opens the default calendar application (for example, Outlook or iCal) for subscription. Typically, the calendar application can be configured to regularly check the CQ calendar for updates.
Note
A webcal link requires anonymous read rights on the calendar page, component and all events displayed. There is no way for the calendar application to use credentials when checking the subscription, so they will always access the link as an anonymous web user; this is default on publish, but might require configuration if required on author.
- Link Title
Specify the text you want used for the link.
If empty the text Export Calendar is used for the link.
- Link Type
You can choose from:
- Download ICS file (http://)
- Webcal subscription (webcal://)
- Calendar component
Specify the path to the page holding the required calendar component; this is typically a
page path + /jcr:content/par/calendar
if the calendar lies in the paragraph system "par" on that page.
Or leave empty to use the calendar on the current page (in the same paragraph system).
There are two examples of such links on the Geometrixx page, http://localhost:4502/cf#/content/geometrixx/en/events.feed:
- Subscribe to calendar
- Download Calendar as ICS
As with all CQ pages a calendar page is available as feeds that can be subscribed to. For example, the Geometrixx page, can be accessed as either:
- Atom feed
http://localhost:4503/content/geometrixx/en/events.feed
- RSS feed
http://localhost:4503/content/geometrixx/en/events.feed.rss.xml
For example, the Atom Feed:
Creating a Content Page for a Single Event
As well as creating events within a calendar you can create a single event directly on a page. A calendar can then subscribe to the page (or to the subtree holding this, and other, events). The event(s) will then be automatically shown in the calendar.
This allows you to link pages holding detailed information about events with a calendar providing the overview.
-
Select the Event component from the Calendar section of sidekick. Drag it onto the page.
You can enter the event details by opening the dialog with the Edit event button (right side of the component instance). Details will then be shown on the page, you can also add other content related to the event, for example:
Note
Double-clicking on the component area (but not on the Edit event button) opens the Edit Component dialog for editing details about the event form and dialog - if required.
From your (overview) calendar subscribe to this page (or tree, it will detect all single events on the child pages) for the event to be shown.
For example, creating a selection of pages, each holding a single event (as above):
Will provide you with a calendar containing an overview of all single events:
The Edit event dialog is based on a CQ Form (cq:Form).
A standard event form is provided out-of-the-box, but if required you can copy this to create a form customized to your own specifications.
Warning
You should never edit the standard event form (located at /libs/collab/calendar/content/eventform.html).
Always create your own event form before editing.
To select the form to use when creating or viewing events:
Click Edit on the calendar.
Select the Edit or View tab as appropriate to specify:
- Details specific to either:
- Allow editing:
(See Defining where Events on the Calendar can be edited for more details on these settings.)
- Permission sensitive
- Only on authoring instance
- Never
- Event display:
- Embed view form in popup
- Embed view pattern in popup
- Link to URL in event (using pattern as fallback)
- Link to view pattern
- Event form:
- Leave blank to use the default form (eventeditor).
- Specify a form of your choice.
- Event pattern
- Specify the URL pattern. Select from the placeholders available.
Click OK to save the changes.
Note
Day recommends that you create event forms for a specific calendar underneath the page holding the calendar. For example, ../mycontent/mycalendar.html would use ../mycontent/mycalendar/myeventform.html.
Customizing Your New Event Form
Open the required form with either the Event edit form or Event view form links as appropriate:
Caution
To avoid the event form page being shown in any navigation use the Page tab of sidekick to access Page Properties... and activate Hide in Navigation.
Here you can add, move or delete the Event Form components:
This component adds the basic fields that are always required for any event. These fields ensure that an event contains the minimum information required for ICS export.
Warning
Do not delete the instance of Event Basics from your form. This information is needed by every event form.
This component provides the link for downloading a single event as ICS. By editing this component you can add the link Title.
This component can be used on a event form (only visible on an existing event that has been saved).
Although available under the Form section of sidekick (as opposed to the Event Form section), this component is often used with events.
You can configure various parameters for an instance of this component (double-click), but you must set the Element Name to ./url.
This component allows you to input information about the person organizing the event:
Note
This information is not compulsory.
This component allows the user to place the event into a "Push" Workflow:
A "Push" workflow is used when a calendar has an event that should appear in a separate calendar, but does not have write access to the that calendar.
As there is not write access to the other calendar, a workflow is used to send a request for the event to be accepted into the other calendar. After the event is accepted any changes will be automatically synchronized.
For example, a university might have one main calendar holding all common events, with each department having their own individual calendars holding both department specific events and common events (by subscribing to the main calendar). If a "common" event is created in a department calendar the workflow can be used to request that it be accepted by the main calendar.
Double-click the component instance to configure:
- Title, to appear on the event form
- Button label, to appear on the event form; leave empty to use the default title "Start Workflow"
- Workflow Model, specify a workflow model (that has a subscription process step)
- Target Calendars, specify the target calendars
You can create workflows for processing events; an example is the Calendar Event Promotion workflow:
This component provides the fields necessary to define events that repeat at regular intervals:
The individual fields are dependent on the period selected by the author.
Subscribing to/from Other Calendars
Subscribing to a CQ Calendar or Event
Subscribing will automatically show the target content in the current calendar. You can subscribe to:
- another CQ calendar
- a CQ event
- a subtree; any calendars or events within the tree will be included
To configure the subscriptions:
Click Edit on the calendar.
Select the Subscriptions / Import tab and use the Subscribed calendars/events field to specify the target location; this can be a single page, or the root page of a subtree.
You can use the + button to add more subscriptions.
Click OK to save and activate the subscription.
Subscribing to an External Calendar
You can connect to the feed provided by an external calendar so that events are regularly imported into your CQ WCM calendar. This uses the CQ Feed Importer, which polls the external calendar at regular intervals.
Calendar URLs are generally available within a calendar's settings. Check the documentation for your calendar application for more information. You can import either a public calendar or a private calendar. If you want to import a private calendar, you need access to the private ics URL.
To import events from another calendar:
-
Expand the Importers folder and double-click the Feed Importer.
Click Add to open the New Importer Configuration dialog to define:
- Type
The type of feed. Select Calendar (RSS, Atom, IMAP, IMAP (over SSL), POP3 and POP3 (over SSL) are also available if necessary).
- Feed URL
The source URL for the calendar data.
- Import to Path
Add the path where the imported calendar should be stored.
In the Import to Path field navigate to the calendar you created and then navigate to /jcr:content/calendar/calendars/default. You can also paste the path into the field. For example, for a page created in /content/calendar.html the import path is /content/calendar/jcr:content/calendar/calendars/default.
- Update Interval in Seconds
Enter a time in seconds. The minimum is 300 seconds. The first import of calendar information happens after the time you specify (you do not see content import until after the specified time period has elapsed). Using the OSGi interface the minimum can be reduced, but this should only be considered for testing purposes.
Click OK. Your import configuration is stored.
Open, or refresh, your calendar page. After the specified interval, imported data appears on the calendar.
Using an Event Push Workflow
You can customize your event form to include the Event Push Workflow field. This allows you to "push" the event in question into another calendar by means of a workflow.
For example, a university might have one main calendar holding all common events, with each department having their own individual calendars holding both department specific events and common events (by subscribing to the main calendar). If a "common" event is created in a department calendar the workflow can be used to request that it be accepted by the main calendar.
To configure your calendar for use with a workflow:
- Create a new page and create a Calendar there.
- Edit the calendar and subscribe to a second calendar; for example the Geometrixx page Events (/content/geometrixx/en/events.html).
- Edit the calendar and create a new events form. Ensure that this event form is assigned to your calendar.
- Edit this form and add the Event Push Workflow field.
- Configure the Event Push Workflow field:
- Title, assign your own title.
- Button label, assign your own label.
- Workflow Model, select the workflow that can be used for this event form. For example, the Calendar Event Promotion workflow.
- Target Calendar, assign the calendar to which the event will be sent.
- Save all changes.
To use a workflow with your calendar (for example, the default workflow):
- Create an event in the calendar configured above.
- After inputting the event details, select the required workflow in the Event Push Workflow field.
- Click Start Workflow. A message will confirm that the event has been placed in the workflow for processing..
- Click OK to save.
The appropriate person will now be assigned the Moderation step in the workflow.
User Generated Comments and Ratings
Comments and ratings are a standard method of collecting feedback from your customers about how they value specific products and services.
The Comments component allows visitors to leave comments about the current page or paragraph.
You can configure:
- Default Message
Enter a message to encourage the visitor to leave a comment and possibly indicate what sort of information you are hoping for; this message will disappear as soon as the visitor clicks in the comment field.
- Allow Replies
Allows visitors to reply to existing comments.
- Display as tree
Indicates whether replies are to be displayed as a tree.
- Moderated
If checked, user generated comments must be moderated before they are displayed on the publish instance; for example, using the Community console or a workflow for moderation.
- Closed
When checked the comments are closed; so no new comments can be added.
In the Date Format tab you can also configure the date format to be used when displaying the comments:
The visitor will then be able to leave a comment; basic details about themselves can also be entered if they are not currently logged on:
When viewed on the author environment the individual comment posts also have a dialog that you can use for configuration if necessary:
- The Message Text
You can edit the text of the comment.
- Moderate
You can moderate the post to set Approve, Deny or Pending.
- Mark as spam
You can mark an individual message as spam, or not.
This dialog shows information that the author has supplied: Name, E-mail Address and Website.
Enabling User Generated Comments
To enable comments on a page:
On your author instance, add the Comments component (in the Collaboration tab of the Sidekick) to the page.
Configure your instance of Comments as required using the dialogs.
-
On the publish instance: open the corresponding page.
Post a comment. It appears on the page (unless Moderated was activated).
On the author instance: refresh the page to display the comment on that page too.
Comments look as follows on a page:

The Ratings component allows the visitor to rate the current page or paragraph. It is very closely related to Comments.
- Allow comments
Enable or disable comments from the visitor. This controls whether the Comment field is displayed within the rating.
- Default Message
This field is relevant when Allow Comments has been selected. Enter a message to encourage the visitor to leave a comment and possibly indicate what sort of information you are hoping for. This message will disappear as soon as the visitor clicks in the comment field.
- Moderate ratings
If checked, user generated ratings must be moderated before they are displayed on the publish instance; for example, using the Community console or a workflow for moderation.
- Date format
You can also configure the date format to be used when displaying the ratings.
The visitor will then be able to click the required number of stars to leave their rating, if comments have been enabled there will also be a field for their comment. Basic details about themselves can also be entered if they are not currently logged on:
As with the individual Comment Posts, the individual rating posts have a dialog for configuration if necessary.
Enabling User Generated Ratings
To enable ratings on a page:
On your author instance, add the Ratings component (in the Collaboration tab of the Sidekick) to the page.
Configure your instance of Ratings as required using the dialogs.
-
On the publish instance: open the corresponding page.
Post a rating. It appears on the page (unless Moderate ratings was activated).
On the author instance: refresh the page to display the rating on that page too.
Ratings (with Comments) look as follows on a page:
Moderating Social Collaboration Sites
As a site owner you have total control over the content that is published. You can decide to either:
- Display all user generated content.
- Moderate it by disabling (or enabling) the content.
- Modify some of the user generated data.
- Delete it.
To achieve this you can use:
The Community console can be used to moderate user generated content. This is content entered by your community of users by means of comments (including those within ratings) and forum posts.
- Any changes made with the Community console on the author environment will be automatically, and immediately, replicated to the publish environment.
- Any changes made by members of the community to comments and posts on the publish environment will be reverse replicated to author and shown there.
The messages are nested according to page, then indented by thread; the following shows the Geometrixx Community (forum) page as an example:

Clicking the Context for an individual post will open the appropriate page.
Alternatively, a range of actions are available in either the toolbar, or the context menu (usually the right mouse button). You can apply the following actions to a specific post:
- View
Specify the type of messages to be viewed in the console. Choose from All, Spam, Not Spam, Pending, Approved or Denied. The view selected will be sticky.
- Approve
An approved message is listed as OK in the Status column. This action is used to approve a message; for example if set with another status, such as denied, pending or spam.
After approval it will be shown on the publish environment.
- Deny
This action means that a post is not displayed on the publish environment, for example if it does not comply with your guidelines for forum usage. On the author environment it is marked as denied.
- Pending
When a social collaboration feature has been defined as moderated, any new post is set with the status Pending until it has been explicitly approved or denied. While pending the post is not shown on the publish environment and on the page of the author environment it is marked as needing moderation.
After approval or denial, the Pending action can be used to return a message to the pending status.
- Reply
This allows you to reply to a comment directly from the community console. The page will be updated on both author and publish.
- Spam
Setting a message as spam means that it will not be visible on the publish environment. In the author environment it will be marked as spam.
- Not Spam
This removes the spam markers and returns the message to a normal status.
- Delete
This will delete the topic or post.
Note
Certain actions can also be applied to the individual components on the actual pages in the author environment.
See the edit dialogs, and/or context menus, of the appropriate components; such changes will also be automatically replicated to the publish environment when appropriate.
Note
If a forum, comment or rating component has been configured as Moderated then any new posts must be approved by a moderator before they are shown on the publish environment.
Using Workflows for Moderation
Moderation can involve setting up a Workflow with launcher task to fetch user generated content so that a person can be assigned to:
- Monitor the user input.
- Adjudicate on the quality of content; for example remove obscene entries.
- Provide further feedback if necessary.
The Comment Moderation Workflow
As an example the Comment moderation workflow is provided in a standard CQ installation to illustrate moderating comments:
On the author instance, open the page holding your instance of the Comments component.
Open the Edit dialog of the Comments component and check to activate Moderate comments.
-
On the publish instance, open the corresponding page.
-
On the author instance, check your Inbox:
Right-click the Approve comment item and select Complete to approve the comment.
The following dialog will open. Select the required action as Next Step:
- Approve Comment
The comment is displayed on both the authored and the published page.
- Delete Comment
The comment is removed from both the authored and the published page.
- Ignore Comment
The comment is displayed on the authored page and removed from the published page.
You can also add a comment to the step if required.
Click OK. The action selected will be carried out.
For example, if Approve Comment is selected the comment is displayed on the publish instance, after a page refresh.
Note
This workflow can also be used for moderating rating comments, forum entries and blog posts.
Social Collaboration depends on user generated content, which can come from blog entries, comments, ratings or forum posts.
Although the content that has been generated by a user on the publish instance and the content that has been generated by an author on the author instance are seamlessly displayed on a page, they are originated in differing environments and therefore different repositories.
Both in the author and in the publish instances, the user generated content is persisted in a special folder in the repository:
/content/usergenerated
- Every time there is a change in this folder on the publish instance, it is copied from the publish instance to the author environment; this process is called reverse replication (publish to author).
- When an author modifies the content on the author instance, the changes are persisted in the /content/usergenerated folder of the author instance. By activating the content, it is replicated from /content/usergenerated in the author instance to /content/usergenerated in the publish instance. This process is called replication (author to publish).
See Replication Agents for more information on how to set up the replication and reverse replication agents.
Various mechanisms are available within CQ:
- CQ can be configured to automatically detect if a user generated entry is a spam message and block it from being displayed. This can be done by Setting an Akismet Key.
- CQ also protects your application against malicious injection of client-side script within a user generated comment, a vulnerability called cross-site scripting (XSS). See the Security Checklist for more details.
Automattic Kismet (Akismet) is a spam filtering service for user generated feedback that combines information about spam captured on participating pages with rules and checks to block future spam.
To view your current settings for the Akismet key:
Open the configuration in the Felix console by navigating to <cq URL>/system/console/configMgr.
In the Configuration list, select Day CQ Antispam.
This shows the fields of information needed for configuration:
- API key
The API key.
- Registered URL
The registered URL.
- Provider
Define select the provider where you registered your key; for example Akismet.
To ensure that your configuration is safe for upgrade (or re-installation during testing) it is recommended that you make the actual configuration in the repository.
Identity Management and Profiles
Individual visitors to your website can only be identified when you allow them to log in. There are various reasons why you may want to provide a login capability:
- Social Collaboration
When communicating, the visitors need to be able identify each other.
- Closed User Groups
You may need to limit access to your website (or sections of it) to specific visitors.
- Personalization
Allowing visitors to configure certains aspects of how they access your website.
Log in (and out) functionality is provided by an account with a Profile, which holds additional information about the registered visitor (user). The actual processes for registration and authorization may differ:
- Self-registration from the website
For social collaboration you might allow visitors to register without authorizing each individual profile.
- Request for registration from the website
For a closed user group you might allow visitors to request registration, but enforce authorization by means of a workflow.
- Register each account from the author environment
If you have a small number of profiles, which will need authorization anyway, you may decide to register each directly.
To allow visitors to register, a series of components and forms can be used to collect the required identification information, then the additional (often optional) profile information. After they have registered, they should also be able to check and update, the details that they have submitted.
Additional functionality can be configured or developed:
- Configure any reverse replication that is required.
- Allow a user to remove their profile, by developing a form together with a workflow.
Note
The information specified in the profile can also be used to provide the user with targeted content via Segments and Campaigns.
A form can be used to collect the registration information, then generate the new account and profile.
For example, users can request a new profile, using the Geometrixx page
http://localhost:4502/content/geometrixx/en/toolbar/account/accountrequest.html
Submitting the request will take the user to a Thank You page, after which they will receive an email.
The email contains a link to the page for confirming the request by registering details for the new profile; for example, using the Geometrixx page
http://localhost:4502/content/geometrixx/en/toolbar/account/register.html
Completion of the registration will be confirmed:
The new account is also visible in the Users console.
The login component can be used to collect the login information, then activate the login process.
This provides the visitor with the standard fields of Username and Password, with a Login button to activate the login process when the data has been supplied.
For example, users can either log in, or create a new account, using the Sign In option on the Geometrixx toolbar, which uses the page:
http://localhost:4502/content/geometrixx/en/toolbar/account/login.html
As there is a login mechanism, a logout mechanism is also required. This is available as the Sign Out option in Geometrixx.
Viewing and Updating a Profile
Depending on your registration form the visitor may have registered information in their profile. They should be able to view and/or update this at a later stage. This can be done with a similar form; for example, in Geometrixx:
http://localhost:4502/content/geometrixx/en/toolbar/profiles/view.html
To see the details of your profile click on My Profile in the top right corner of any page; for example with the admin account:
http://localhost:4502/home/users/a/admin/profile.form.html/content/geometrixx/en/toolbar/profiles/view.html
You can view another profile using the clickstream cloud (on the author environment and with sufficient privileges):
Open a page; for example the Geometrixx page:
http://localhost:4502/cf#/content/geometrixx/en.html
Click My Profile in the top right corner. You will see the profile of your current account; for example the administrator.
Press control-alt-C to open the clickstream cloud.
In top right corner of the clickstream cloud, click Load.
Select another profile from the drop down list in the dialog window; for example, Alison Parker.
-
Click again on My Profile. The form will be updated with Alison's details.
You can now use Edit Profile or Change Password to update the details.
Adding Fields to the Profile Definition
You can add fields to the profile definition. For example to add a "Favorite Color" field to the Geometrixx profile:
From the Websites console navigate to Geometrixx Demo Site, English, Toolbar, Profiles.
Double-click on the View Profile page to open it for editing.
In the Components tab of sidekick expand the Form section.
Drag a Text Field from sidekick to the form, just below the About me field.
Double-click the Text Field component to open the dialog for configuration and enter:
- Element Name - favoriteColor
- Title - Favorite Color
- Only show value - click to activate
Click OK to save.
Close the page and return to the Websites console.
Double-click on the Edit Profile page to open it for editing.
From the Form section of sidekick drag a Dropdown List to just below the About Me field (the same position as before).
Double-click the Dropdown List component to open the dialog for configuration and enter:
- Element Name - favoriteColor
- Title - Favorite Color
- Items - add a selection of colors for selection
Click OK to save.
Note
The Element Name must match that used on the View Profile page.
Close the page.
Next time you view or edit a profile you will be able to select, and then view, a favorite color:
The field will be saved under the profile section of the relevant user account:
There are a number of use cases that require knowing whether a user (or rather their profile) is in a specific state or not.
This involves defining an appropriate property in the user profile in a way that:
- is visible and accessible to the user
- defines two states for each property
- allows toggling between the two states defined
Multiple states can be defined; for example in Geometrixx these include:
- subscribing (or unsubscribing) to notifications on newsletters or comment threads
- adding and removing a connection to a friend
A state provider manages the current state of the property in question, together with the transitions between the two possible states.
State providers are implemented as components, so can be customized for your project. In Geomerixx these include:
- Un-/Subscribe Forum Topic
- Add/Remove Friend
State providers manage a profile property and its states.
A workflow is needed to implement the actions related to the states. For example, when subscribing for notifications, the workflow will handle the actual subscription action; when unsubscribing from notifications, the workflow will handle removing the user from the subscription list.
The user state toggle button can be found in the Collaboration section of the sidekick and can be used for a variety of Profile States. This component links a State Provider (each of which provides two states for a specific property) to the two workflows used to move between the two states.
Note
The user state toggle button is only visible if the user is logged in; i.e. when a profile is available.
In the Geometrixx forum (Community) this button is used for subscribing and unsubscribing to notification emails, sent when a new post is added.
From the Settings tab you can define and select:
- Toggle State Provider
The state provider that manages the required property and the state transitions.
From the drop down list you can select from the available State Providers. In Geomerixx these include:
- Un-/Subscribe Forum Topic
- Add/Remove Friend
- Toggle Workflow Model
The workflow to be used when toggling from the default state to the other state.
- Untoggle Workflow model
The workflow used to toggle back to the default state.
From the Texts & Labels tab you can define:
- Button Label Toggled
The label shown after the state has been toggled.
For example, when the user has already subscribed to a forum the label will show Unsubscribe.
- Button Label Untoggled
The label shown after the state has been untoggled.
For example, when a user has not yet subscribed to a forum the label will be Subscribe.
- Button Label Transition
This label is shown while the transition between the two states is actually taking place. Although usually this will not be seen, it may be necessary when the transition takes a longer period of time.
- Toggled Confirmation Message
The message to confirm that the toggle action has suceeded.
For example, to confirm the subscribe action.
- Untoggled Confirmation Message
The message to confirm that the untoggle action has succeeded.
For example, to confirm the unsubscribe action.
A range of profile components are also available for defining the profile requirements for your site.
Profiles and User Accounts
Profiles are stored in the Content Repository as part of the the user account.
The profile can be found (for example, with CRXDE) under /home/users:
On a standard installation (author or publish) everyone has read access to the entire profile information of all users. everyone is a "Built-in group automatically containing all existing users and groups. The list of members cannot be edited".
These access rights are defined by the following wildcard ACL:
/home everyone allow jcr:read rep:glob = */profile*
That allows:
- forum, comments or blog posts to display information (such as icon or full name) from the appropriate profile
- links to geometrixx profile pages
If such access is not appropriate for your installation you can change these default settings.
This can be done using the Access Control Editor (Security menu) dialog:
|
|
Note: Customers with DayCare user accounts need to create a new account for use on day.com.