Version 4

    Overview

     

    Our objective is to automatically display downloadable files to users browsing http://downloads.jboss.org/<project> while providing a way for Project Teams to place custom content on the download pages. We also want to prevent Project Teams from having to manually create download tables referencing files on http://downloads.jboss.org/<project>. We can achieve these objectives by replacing the directory browsing feature of Apache with a similar approach using Magnolia as follows:

     

    1) A user goes to any directory underneath http://downloads.jboss.org/<project name>

    2) The request is redirected to Magnolia with the subdirectory encoded in the query string where we respond with a download page that's editable by the project team (to keep things simple this should be the same page for all directories)

    3) Based on the directory specified in the query string ModeShape is used to query the downloads.jboss.org filesystem to retrieve the files and display a sortable table (using an existing control for the sorting functionality)

    4) Clicking on a link to download a file causes the warning dialog to pop-up

    5) We trace whether the user clicks on the Continue or Cancel button, or whether they click on the 'Show more details' about products link.

     

    The only part of this we haven't done already is to have a common page that's returned for different requests (representing the different sub-directories under http://downloads.jboss.org/<project name>. So far all of our pages have had to be created manually but what I'm imagining is that we'd simply reuse one download page as follows:

     

    http://downloads.jboss.org<project name>  ->  http://www.jboss.org/<project name>/download?dir=/

     

    This would be editable by the user as normal and would by default include the Download paragraph querying http://downloads.jboss.org/<project name>.

     

    If the user requested a subdirectory this would be indicated in the query string for the redirect:

     

    http://downloads.jboss.org/<project name>/<subdirectory>  ->  http://www.jboss.org/<project name>/download/?dir=<subdirectory>

     

    The same page in Magnolia used for (http://www.jboss.org/<project name>/download) would be returned with the downloads paragraph querying http://downloads.jboss.org/<project name>/<subdirectory> instead.

     

    Related Issues

     

    Querying the filesystem

    https://issues.jboss.org/browse/ORG-852 - Switch Magnolia to use ModeShape

     

    Table functionality

    https://issues.jboss.org/browse/ORG-1119 - Download table paragraph: Add sorting.

    https://issues.jboss.org/browse/ORG-1120 - Download table paragraph: Ability to have "sub-tables" so that you can have >1 download per version

    https://issues.jboss.org/browse/ORG-208 - Automated downloads paragraph

    https://issues.jboss.org/browse/ORG-233 - Provide better usability for the "Downloads" paragraph

    https://issues.jboss.org/browse/ORG-437 - the class="evenRow" is not being implemented in the downloads paragraph

    https://issues.jboss.org/browse/ORG-450 - Download Table paragraph not working when GA unavailable

    https://issues.jboss.org/browse/ORG-1136 - Cannot remove title from Download table

    https://issues.jboss.org/browse/ORG-1021 - Javassist download counter shows identical value for all versions

     

    Pop-up window

    https://issues.jboss.org/browse/ORG-1188 - Remove the dependency between Downloads paragraph's pop-up window and the SiteCatalyst JS code

    https://issues.jboss.org/browse/ORG-455 - Downloads pop-up is not catching right click

    https://issues.jboss.org/browse/ORG-958 - Set position of download's modal window to center of visible area not to the top of the page

    https://issues.jboss.org/browse/ORG-999 - Downloads model window sometimes doesn't pop up and instead allows the download

    https://issues.jboss.org/browse/ORG-1168 - Download dialog Javascript not rendered correctly in IE9

     

    Styling

    https://issues.jboss.org/browse/ORG-811 - Style downloads.jboss.org and docs.jboss.org to reflect the JBoss Community theme