Version 4



    Our objective is to automatically display downloadable files to users browsing<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<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<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 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<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:

 <project name>  -><project name>/download?dir=/


    This would be editable by the user as normal and would by default include the Download paragraph querying<project name>.


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

 <project name>/<subdirectory>  -><project name>/download/?dir=<subdirectory>


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


    Related Issues


    Querying the filesystem - Switch Magnolia to use ModeShape


    Table functionality - Download table paragraph: Add sorting. - Download table paragraph: Ability to have "sub-tables" so that you can have >1 download per version - Automated downloads paragraph - Provide better usability for the "Downloads" paragraph - the class="evenRow" is not being implemented in the downloads paragraph - Download Table paragraph not working when GA unavailable - Cannot remove title from Download table - Javassist download counter shows identical value for all versions


    Pop-up window - Remove the dependency between Downloads paragraph's pop-up window and the SiteCatalyst JS code - Downloads pop-up is not catching right click - Set position of download's modal window to center of visible area not to the top of the page - Downloads model window sometimes doesn't pop up and instead allows the download - Download dialog Javascript not rendered correctly in IE9


    Styling - Style and to reflect the JBoss Community theme