Documentation

2.0.0 Release Notes

Feature Changes / Additions

Administrator

  • Added initial permissions config to most hubzero components to allow for more fine-grained access to admin interface.
  • back-ported to 1.3.1 Added force logout link to mod_whosonline
  • System Info moved from com_admin to com_system
  • Adding CSS ‘priority’ classes to table listings to allow for more responsive layouts

(template) Kameleon

  • Modified CSS to allow for responsive menu, toolbar, and table listing
  • Simplified HTML and CSS of error page
  • All notification types except for ‘success’ are now sticky

(component) Answers

  • Emails now use global email template, greatly reducing duplicated code and allowing for easier styling.

(component) Developer New

  • Component for managing application (OAuth) tokens and live documenting of API.

(component) Events

  • Hides buttons from users who cannot perform CRUD actions and checks the event to see if the owner needs to edit or delete the event.

(component) Groups

  • Added the ability to allow members to receive digest emails of group forum posts
    • Options available to have this email sent out via mandrill as well
  • Extended API. Supported actions include: list groups, create/read/update/delete a group, list group members.

(component) Geosearch New

  • Displays members, jobs, events, and organizations on a map.
  • Member profiles must contain an organization and be set to public.

(component) Help

  • Added interface to admin component to allow for browsing all help pages in one spot.

(component) Jobs

  • Jobs that are past the “Applications Due By” date are not visible.

(component) KB

  • More tightly integrated into global permissions system.
  • (administrator) Added access and search filters.

(component) Members / Users

  • Moved password reset and username reminder to members
  • Emails now use global email template and support HTML versions
  • back-ported to 1.3.1 Quotas – Added ability to associate a quota class with a user access level (Joomla user group)
  • (administrator) Added option for removing member from groups when viewing "groups" tab while editing.

(component) Projects

  • Component and all plugins are completely rewritten and all functionality needs to be re-tested.
  • New read-only (“reviewer”) role. Reviewers have access to project content (files, feed, todo etc), but cannot add/edit/delete anything.
  • Project managers may now switch owners to another individual within the project team, and/or assign/change a group owner of a project. Administrators can do the same in the back-end.
  • New module on project feed page showing who is online or last visit to project.
  • Extended API. Supported actions include: list files, get file metadata, insert, update, delete, rename a file or folder, create a new folder; list project team members, list project publications.
  • Emails now use global email template, greatly reducing duplicated code and allowing for easier styling.

(component) Publications

  • Remove non-curated publication flow. Publications will use the new curated flow that was optional in 1.3.1. The switch should go unnoticed for end users (publication page should look and work the same), but will change the way all drafts appear to authors.
  • Basic API included. Lists user publications.
  • Emails now use global email template, greatly reducing duplicated code and allowing for easier styling.

(component) Resources

  • Added support for basic HTML-enabled descriptions.
  • Updated Authorization / Usage terms (legal).
  • Added (missing?) value for setting resource to “registered” in the contribution process.
  • Added ability to set child resource access setting (e.g., “public”, “registered”) in the contribution process.

(component) Support

  • Emails now use global email template, greatly reducing duplicated code and allowing for easier styling.
  • Ticket comment emails now note if a comment was marked private
  • Added hook and option to Report Abuse controller for removing flagged content as Spam. When done, the hook calls a “onAntispamTrain” event on the “antispam” plugin group.
  • Separated "Watch List" into two (open and closed tickets).
  • Notify prior ticket owner when ownership changes.
  • Notification emails now have a privacy/minimal information mode, set via component config, to avoid sending potentially sensitive data in emails. (FISMA, HIPAA)

(component) Tags

  • back-ported to 1.3.1 Added config options for controlling cached data.
  • Added interface for browsing and managing items linked to a tag.
  • Added better support for labels.

(component) Wiki

  • Support for PDF generation via wkhtmltopdf.
  • Support for PDF generation via PhantomJS.
  • Added [[Redirect()]] macro for redirecting a page.
  • Tighter integration with global permissions system to allow for enabling/disabling add/edit/delete permissions for various access groups.

(component) Wishlist

  • (admin) Wishlist loads child comments with parent comments, regardless of limit.

Authentication

  • Added a client side certificate base authentication mechanism (primarily for AFRL). This allows authentication via TLS certificate. Configuration is required to make this work. Also included is a plugin for forcing a certificate to be present before any other hub use can be conducted (i.e. you can’t do anything unless the cert is present).
  • Password reset link will require the same browser session to be used to successfully change the password.
  • Added the ability to authenticate via 3rd party plugins to administrative interface.
  • Added support for multiple factor authentication
  • Created an ORCID authentication plugin

Plugins

  • Created “antispam” plugin group and moved anti spam content plugins to group.
    • Former "Basic" plugin was separated into plugins for Black List (i.e., bad words), Link Rife (limit the number of links within a post), and basic Bayesian filtering.
  • Developed spam jail plugin to allow spam offenders to be “jailed” and blocked from the site after a configurable number of offenses.

(plugin) Collections

  • (Groups and Members plugins) Added sort options to a collection view to allow toggling of “sort by created date” and “sort by defend ordering”.

(plugin) Group - Members

  • Sorts member listing in alphabetical order, regardless of case.
  • (Super) Group members can now display user profile in group rather than redirecting to site member profile.

(plugin) Members - Todo New

  • Display a list of todo items from all projects user is a member of.

(plugin) Projects - Watch New

  • Lets users subscribe to get notified by email when another member posted activity on the project. Shows up on project feed page. Users can choose which activities they want to be notified about (files added, comment posted, todo posted etc.) To be extended with digest option.

(plugin) Publications - Watch New

  • Lets users subscribe/unsubscribe to get notified by email when new version releases of publications come out. Shows up on publication page. To be extended with more options (watch questions, reviews etc for a publication).

(plugin) Content - Open Graph New

  • This plugin adds Open Graph meta tags to the head of article pages..

Site/Front-end

(template) Kimera New

  • A brand new default front-end template with options for changing colors, backgrounds, and more. This template has a strong focus on responsiveness (mobile friendly).

Infrastructure & Developers

Administrator

  • All modules namespaced.
  • All modules rewritten/reorganized to conform to HUBzero standards.
  • All modules moved to single core/modules directory.
  • com_checkin rewritten to be a HUBzero component
  • com_config rewritten to be a HUBzero component
  • com_cpanel rewritten to be a HUBzero component
  • com_poll rewritten to be a HUBzero component
  • com_redirect rewritten to be a HUBzero component
  • Route::url() all links
  • All component admin interfaces moved to single component directory

Site

  • All modules namespaced.
  • All module config text moved into language files.
  • Joomla modules rewritten to conform to HUBzero standards.

(library) Hubzero

  • Antispam deprecated – Moved to Spam and rewritten
  • Added Asset classes and reworking Assets helper, view helpers, and AssetAware trait to reduce code.
  • Added Facades
  • Added dependency injection Container
  • Added Application class (replacement for JApplication and its extended classes)
  • Added Events dispatcher (replacement for JDispatcher)
  • Added Pathway library (replacement for JPathway)
  • Added Filesystem (replacement for JFile and JFolder)
  • Added Http Request (replacement for JRequest)

(library) Joomla

  • Added ability for component types (admin, site, api) to use a single directory rather than be split.
  • Changed component router to use class instead of global functions.
  • Factory will return appropriate Hubzero class/object when available.

(library) PHPQrCode

  • Moved to composer package.

Muse

  • Improvements and added features to infastructure
  • Addition of a unit testing command
  • Support for per-component commands

OAuth2

  • Implemented new API using OAuth2 specification.

ORM/Database

  • Initial development of HUBzero ORM. Should dramatically reduce code redundancy, and significantly reduce start up time to get a component up and running.
  • New database driver
  • New query builder

(CMS) Filesystem

  • /app directory created
  • /tmp, /log, /cache, /site moved to /app directory
  • Components refactored to single directory. All client types (admin, site, api, etc) for a component now exist under a single directory instead of being separated between components/{component name} and adminsitrator/component/{component name}
  • Core extensions and libraries moved to /core
  • Base file uploads directory /site moved to /app/site

API

  • Rewritten to use OAUTH2
  • Controllers now follow implementation pattern similar to Site and Admin
  • Docblock formatting to allow for self-documenting
    • Controllers now have default ‘indexTask’ for self-documenting

(component) Groups

  • Added the ability for group plugins to return sub-menu options for the group tabs list (i.e., side-menu). This allows for each plugin to have a sub-menu of frequently used links such as "New post" or "Settings".

(component) Members

  • Added the ability for member plugins to return sub-menu options for the profile tabs list (i.e., side-menu). This allows for each plugin to have a sub-menu of frequently used links such as "New post" or "Settings".

Deprecated

Administrator

  • mod_hubmenu deprecated Renamed to mod_adminmenu.

(component) System

  • Routes controller (old com_sef functionality) dropped in favor of com_redirect.

Site

  • mod_tagcloud deprecated Redundant. All references changed to use mod_toptags.

Last modified: