Description
Content Management Portlet is developed for uPortal to allow authorized users to administer content remotely. Using this portlet, content authors can remotely edit and publish content independently, and pull in and share existing data and re-purpose it according to different needs. Project supports multiple languages and further allows decoration of content with graphics, links, and templates.
Features
- Portlet will support two user categories: authors and viewers who publish and view content respectively.
- Author shall use WYSIWYG editor to produce content. WYSIWYG editor shall provide navigational and keyboard support for users with disabilities.
- All content will be checked and validated for XSS security issues, before any is published.
- Authors currently are able to insert images, links and smiley icons into the content.
- Portlet adheres to the portal theme and style.
- Allow authors to choose templates for content.
- Ability to upload multiple attachments along with the post, along with thumbnail views.
- Ability to display video/audio attachments natively using HTML5 capabilities.
- Ability to schedule posts to be published at a later date/time.
- Ability to localize portlet content for multiple languages.
- Allow a post to be rated by viewers.
Planned Features
- Scan uploaded files using AntiVirus software. (i.e. ClamAV)
- Incorporate Apache Chemistry along with support for OpenCMIS
- Portlet content and posts are cached by the distributed Ehcache framework.
Tools & Dependancies
- Role configuration (author/viewer) is done within the portal itself via PAGS.
- Portlet follows the JSR 268 Portlet specification, supported by the Spring Portlet MVC framework.
- All published content is stored inside the Java Content Repository (JCR) supported by the JSR 170 specification with the implementation provided by Apache Jackrabbit.
Spring framwork JCR extensions are employed to communicate with the repository. - Apache Velocity is used to render the portlet user interface pages, while JSP implementation of the UI can easily be swapped.
Screenshots
Deployment
Requirements
- uPortal (3.x, 4.x)
- Apache Maven (2.2.1, 3.0)
Screen Cast
Source Code
Project source code is available at: https://github.com/Jasig/ContentManagementPortlet
Build
- Adjust the paths in the build.properties file (portal, tomcat and maven directories)
- On the command line inside the project source directory, use the following command:
> ant package
Once the build is successful, you should be able to browse to the "<tomcat-home>/webapps" and find the "ContentManagementPortlet.war" application file.
uPortal Portlet Registration
A number of key elements are specified below that should be carefully configured during registration:
- Select the channel type to be Portlet
- Allow the channel timeout value to be 50000
- Allow both Edit and Help modes
- (uPortal 3.x only) Make sure "Framework Portlet" is set to false
- (uPortal 3.x only) For "Portlet Web Application Path", enter: /ContentManagementPortlet
- For "Portlet Name", "Functional Name" and "Title", enter: ContentManagementPortlet
Additional Help
The HELP mode of the Content Management Portlet provides a list of Frequently Asked Questions. While the default configuration of the portlet should run out of the box, thist list address issues like data reopsitory management, content security checks, internationalization and additional preferences. Please review the FAQ page for more info. This list will be frequently updated with aditional information on portlet setup and configuration of new features.
Report Bugs
If you have encounted an issue with the portlet, please submit an entry here: https://issues.jasig.org/browse/INC-15