1. Requests for your team
- could you implement the code change in your copy of Alfresco that would result in us being able to use the full, current version of Tinymce this week?
- once the above is completed, can you implement the workflow Yong sent along so we can test that - it includes the ability to publish? We have yet to test out publishing beyond staging
***We'd like to be able to finish testing these pieces by the end of this month at the latest.
- Joe mentioned you had a copy of the access control documentation - could you send that to him this week?

2. Functionality questions for Alfresco - we have two scenarios we want to run against the team for feasibility
- Scenario 1: 
We create a collection of blubs (5-6 short lead-ins to stories) and upload those to a "blub" directory, each as separate web content associated with the proper template. Next we create a template called "template x" that can be used across a few different areas of the site (e.g., in the clubs section, the reunions section, in the news section). The web content created using template x have a block area that is optional (e.g., like images or a promo might be optional - you can use the + function to add it to the web content being created). The optional block in this case would be a sidebar on a page. When a contributor creates new web content using template x and adds the optional sidebar, they would be presented with a pulldown menu (or something similar) of the 5-6 blurbs as the  potential content to fill the sidebar - they could choose one or more of the blurbs to show up in whatever order they want in that sidebar.

The end result would be that if the text of a blub was updated the changes would be reflected on the pages using template x w/the sidebar option added w/that blub included in it. We wouldn't have to edit all the pages w/the blurb separately.

- Scenario 2: 
Can you set an expiration date and a publish date for pieces of web content? Would this be done as part of the workflow? For example, you let a particular group of contributors have an option of submitting publish & expiration dates for web content they create/edit and submit to the publisher. At the same time, you also set up the workflow so the publisher, as part of the workflow, can edit those dates, add them if the contributor hasn't done so, or remove the specified publish date and remove an expiration date all together. If this is part of the system now, can we test this asap?

- Reporting:
How will site managers & contributors know there is a broken link w/in their site. Even if a way to browse and make links w/in the CMS via Tinymce (see priorities below), if web content or an asset is deleted by even an administrator, how would you know there are now broken links w/in the site? We could use Dreamweaver, but are there any plans for reports in Alfresco. What if an administrator wanted to run a report to find out the last publish date of every page on the site? Or they wanted to know how many pages, how many images, how many PDFs, etc. are currently live on the site?

3. Priorities for releases
Below is what we want to see in each of the releases noted. For us to agree to Alfresco as our CMS choice we need a written commitment from them stating that they will be able to include the features listed below in the releases noted. We would also like a complete list of what is slated to be included in each coming release - is it available on their Wiki? That way we can communicate to Big Bad (the firm we're working with) what they can expect as they work on the project.

Release 2.1 (April '07)
 - Advanced search integration into the WCM, including the ability to find related articles and display them to alumni who visit the site
 - Tinymce integration - when you click on a the make a link button in Tinymce you are able to do two things: 1. insert the URL to an external site as the link; or 2. navigate the directory structure of the site to make a link to an asset (non-image) or web content, and make sure that the person making the link cannot corrupt it through the process of making the link (e.g., they cannot edit the link).
 - Tinymce integration - when you click on the insert an image link in Tinymce you are able to navigate the directory structure of the site to make a link to an image   and make sure that the person making the link cannot corrupt it through the process of making the link (e.g., they cannot edit the link).
 - Safeguards in the CMS to keep just any contributor from being able to delete and asset or web content from the system - the ability to assign delete rights to different roles.

Release 2.x (Summer '07 - preference for July 1, 2007)
 - Enhance "add new web content" - IS&T and MITAA team to develop scenarios for Alfresco (e.g., browsing vs. restricting access to directories for contributors adding content)
 - Versioning w/in individual sandboxes
 - Source compare

4. Bugs found in Tinymce
The following bugs were found when testing Tinymce using their example implementations at: 
- paste MS Word content: you can paste the text into the pop-up window but cannot go any further, submit button does nothing
- paste plain text: you can paste text into the pop-up window but cannot go any further, submit button does nothing- clean up code button: clicking on it does nothing - code is not cleaned up (e.g., pasting code w/tons of extra span tags from MS Word is not cleaned up)

  • No labels

2 Comments

  1. The following are Kevin's responses to these scenarios.

    -------------------------------------

    Priorities for releases

    Below is what we want to see in order to move forward with Alfresco:

    Immediate

    - A commitment form Alfresco to deliver our required functionality for each agreed upon release

    - A complete list of what is coming in each release

    [KEVINC]  Our target is to have a final list of targetted enhancements / bug fixes for our 2.0.1 maintanence release (early March)
                    and 2.1 feature release (end April) by GA of 2.0 (February 20th).  Each item targetted for development will have a
                    corresponding issue filed in JIRA, and will be cross-referenced with MIT's own internal JIRA tracking numbers.

                    We would like to review the entire list of 2.1 enhancements (beyond those highlighted below) with MIT sometime after
                    Feb. 20th.  The 2.1 WCM updates will be a list of MIT-focused product gap-fillers; we would like to get MIT sign-off
                    on what's in / what's out before beginning development.

    Release 2.1 (April '07)

    -          Advanced search integration into the WCM, including the ability to find related articles and display them to alumni who visit the site

    [KEVINC]  Integrating advanced search into WCM Web Projects is our highest priority feature development item and a gating item for release of 2.1.
    MIT should expect this with the 2.1 release and plan on evaluating the 2.1 Preview end March to ensure that the upcoming implementation of
    advanced search at the end of April with 2.1 GA meets MIT's needs.

    -          Tinymce integration

    o       When you click on a the make a link button in Tinymce you are able to do two things: 1. insert the URL to an external site as the link; or 2. navigate the directory structure of the site to make a link to an asset (non-image) or web content, and make sure that the person making the link cannot corrupt it through the process of making the link (e.g., they cannot edit the link).

    [KEVINC]  Updating TinyMCE to enable easy linking to assets in a Web Project is our second highest feature development item and also a
    gating item for release of 2.1.  MIT should expect this with our 2.1 Preview (end March) and 2.1 GA (end April).

    o       When you click on the insert an image link in Tinymce you are able to navigate the directory structure of the site to make a link to an image   and make sure that the person making the link cannot corrupt it through the process of making the link (e.g., they cannot edit the link).

    [KEVINC]  See above.

    -          Safeguards in the CMS to keep just any contributor from being able to delete and asset or web content from the system - the ability to assign delete rights to different roles.

    [KEVINC]  Alfresco will add this to our list of 2.1 requirements and include in our 2.1 offering.

    Release 2.x (Summer '07 - preference for July 1, 2007)

    -          Enhance "add new web content" - IS&T and MITAA team to develop scenarios for Alfresco (e.g., browsing vs. restricting access to directories for contributors adding content)

    -          Versioning w/in individual sandboxes

    -          Source compare

    [KEVINC]  Alfresco work jointly with MIT to evaluate requirements for our mid-Summer release (target July).   At this stage,
    we will tentatively target the list of three above enhancements.  This will be a tentative commit, however, as MIT may have
    additional priorities over these items that we'll want to include in our 2.x release by the time we finalize product commitments
    after the release of 2.1.  We will keep these as the target, then, but remain flexible to accomodate potential changes in MIT's
    needs.

    Functionality questions for Alfresco - we have two scenarios we want to run against the team for feasibility

    - Scenario 1: 

    We create a collection of blurbs (5-6 short lead-ins to stories) and upload those to a "blurb" directory, each as separate web content associated with the proper template. Next we create a template called "template x" that can be used across a few different areas of the site (e.g., in the clubs section, the reunions section, in the news section). The web content created using template x have a block area that is optional (e.g., like images or a promo might be optional - you can use the + function to add it to the web content being created). The optional block in this case would be a sidebar on a page. When a contributor creates new web content using template x and adds the optional sidebar, they would be presented with a pull down menu (or something similar) of the 5-6 blurbs as the  potential content to fill the sidebar - they could choose one or more of the blurbs to show up in whatever order they want in that sidebar.

    The end result would be that if the text of a blurb was updated the changes would be reflected (automatically?) on the pages using template x w/the sidebar option added w/that blurb included in it. We wouldn't have to edit all the pages w/the blurb separately.

    [KEVINC]  This is a good use of our in-line callout capabilities in Web Forms.  In the Web Forms, you can use an in-line callout to a JSP page that generates a portion of the form.  In this case, the
    dynamically generated portion of the form would be an optional elements (that may allow one or multiple items) with a drop-down list of all current available blurbs (read from the blurb directory at time
    of form instantiation).

    The resulting XML would include a reference to one or multiple form.  From this XML, two things can happen:  a template can be applied to generate a JSP page, or a template can be applied to
    generate an HTML page.  In the first case, the generated JSP would have a JSP tag that used the XML reference to a blurb to fetch at run-time the appropriate elements within the XML to include
    in the page.  Because this, anytime the underlying blurb is updated, any pages that reference the blurb will always show the right version of the blurb.  The only time an individual page would need
    to be edited would be when a web publisher wants to (a) remove a blurb (b) add a new blurb or (c) re-order a blurb (using move-up / move-down).

    In the second case, the generated HTML page would output not a JSP tag for dynamically including a blurb, but instead a server-side include (SSI).  This SSI would reference the corresponding
    HTML fragment generated when a user creates or updates a blurb.  Because this fragment is sourced in at run-time, anytime a blurb is updated, all pages are automatically updated.  Also, because
    the SSI is simply sourcing in an HTML asset - much like the way a generic web page would source in an image or Flash file - the speed of serving this page is basically the same as serving a regular

    web page.  An alternative approach using SSIs would be to not generate blurbs as HTML fragments and have the SSI execute a script that would dynamically build the HTML to include in each page.
    Because this is executing a script each time a page is requested, this is a possible but not desireable (or necessary) approach.  A simpler SSI to source in the HTML fragment is a best-practice approach for
    this type of scenario highlighted by MIT when the customer does not want to move from a static site to a full-blown dynamic site.

    - Scenario 2: 

    Can you set an expiration date and a publish date for pieces of web content? Would this be done as part of the workflow? For example, you let a particular group of contributors have an option of submitting publish & expiration dates for web content they create/edit and submit to the publisher. At the same time, you also set up the workflow so the publisher, as part of the workflow, can edit those dates, add them if the contributor hasn't done so, or remove the specified publish date and remove an expiration date all together. If this is part of the system now, can we test this ASAP?

    [KEVINC]  Yes.  Content launch and expiration dates are either (a) elements captured in-line with an authored XML file or (b) metadata captured on documents in an Alfresco space published
    to a Web Project (via a Content Rule).  For dynamic sites, a standard JSP page when sourcing in an individual XML or generating links to XML files or documents would evaluate the launch
    and expiration date values to determine whether or not to display.  For static sites, a custom workflow can be used to initiate the deployment process, where the list of assets to deploy to the
    production site would be generated by a custom workflow task that queried the repository to fetch all items with a current launch date.  Similarly, a custom workflow can be scheduled to run
    periodically (once a day, once a week) to query the repository to find assets that are going to expire and assign to a content owner.  That content owner could modify the XML or document properties
    to reset the expiration date or do nothing.  If the latter, the custom workflow would expire the user task and initiate a delete and update to the website.

    - Reporting:

    How will site managers & contributors know there is a broken link w/in their site. Even if a way to browse and make links w/in the CMS via Tinymce (see priorities below), if web content or an asset is deleted by even an administrator, how would you know there are now broken links w/in the site? We could use Dreamweaver, but are there any plans for reports in Alfresco. What if an administrator wanted to run a report to find out the last publish date of every page on the site? Or they wanted to know how many pages, how many images, how many PDFs, etc. are currently live on the site?

    [KEVINC]  For any link created in an HTML page or within a TinyMCE field (HTML fragment), that link can be extracted from the HTML text and set as a metadata property on the asset at time of submission.
    This would involve adding a custom task to a workflow to parse an HTML page or fragment, find any href, extract the path, and set as a property.

    With 2.1, once the property has been set, users will be able to easily search Alfresco to do things like find all pages that reference a specific image or fragment.  This could once again be added as a custom
    task, so that during the submit process, references can automatically be checked on things like a deletion to assign any affected pages to a content owner before allowing the deletion to proceed.

    For reporting, custom dashlets can be created using Freemarker or JSP to generate standard reports on site stats for content managers to see.  Also, 3rd party tools can be integrated into the system
    via dashlets that have more robust out of the box reporting capabilities.  One of the best tools available comes from WatchFire, a small company based out of the Boston area.  Aside from reports on
    site statistics, WatchFire can also automate via workflow site quality checking for things like accessibility.

  2. Here is my conclusion from these comments --

    Link management, dependency management generally, content deployment, expiration/publication, reporting, and all that "management" stuff that is outside of the content authoring part of a CMS is not likely to happen any time soon in Alfresco WCM. We have two choices about it: turn the runtime website into a JSP/J2EE/dynamically scripted site that is making runtime decisions about what content to include or publish from the Alfresco repository OR add our functionality in as workflow tasks. I don't consider the first option a good one. I believe that the only reasonably alternative for us involves using the workflow as a mechanism for adding on our functionality, including content deployment.