[Libreoffice-commits] .: Branch 'LiboExtensionCenter' - 9 commits - LiboExtensionWebsite/am.LiboExtensionCenter

Andreas Mantke andreasma at kemper.freedesktop.org
Sun Apr 24 13:49:09 PDT 2011


 LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/PKG-INFO                                                          |    2 
 LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/SOURCES.txt                                                       |    2 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/AreaWorkflow.py                                                 |  162 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/AreaWorkflow.pyc                                                |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/ImprovementProposalWorkflow.py                                  |  293 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/Install.py                                                      |   23 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/Migrations.py                                                   |   88 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/PackageWorkflow.py                                              |  191 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/ReleaseWorkflow.py                                              |  256 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/WorkflowScripts.py                                              |   57 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/__init__.py                                                     |    1 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/Extensions/migrateratings.py                                               |   58 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/TROVE.txt                                                                  |  501 +++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.py                                                        |   95 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/configure.zcml                                                     |  175 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.py                                                       |   31 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.pyc                                                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.py                                                |   42 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.pyc                                               |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/fancyzoom.js                                                       |    9 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.py                                                        |   37 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.py                                                     |   27 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.pyc                                                    |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/project.py                                                         |  241 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/project.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/projectdoap.py                                                     |  258 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/projectdoap.pyc                                                    |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/pypi.py                                                            |  537 ++++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/pypi.pyc                                                           |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/pypilinks.pt                                                       |   23 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/pypilinks.py                                                       |   50 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/pypilinks.pyc                                                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/release.py                                                         |  101 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/release.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/releasefolder.py                                                   |   34 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/releasefolder.pyc                                                  |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/roadmap.py                                                         |   64 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/roadmap.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/root.py                                                            |  185 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/root.pyc                                                           |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/stylesheets/lec.css                                                |   75 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/config.py                                                                  |   58 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/config.pyc                                                                 |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/configure.zcml                                                             |   50 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/__init__.py                                                        |   26 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/__init__.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/docfolder.py                                                       |  169 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/docfolder.pyc                                                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/downloadablefile.py                                                |  120 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/downloadablefile.pyc                                               |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/filelink.py                                                        |  103 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/filelink.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/project.py                                                         |  662 ++++++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/project.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/proposal.py                                                        |  355 +++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/proposal.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/proposalfolder.py                                                  |  116 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/proposalfolder.pyc                                                 |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/release.py                                                         |  400 ++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/release.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/releasefolder.py                                                   |  146 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/releasefolder.pyc                                                  |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/root.py                                                            |  390 +++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/root.pyc                                                           |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/validators.py                                                      |  103 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/content/validators.pyc                                                     |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/__init__.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/configure.zcml                                                      |   17 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/extensioncenter.py                                                  |   79 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/extensioncenter.pyc                                                 |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/interfaces.py                                                       |    5 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/events/interfaces.pyc                                                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/interfaces.py                                                              |   38 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/interfaces.pyc                                                             |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/__init__.py                                                      |    1 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/__init__.pyc                                                     |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/configure.zcml                                                   |   19 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/pypiproject.pt                                                   |   22 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/pypisimple.pt                                                    |   19 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/pypisimple.py                                                    |  161 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/namespace/pypisimple.pyc                                                   |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/permissions.py                                                             |   19 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/permissions.pyc                                                            |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/contentratings.xml                                        |    9 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/cssregistry.xml                                           |   10 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/factorytool.xml                                           |   14 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/jsregistry.xml                                            |    8 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/propertiestool.xml                                        |   34 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/skins.xml                                                 |   26 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types.xml                                                 |   21 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECDocumentationFolder.xml                          |   63 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFile.xml                                         |   59 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFileLink.xml                                     |   49 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposal.xml                          |   56 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposalFolder.xml                    |   56 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECProject.xml                                      |   60 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECRelease.xml                                      |   57 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECReleaseFolder.xml                                |   55 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LiboExtensionCenter.xml                             |   58 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows.xml                                             |   26 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_area_workflow/definition.xml                |  165 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_improvementproposal_workflow/definition.xml |  265 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_package_workflow/definition.xml             |  206 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_release_workflow/definition.xml             |  254 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/pypi.py                                                                    |   71 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/pypi.pyc                                                                   |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/setuphandlers.py                                                           |  446 ++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/setuphandlers.pyc                                                          |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/by-category.pt                                   |  108 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/findParentProjectURL.py                          |   11 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/getUpcomingReleases.py                           |   37 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/plonesoftwarecenter.css.dtml                     |   66 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/plonesoftwarecenter_ploneorg.pt                  |  314 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/plonesoftwarecenter_ploneorg.pt.metadata         |    2 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/plonesoftwarecenter_view.pt                      |  169 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/plonesoftwarecenter_view.pt.metadata             |    2 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/portlet_project_info.pt                          |   56 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/portlet_project_resources.pt                     |  133 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/portlet_project_roadmap.pt                       |   81 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/portlet_releases.pt                              |   89 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_categories_view.pt                           |   69 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_file_view.pt                                 |   70 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_improvements_listing.pt                      |  146 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_improvements_view.pt                         |  113 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_project_view.pt                              |  269 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_release_listing.pt                           |   60 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_release_view.pt                              |  244 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_releasefolder_view.pt                        |  163 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_roadmap.pt                                   |  303 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_view_ploneorg.pt                             |  270 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter/psc_view_ploneorg.pt.metadata                    |    2 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/documentation_icon.gif                    |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/documentation_icon.gif.metadata           |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/download_icon.gif                         |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/download_icon.gif.metadata                |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/hour_icon.gif                             |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/hour_icon.gif.metadata                    |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/improvementproposal_icon.gif              |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/improvementproposal_icon.gif.metadata     |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/issuetracker_icon.gif                     |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/issuetracker_icon.gif.metadata            |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_all_platforms.gif                |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_all_platforms.gif.metadata       |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_beos.gif                         |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_beos.gif.metadata                |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_bsd.gif                          |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_bsd.gif.metadata                 |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_linux.gif                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_linux.gif.metadata               |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_linux_bsd_unix.gif               |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_linux_bsd_unix.gif.metadata      |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_mac_os_x.gif                     |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_mac_os_x.gif.metadata            |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_os_2.gif                         |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_os_2.gif.metadata                |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_qnx.gif                          |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_qnx.gif.metadata                 |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_solaris.gif                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_solaris.gif.metadata             |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_suse_linux.gif                   |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_suse_linux.gif.metadata          |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_unix__other_.gif                 |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_unix__other_.gif.metadata        |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_windows.gif                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/skins/liboextensioncenter_images/platform_windows.gif.metadata             |    3 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/__init__.py                                                        |   61 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/__init__.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/archetype.py                                                       |   20 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/archetype.pyc                                                      |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/configure.zcml                                                     |   15 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/interfaces.py                                                      |   22 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/storage/interfaces.pyc                                                     |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests.py                                                                   |    1 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests.pyc                                                                  |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/__init__.py                                                          |    6 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/__init__.pyc                                                         |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/base.py                                                              |   80 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/base.pyc                                                             |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/permissions.txt                                                      |   68 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_category.py                                                     |   96 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_category.pyc                                                    |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_docfolder.py                                                    |  118 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_downloadablefile.py                                             |   99 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_extensioncenter.py                                              |  369 +++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_extensioncenter.pyc                                             |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_filelink.py                                                     |   75 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_functional.py                                                   |   51 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_migration.py                                                    |  108 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_project.py                                                      |  577 ++++++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_project_doap.py                                                 |  213 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_proposal.py                                                     |  145 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_proposalfolder.py                                               |  130 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_pypi.py                                                         |  293 ++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_pypi.pyc                                                        |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_release.py                                                      |  336 +++++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_releasefolder.py                                                |   75 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_reviewer_security.py                                            |  150 ++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_reviewer_security.pyc                                           |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_security.py                                                     |  243 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_security.pyc                                                    |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_setup.py                                                        |   81 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_setup.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_storage.py                                                      |   95 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_trove.py                                                        |   38 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_types.py                                                        |   69 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_types.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_utils.py                                                        |   24 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_utils.pyc                                                       |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/tests/test_validators.py                                                   |   31 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/trove.py                                                                   |   66 
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/trove.pyc                                                                  |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/utils.py                                                                   |  209 +++
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/utils.pyc                                                                  |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/validators.py                                                              |  117 +
 LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/validators.pyc                                                             |binary
 LiboExtensionWebsite/am.LiboExtensionCenter/setup.pyc                                                                                         |binary
 219 files changed, 15671 insertions(+), 2 deletions(-)

New commits:
commit ce35d5ad858f56f50d0f0229eadab7537f90f556
Author: Andreas Mantke <maand at gmx.de>
Date:   Sun Apr 24 11:15:53 2011 +0200

    update of the egg-info

diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/PKG-INFO b/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/PKG-INFO
index 3dd2467..88a232b 100644
--- a/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/PKG-INFO
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/PKG-INFO
@@ -2,7 +2,7 @@ Metadata-Version: 1.0
 Name: am.LiboExtensionCenter
 Version: 1.0
 Summary: A extension center for LibreOffice
-Home-page: http://cgit.freedesktop.org/libreoffice/website/
+Home-page: http://svn.plone.org/svn/collective/
 Author: Andreas Mantke
 Author-email: maand at gmx.de
 License: GPL
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/SOURCES.txt b/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/SOURCES.txt
index 38e198c..cfdf3f2 100644
--- a/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/SOURCES.txt
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am.LiboExtensionCenter.egg-info/SOURCES.txt
@@ -10,6 +10,48 @@ am.LiboExtensionCenter.egg-info/namespace_packages.txt
 am.LiboExtensionCenter.egg-info/not-zip-safe
 am.LiboExtensionCenter.egg-info/paster_plugins.txt
 am.LiboExtensionCenter.egg-info/requires.txt
+am.LiboExtensionCenter.egg-info/requires.txt~
 am.LiboExtensionCenter.egg-info/top_level.txt
 am/LiboExtensionCenter/__init__.py
-am/LiboExtensionCenter/tests.py
\ No newline at end of file
+am/LiboExtensionCenter/config.py
+am/LiboExtensionCenter/interfaces.py
+am/LiboExtensionCenter/permissions.py
+am/LiboExtensionCenter/pypi.py
+am/LiboExtensionCenter/setuphandlers.py
+am/LiboExtensionCenter/tests.py
+am/LiboExtensionCenter/trove.py
+am/LiboExtensionCenter/utils.py
+am/LiboExtensionCenter/validators.py
+am/LiboExtensionCenter/browser/__init__.py
+am/LiboExtensionCenter/browser/category.py
+am/LiboExtensionCenter/browser/docfolder.py
+am/LiboExtensionCenter/browser/downloadablefile.py
+am/LiboExtensionCenter/browser/filelink.py
+am/LiboExtensionCenter/browser/improvement.py
+am/LiboExtensionCenter/browser/project.py
+am/LiboExtensionCenter/browser/projectdoap.py
+am/LiboExtensionCenter/browser/pypi.py
+am/LiboExtensionCenter/browser/pypilinks.py
+am/LiboExtensionCenter/browser/release.py
+am/LiboExtensionCenter/browser/releasefolder.py
+am/LiboExtensionCenter/browser/roadmap.py
+am/LiboExtensionCenter/browser/root.py
+am/LiboExtensionCenter/content/__init__.py
+am/LiboExtensionCenter/content/docfolder.py
+am/LiboExtensionCenter/content/downloadablefile.py
+am/LiboExtensionCenter/content/filelink.py
+am/LiboExtensionCenter/content/project.py
+am/LiboExtensionCenter/content/root.py
+am/LiboExtensionCenter/events/__init__.py
+am/LiboExtensionCenter/events/extensioncenter.py
+am/LiboExtensionCenter/events/interfaces.py
+am/LiboExtensionCenter/storage/__init__.py
+am/LiboExtensionCenter/storage/archetype.py
+am/LiboExtensionCenter/storage/interfaces.py
+am/LiboExtensionCenter/tests/__init__.py
+am/LiboExtensionCenter/tests/base.py
+am/LiboExtensionCenter/tests/test_extensioncenter.py
+am/LiboExtensionCenter/tests/test_security.py
+am/LiboExtensionCenter/tests/test_setup.py
+am/LiboExtensionCenter/tests/test_types.py
+am/LiboExtensionCenter/tests/test_utils.py
\ No newline at end of file
commit 71e18d37903f3a787a0827b5e16ddc4645a480ed
Author: Andreas Mantke <maand at gmx.de>
Date:   Sun Apr 24 11:13:22 2011 +0200

    initial commit of setup.pyc

diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/setup.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/setup.pyc
new file mode 100644
index 0000000..ab00594
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/setup.pyc differ
commit ea0e99e2e5673cf06f661e961a33cb46141b372d
Author: Andreas Mantke <maand at gmx.de>
Date:   Sun Apr 24 11:09:58 2011 +0200

    initial commit of the subdirectories types, workflows and their content, contentratings.xml, cssregisty.xml, factorytool.xml, jsregistry.xml, liboextensioncenter-various.txt, propertiestool.xml, skins.xml, types.xml and workflows.xml

diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/contentratings.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/contentratings.xml
new file mode 100644
index 0000000..11689d6
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/contentratings.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0"?>
+<contentratings>
+ <categories/>
+ <assignments>
+  <type portal_type="LECProject">
+   <category value="lec_stars"/>
+  </type>
+ </assignments>
+</contentratings>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/cssregistry.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/cssregistry.xml
new file mode 100644
index 0000000..8e288d2
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/cssregistry.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<object name="portal_css">
+
+ <stylesheet title=""
+    id="++resource++am.LiboExtensionCenter.stylesheets/lec.css"
+    media="screen" rel="stylesheet" rendering="import"
+    cacheable="True" compression="safe" cookable="True"
+    enabled="1" expression=""/>
+
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/factorytool.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/factorytool.xml
new file mode 100644
index 0000000..f6d4d86
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/factorytool.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<object name="portal_factory" meta_type="Plone Factory Tool">
+ <factorytypes>
+  <type portal_type="LECImprovementProposal"/>
+  <type portal_type="LiboExtensionCenter"/>
+  <type portal_type="LECRelease"/>
+  <type portal_type="LECFile"/>
+  <type portal_type="LECReleaseFolder"/>
+  <type portal_type="LECDocumentationFolder"/>
+  <type portal_type="LECFileLink"/>
+  <type portal_type="LECImprovementProposalFolder"/>
+  <type portal_type="LECProject"/>
+ </factorytypes>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/jsregistry.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/jsregistry.xml
new file mode 100644
index 0000000..0e8b4b5
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/jsregistry.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<object name="portal_javascripts" meta_type="JavaScripts Registry"
+   autogroup="False" purge="False">
+
+ <javascript cacheable="True" compression="safe" cookable="True" enabled="on"
+    expression="" id="++resource++am.LiboExtensionCenter.fancyzoom.js" inline="False"/>
+
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/liboextensioncenter-various.txt b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/liboextensioncenter-various.txt
new file mode 100644
index 0000000..e69de29
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/propertiestool.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/propertiestool.xml
new file mode 100644
index 0000000..d3e7b0f
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/propertiestool.xml
@@ -0,0 +1,34 @@
+<?xml version="1.0"?>
+<object name="portal_properties" meta_type="Plone Properties Tool">
+ <object name="navtree_properties" meta_type="Plone Property Sheet">
+  <property name="parentMetaTypesNotToQuery" type="lines" purge="False">
+   <element value="LiboExtensionCenter"/>
+   <element value="LECReleaseFolder"/>
+   <element value="LECImprovementProposalFolder"/>
+   <element value="LECRelease"/>
+  </property>
+ </object>
+ <object name="site_properties" meta_type="Plone Property Sheet">
+  <property name="use_folder_tabs" type="lines" purge="False">
+   <element value="LECRelease"/>
+   <element value="LECImprovementProposal"/>
+   <element value="LiboExtensionCenter"/>
+   <element value="LECReleaseFolder"/>
+   <element value="LECDocumentationFolder"/>
+   <element value="LECImprovementProposalFolder"/>
+   <element value="LECProject"/>
+  </property>
+  <property name="typesLinkToFolderContentsInFC" type="lines" purge="False">
+   <element value="LECImprovementProposal"/>
+   <element value="LiboExtensionCenter"/>
+   <element value="LECRelease"/>
+   <element value="LECReleaseFolder"/>
+   <element value="LECDocumentationFolder"/>
+   <element value="LECImprovementProposalFolder"/>
+   <element value="LECProject"/>
+  </property>
+  <property name="typesUseViewActionInListings" type="lines" purge="False">
+   <element value="LECFile"/>
+  </property>
+ </object>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/skins.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/skins.xml
new file mode 100644
index 0000000..00de30e
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/skins.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<object name="portal_skins">
+ <object name="AddRemoveWidget" meta_type="Filesystem Directory View"
+    directory="AddRemoveWidget/skins/AddRemoveWidget"/>
+ <object name="DataGridWidget" meta_type="Filesystem Directory View"
+    directory="DataGridField/skins/DataGridWidget"/>
+ <object name="archaddon" meta_type="Filesystem Directory View"
+    directory="ArchAddOn/skins/archaddon"/>
+ <object name="liboextensioncenter" meta_type="Filesystem Directory View"
+    directory="LiboExtensionCenter/skins/liboextensioncenter"/>
+ <object name="liboextensioncenter_images"
+    meta_type="Filesystem Directory View"
+    directory="LiboExtensionCenter/skins/liboextensioncenter_images"/>
+ <skin-path name="*">
+  <layer name="liboextensioncenter_images" 
+     insert-after="custom"/>
+  <layer name="liboextensioncenter" 
+     insert-after="liboextensioncenter_images"/>
+  <layer name="DataGridWidget"
+     insert-after="liboextensioncenter"/>
+  <layer name="archaddon" 
+     insert-after="DataGridWidget"/>
+  <layer name="AddRemoveWidget" 
+     insert-after="archaddon"/>
+ </skin-path>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types.xml
new file mode 100644
index 0000000..434d862
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0"?>
+<object name="portal_types">
+ <object name="LECDocumentationFolder"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECFile"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECFileLink"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECImprovementProposal"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECImprovementProposalFolder"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECProject"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECRelease"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LECReleaseFolder"
+    meta_type="Factory-based Type Information with dynamic views"/>
+ <object name="LiboExtensionCenter"
+    meta_type="Factory-based Type Information with dynamic views"/>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECDocumentationFolder.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECDocumentationFolder.xml
new file mode 100644
index 0000000..3dbac1d
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECDocumentationFolder.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<object name="LECDocumentationFolder"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Documentation Section</property>
+ <property
+    name="description" i18n:translate="">Folder type for holding documentation.</property>
+ <property name="content_icon">documentation_icon.gif</property>
+ <property name="content_meta_type">LECDocumentationFolder</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECDocumentationFolder</property>
+ <property name="immediate_view">base_edit</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="HelpCenterFAQFolder"/>
+  <element value="HelpCenterHowToFolder"/>
+  <element value="HelpCenterTutorialFolder"/>
+  <element value="HelpCenterErrorReferenceFolder"/>
+  <element value="HelpCenterLinkFolder"/>
+  <element value="HelpCenterGlossary"/>
+  <element value="HelpCenterInstructionalVideoFolder"/>
+  <element value="HelpCenterReferenceManualFolder"/>
+ </property>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">helpcenter_view</property>
+ <property name="view_methods">
+  <element value="helpcenter_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFile.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFile.xml
new file mode 100644
index 0000000..d7c4778
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFile.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0"?>
+<object name="LECFile"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Downloadable File</property>
+ <property
+    name="description" i18n:translate="">Contains the downloadable file for the Release.</property>
+ <property name="content_icon">file_icon.gif</property>
+ <property name="content_meta_type">LECFile</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECFile</property>
+ <property name="immediate_view">lec_file_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">False</property>
+ <property name="allowed_content_types"/>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">lec_file_view</property>
+ <property name="view_methods">
+  <element value="lec_file_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="index_html"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="lec_file_view"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}/view" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="True">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Download" action_id="download" category="object"
+    condition_expr="member" url_expr="string:${object_url}/download"
+    visible="False">
+  <permission value="View"/>
+ </action>
+ <action title="External Edit" action_id="external_edit" category="object"
+    condition_expr="object/externalEditorEnabled"
+    url_expr="string:${object_url}/external_edit" visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFileLink.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFileLink.xml
new file mode 100644
index 0000000..4f8e4e3
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECFileLink.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0"?>
+<object name="LECFileLink"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Externally Hosted File</property>
+ <property
+    name="description" i18n:translate="">Contains a link to a downloadable file for a Release.</property>
+ <property name="content_icon">link_icon.gif</property>
+ <property name="content_meta_type">LECFileLink</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECFileLink</property>
+ <property name="immediate_view">lec_file_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">False</property>
+ <property name="allowed_content_types"/>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">lec_file_view</property>
+ <property name="view_methods">
+  <element value="lec_file_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposal.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposal.xml
new file mode 100644
index 0000000..0a63b07
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposal.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<object name="LECImprovementProposal"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Improvement Proposal</property>
+ <property name="description" i18n:translate="">What used to be a PLIP.</property>
+ <property name="content_icon">improvementproposal_icon.gif</property>
+ <property name="content_meta_type">LECImprovementProposal</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECImprovementProposal</property>
+ <property name="immediate_view">lec_improvements_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="Image"/>
+  <element value="File"/>
+ </property>
+ <property name="allow_discussion">True</property>
+ <property name="default_view">lec_improvements_view</property>
+ <property name="view_methods">
+  <element value="lec_improvements_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposalFolder.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposalFolder.xml
new file mode 100644
index 0000000..becc795
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECImprovementProposalFolder.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<object name="LECImprovementProposalFolder"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Roadmap Section</property>
+ <property
+    name="description" i18n:translate="">A proposal container has proposals, and a view for the listing.</property>
+ <property name="content_icon">improvementproposal_icon.gif</property>
+ <property name="content_meta_type">LECImprovementProposalFolder</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECImprovementProposalFolder</property>
+ <property name="immediate_view">lec_roadmap</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="LECImprovementProposal"/>
+ </property>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">lec_roadmap</property>
+ <property name="view_methods">
+  <element value="lec_roadmap"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECProject.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECProject.xml
new file mode 100644
index 0000000..3cbe6d7
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECProject.xml
@@ -0,0 +1,60 @@
+<?xml version="1.0"?>
+<object name="LECProject"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Extension Project</property>
+ <property
+    name="description" i18n:translate="">Project class that holds the information about the Extension Project.
+      </property>
+ <property name="content_icon">product_icon.gif</property>
+ <property name="content_meta_type">LECProject</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECProject</property>
+ <property name="immediate_view">lec_project_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types" purge="False">
+  <element value="LECReleaseFolder"/>
+  <element value="LECImprovementProposalFolder"/>
+  <element value="LECDocumentationFolder"/>
+  <element value="PoiLecTracker"/>
+ </property>
+ <property name="allow_discussion">True</property>
+ <property name="default_view">lec_project_view</property>
+ <property name="view_methods">
+  <element value="lec_project_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${folder_url}/" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECRelease.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECRelease.xml
new file mode 100644
index 0000000..ad59232
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECRelease.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0"?>
+<object name="LECRelease"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Extension Release</property>
+ <property
+    name="description" i18n:translate="">A release of a extension project, either final or in progress</property>
+ <property name="content_icon">download_icon.gif</property>
+ <property name="content_meta_type">LECRelease</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECRelease</property>
+ <property name="immediate_view">lec_release_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="LECFile"/>
+  <element value="LECFileLink"/>
+ </property>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">lec_release_view</property>
+ <property name="view_methods">
+  <element value="lec_release_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECReleaseFolder.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECReleaseFolder.xml
new file mode 100644
index 0000000..ff2db4a
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LECReleaseFolder.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0"?>
+<object name="LECReleaseFolder"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Releases Section</property>
+ <property name="description" i18n:translate="">Folder type for holding releases.</property>
+ <property name="content_icon">download_icon.gif</property>
+ <property name="content_meta_type">LECReleaseFolder</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLECReleaseFolder</property>
+ <property name="immediate_view">lec_releasefolder_view</property>
+ <property name="global_allow">False</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="LECRelease"/>
+ </property>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">lec_releasefolder_view</property>
+ <property name="view_methods">
+  <element value="lec_releasefolder_view"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${object_url}" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LiboExtensionCenter.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LiboExtensionCenter.xml
new file mode 100644
index 0000000..3449e85
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/types/LiboExtensionCenter.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<object name="LiboExtensionCenter"
+   meta_type="Factory-based Type Information with dynamic views"
+   xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+   i18n:domain="plone">
+
+ <property name="title" i18n:translate="">Extension Center</property>
+ <property
+    name="description" i18n:translate="">A simple folderish archetype for the Extension Center.</property>
+ <property name="content_icon">product_icon.gif</property>
+ <property name="content_meta_type">LiboExtensionCenter</property>
+ <property name="product">LiboExtensionCenter</property>
+ <property name="factory">addLiboExtensionCenter</property>
+ <property name="immediate_view">liboextensioncenter_view</property>
+ <property name="global_allow">True</property>
+ <property name="filter_content_types">True</property>
+ <property name="allowed_content_types">
+  <element value="LECProject"/>
+ </property>
+ <property name="allow_discussion">False</property>
+ <property name="default_view">liboextensioncenter_view</property>
+ <property name="view_methods">
+  <element value="liboextensioncenter_view"/>
+  <element value="liboextensioncenter_ploneorg"/>
+  <element value="lec_view_ploneorg"/>
+ </property>
+ <property name="default_view_fallback">False</property>
+ <alias from="(Default)" to="(dynamic view)"/>
+ <alias from="edit" to="atct_edit"/>
+ <alias from="index.html" to="(dynamic view)"/>
+ <alias from="properties" to="base_metadata"/>
+ <alias from="sharing" to="folder_localrole_form"/>
+ <alias from="view" to="(selected layout)"/>
+ <action title="View" action_id="view" category="object" condition_expr=""
+    url_expr="string:${folder_url}/" visible="True">
+  <permission value="View"/>
+ </action>
+ <action title="Edit" action_id="edit" category="object" condition_expr=""
+    url_expr="string:${object_url}/edit" visible="True">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="Properties" action_id="metadata" category="object"
+    condition_expr="" url_expr="string:${object_url}/properties"
+    visible="False">
+  <permission value="Modify portal content"/>
+ </action>
+ <action title="References" action_id="references" category="object"
+    condition_expr="object/archetype_tool/has_graphviz"
+    url_expr="string:${object_url}/reference_graph" visible="False">
+  <permission value="Modify portal content"/>
+  <permission value="Review portal content"/>
+ </action>
+ <action title="Folder Listing" action_id="folderlisting" category="folder"
+    condition_expr="object/isPrincipiaFolderish"
+    url_expr="string:${folder_url}/view" visible="False">
+  <permission value="View"/>
+ </action>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows.xml
new file mode 100644
index 0000000..eacf80d
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<object name="portal_workflow">
+ <object name="lec_area_workflow" meta_type="Workflow"/>
+ <object name="lec_improvementproposal_workflow" meta_type="Workflow"/>
+ <object name="lec_package_workflow" meta_type="Workflow"/>
+ <object name="lec_release_workflow" meta_type="Workflow"/>
+ <bindings>
+  <type type_id="LECDocumentationFolder"/>
+  <type type_id="LECFile"/>
+  <type type_id="LECFileLink"/>
+  <type type_id="LECImprovementProposal">
+   <bound-workflow workflow_id="lec_improvementproposal_workflow"/>
+  </type>
+  <type type_id="LECImprovementProposalFolder"/>
+  <type type_id="LECProject">
+   <bound-workflow workflow_id="lec_package_workflow"/>
+  </type>
+  <type type_id="LECRelease">
+   <bound-workflow workflow_id="lec_release_workflow"/>
+  </type>
+  <type type_id="LECReleaseFolder"/>
+  <type type_id="LiboExtensionCenter">
+   <bound-workflow workflow_id="lec_area_workflow"/>
+  </type>
+ </bindings>
+</object>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_area_workflow/definition.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_area_workflow/definition.xml
new file mode 100644
index 0000000..e394cfe
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_area_workflow/definition.xml
@@ -0,0 +1,165 @@
+<?xml version="1.0"?>
+<dc-workflow xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+             i18n:domain="plone"
+             workflow_id="lec_area_workflow"
+             title="LEC Area workflow"
+             state_variable="review_state"
+             initial_state="published">
+ <permission>Access contents information</permission>
+ <permission>View</permission>
+ <permission>Modify portal content</permission>
+ <permission>Add portal content</permission>
+ <permission>LiboExtensionCenter: Add Project</permission>
+ <state state_id="closed" title="Closed to the public"
+        i18n:attributes="title">
+  <exit-transition transition_id="publish"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Editor</permission-role>
+  </permission-map>
+  <permission-map name="LiboExtensionCenter: Add Project"
+                  acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="True">
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <state state_id="published" title="Open for submissions"
+        i18n:attributes="title">
+  <exit-transition transition_id="retract"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="True">
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Editor</permission-role>
+  </permission-map>
+  <permission-map name="LiboExtensionCenter: Add Project"
+                  acquired="True">
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <transition transition_id="publish"
+             title="Open area to submissions"
+             new_state="published" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_publish">Publish</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="retract" title="Close area"
+             new_state="closed" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_retract">Retract</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <worklist worklist_id="reviewer_queue" title="">
+  <description>Reviewer tasks</description>
+  <action url="%(portal_url)s/search?review_state=pending"
+          category="global">Pending (%(count)d)</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+  <match name="review_state" values="pending"/>
+ </worklist>
+ <variable variable_id="action" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The last transition</description>
+  <default>
+   
+   <expression>transition/getId|nothing</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="actor" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The ID of the user who performed the last transition</description>
+  <default>
+   
+   <expression>user/getId</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="comments" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Comments about the last transition</description>
+  <default>
+   
+   <expression>python:state_change.kwargs.get('comment', '')</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="review_history" for_catalog="False"
+           for_status="False" update_always="False">
+  <description>Provides access to workflow history</description>
+  <default>
+   
+   <expression>state_change/getHistory</expression>
+  </default>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </variable>
+ <variable variable_id="time" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Time of the last transition</description>
+  <default>
+   
+   <expression>state_change/getDateTime</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+</dc-workflow>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_improvementproposal_workflow/definition.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_improvementproposal_workflow/definition.xml
new file mode 100644
index 0000000..4d1dfa9
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_improvementproposal_workflow/definition.xml
@@ -0,0 +1,265 @@
+<?xml version="1.0"?>
+<dc-workflow xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+             i18n:domain="plone"
+             workflow_id="lec_improvementproposal_workflow"
+             title="LEC Improvement Proposal workflow"
+             state_variable="review_state"
+             initial_state="draft">
+ <permission>Access contents information</permission>
+ <permission>View</permission>
+ <permission>Modify portal content</permission>
+ <state state_id="being-discussed" title="Being discussed" i18n:attributes="title">
+  <exit-transition transition_id="begin"/>
+  <exit-transition transition_id="defer"/>
+  <exit-transition transition_id="reject"/>
+  <exit-transition transition_id="re-draft"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="completed" title="Completed and merged" i18n:attributes="title">
+  <exit-transition transition_id="re-merge"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="deferred" title="Deferred" i18n:attributes="title">
+  <exit-transition transition_id="begin"/>
+  <exit-transition transition_id="re-draft"/>
+  <exit-transition transition_id="reject"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="draft" title="Draft" i18n:attributes="title">
+  <exit-transition transition_id="propose"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="in-progress" title="In progress" i18n:attributes="title">
+  <exit-transition transition_id="complete"/>
+  <exit-transition transition_id="defer"/>
+  <exit-transition transition_id="re-discuss"/>
+  <exit-transition transition_id="reject"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="ready-for-merge" title="Ready for merge" i18n:attributes="title">
+  <exit-transition transition_id="defer"/>
+  <exit-transition transition_id="merge"/>
+  <exit-transition transition_id="re-work"/>
+  <exit-transition transition_id="reject"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="rejected" title="Rejected" i18n:attributes="title">
+  <exit-transition transition_id="re-draft"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <transition transition_id="accept" title="" new_state=""
+             trigger="USER" before_script="" after_script="">
+  
+  <guard>
+  </guard>
+ </transition>
+ <transition transition_id="begin"
+             title="Begin proposed work"
+             new_state="in-progress" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_begin_work">Begin work</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="complete"
+             title="Complete proposed work"
+             new_state="ready-for-merge" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_complete_work">Complete work</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="defer"
+             title="Defer work on this proposal"
+             new_state="deferred" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_defer_work">Defer work</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="merge"
+             title="Merge changes from this proposal"
+             new_state="completed" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_merge_changes">Merge changes</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="propose" title="Propose"
+             i18n:attributes="title"
+             new_state="being-discussed" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_propose">Propose</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="re-discuss"
+             title="Return to discussion stage"
+             new_state="being-discussed" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_rediscuss">Re-discuss</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="re-draft" title="Re-draft"
+             new_state="draft" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_redraft">Re-draft</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="re-merge"
+             title="Return to ready-for-merge stage"
+             new_state="ready-for-merge" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_unmerge">Un-merge</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="re-work"
+             title="Return to in-progress stage"
+             new_state="in-progress" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_rework">Re-work</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="reject"
+             title="Reject this proposal"
+             new_state="rejected" trigger="USER"
+             before_script="" after_script="">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_reject_proposal">Reject proposal</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <worklist worklist_id="reviewer_queue" title="">
+  <description>Reviewer tasks</description>
+  <action url="%(portal_url)s/search?review_state=pending"
+          category="global">Pending (%(count)d)</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+  <match name="review_state" values="pending"/>
+ </worklist>
+ <variable variable_id="action" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The last transition</description>
+  <default>
+   
+   <expression>transition/getId|nothing</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="actor" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The ID of the user who performed the last transition</description>
+  <default>
+   
+   <expression>user/getId</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="comments" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Comments about the last transition</description>
+  <default>
+   
+   <expression>python:state_change.kwargs.get('comment', '')</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="review_history" for_catalog="False"
+           for_status="False" update_always="False">
+  <description>Provides access to workflow history</description>
+  <default>
+   
+   <expression>state_change/getHistory</expression>
+  </default>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </variable>
+ <variable variable_id="time" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Time of the last transition</description>
+  <default>
+   
+   <expression>state_change/getDateTime</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+</dc-workflow>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_package_workflow/definition.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_package_workflow/definition.xml
new file mode 100644
index 0000000..d32b5cd
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_package_workflow/definition.xml
@@ -0,0 +1,206 @@
+<?xml version="1.0"?>
+<dc-workflow workflow_id="lec_package_workflow" title="LEC Project workflow" description="" state_variable="review_state" initial_state="unapproved" manager_bypass="False">
+ <permission>Access contents information</permission>
+ <permission>Add portal content</permission>
+ <permission>Modify portal content</permission>
+ <permission>View</permission>
+ <state state_id="featured" title="Featured">
+  <description>This project should be featured on the home page</description>
+  <exit-transition transition_id="publish"/>
+  <permission-map name="Access contents information" acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="False">
+   <permission-role>Contributor</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content" acquired="False">
+   <permission-role>Editor</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reviewer</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <state state_id="pending" title="Pending approval">
+  <exit-transition transition_id="publish"/>
+  <exit-transition transition_id="reject"/>
+  <exit-transition transition_id="retract"/>
+  <permission-map name="Access contents information" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reviewer</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reviewer</permission-role>
+   <permission-role>Editor</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reviewer</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <state state_id="published" title="Public">
+  <exit-transition transition_id="feature"/>
+  <exit-transition transition_id="reject"/>
+  <exit-transition transition_id="retract"/>
+  <permission-map name="Access contents information" acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reviewer</permission-role>
+   <permission-role>LECEvaluator</permission-role>
+   <permission-role>Editor</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="True">
+   <permission-role>Anonymous</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Member</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <state state_id="unapproved" title="Unapproved project">
+  <exit-transition transition_id="publish"/>
+  <exit-transition transition_id="submit"/>
+  <permission-map name="Access contents information" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Add portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Contributor</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Editor</permission-role>
+  </permission-map>
+  <permission-map name="View" acquired="False">
+   <permission-role>Manager</permission-role>
+   <permission-role>Owner</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <transition transition_id="feature" title="Publish, and set as featured" new_state="featured" trigger="USER" before_script="" after_script="">
+  <action url="%(content_url)s/content_publish_form" category="workflow" icon="">Featured Project</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="publish" title="Reviewer publishes content" new_state="published" trigger="USER" before_script="" after_script="give_reviewer_localrole">
+  <action url="%(content_url)s/content_publish_form" category="workflow" icon="">Publish</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="reject" title="Reviewer rejects submission" new_state="unapproved" trigger="USER" before_script="" after_script="">
+  <action url="%(content_url)s/content_reject_form" category="workflow" icon="">Reject</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="retract" title="Member retracts submission" new_state="unapproved" trigger="USER" before_script="" after_script="take_reviewer_localrole">
+  <action url="%(content_url)s/content_retract_form" category="workflow" icon="">Retract</action>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="submit" title="Member requests publishing" new_state="pending" trigger="USER" before_script="" after_script="">
+  <action url="%(content_url)s/content_submit_form" category="workflow" icon="">Submit for approval</action>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+  </guard>
+ </transition>
+ <worklist worklist_id="reviewer_queue" title="">
+  <description>Reviewer tasks</description>
+  <action url="%(portal_url)s/search?review_state=pending" category="global" icon="">Pending (%(count)d)</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+  <match name="review_state" values="pending"/>
+ </worklist>
+ <variable variable_id="action" for_catalog="False" for_status="True" update_always="True">
+  <description>The last transition</description>
+  <default>
+   
+   <expression>transition/getId|nothing</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="actor" for_catalog="False" for_status="True" update_always="True">
+  <description>The ID of the user who performed the last transition</description>
+  <default>
+   
+   <expression>user/getId</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="comments" for_catalog="False" for_status="True" update_always="True">
+  <description>Comments about the last transition</description>
+  <default>
+   
+   <expression>python:state_change.kwargs.get('comment', '')</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="review_history" for_catalog="False" for_status="False" update_always="False">
+  <description>Provides access to workflow history</description>
+  <default>
+   
+   <expression>state_change/getHistory</expression>
+  </default>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </variable>
+ <variable variable_id="time" for_catalog="False" for_status="True" update_always="True">
+  <description>Time of the last transition</description>
+  <default>
+   
+   <expression>state_change/getDateTime</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <script script_id="give_reviewer_localrole" type="External Method" filename="" module="LiboExtensionCenter.WorkflowScripts" function="giveReviewerLocalrole"/>
+ <script script_id="take_reviewer_localrole" type="External Method" filename="" module="LiboExtensionCenter.WorkflowScripts" function="takeReviewerLocalrole"/>
+</dc-workflow>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_release_workflow/definition.xml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_release_workflow/definition.xml
new file mode 100644
index 0000000..ebe8d88
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/profiles/default/workflows/lec_release_workflow/definition.xml
@@ -0,0 +1,254 @@
+<?xml version="1.0"?>
+<dc-workflow xmlns:i18n="http://xml.zope.org/namespaces/i18n"
+             i18n:domain="plone"
+             workflow_id="lec_release_workflow"
+             title="LEC Release workflow"
+             state_variable="review_state"
+             initial_state="pre-release">
+ <permission>Access contents information</permission>
+ <permission>Modify portal content</permission>
+ <permission>View</permission>
+ <state state_id="alpha" title="Alpha release" i18n:attributes="title">
+  <exit-transition transition_id="re-release"/>
+  <exit-transition transition_id="release-beta"/>
+  <exit-transition transition_id="release-candidate"/>
+  <exit-transition transition_id="release-final"/>
+  <exit-transition transition_id="retract"/>
+  <exit-transition transition_id="hide"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="beta" title="Beta release" i18n:attributes="title">
+  <exit-transition transition_id="re-release"/>
+  <exit-transition transition_id="release-candidate"/>
+  <exit-transition transition_id="release-final"/>
+  <exit-transition transition_id="retract"/>
+  <exit-transition transition_id="hide"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="final" title="Final release" i18n:attributes="title">
+  <exit-transition transition_id="re-release"/>
+  <exit-transition transition_id="retract"/>
+  <exit-transition transition_id="hide"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="hidden" title="Hidden">
+  <exit-transition transition_id="unhide"/>
+  <permission-map name="Access contents information"
+                  acquired="False">
+   <permission-role>Owner</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="False">
+   <permission-role>Owner</permission-role>
+   <permission-role>Manager</permission-role>
+   <permission-role>Reader</permission-role>
+  </permission-map>
+ </state>
+ <state state_id="pre-release" title="Unreleased" i18n:attributes="title">
+  <exit-transition transition_id="release-alpha"/>
+  <exit-transition transition_id="release-beta"/>
+  <exit-transition transition_id="release-candidate"/>
+  <exit-transition transition_id="release-final"/>
+  <exit-transition transition_id="hide"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <state state_id="release-candidate"
+        title="Release candidate"
+        i18n:attributes="title">
+  <exit-transition transition_id="re-release"/>
+  <exit-transition transition_id="release-final"/>
+  <exit-transition transition_id="retract"/>
+  <exit-transition transition_id="hide"/>
+  <permission-map name="Access contents information"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="Modify portal content"
+                  acquired="True">
+  </permission-map>
+  <permission-map name="View" acquired="True">
+  </permission-map>
+ </state>
+ <transition transition_id="hide" title="Hide"
+             new_state="hidden" trigger="USER"
+             before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_hide_release">Hide release</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="re-release" title="Re-release"
+             i18n:attributes="title"
+             new_state="" trigger="USER"
+             before_script="re_release_state"
+             after_script="" >
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_re_release">Re-release</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="release-alpha" 
+             title="Release alpha" i18n:attributes="title"
+             new_state="alpha" trigger="USER" before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_alpha_release">Release alpha</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="release-beta"
+             title="Release beta" i18n:attributes="title"
+             new_state="beta" trigger="USER" before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_release_beta">Release beta</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="release-candidate"
+             title="Release candidate" i18n:attributes="title"
+             new_state="release-candidate" trigger="USER"
+             before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_release_candidate">Release candidate</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="release-final"
+             title="Release final" new_state="final"
+             trigger="USER" before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_release_final_release">Release final release</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="retract" title="Retract"
+             new_state="pre-release" trigger="USER"
+             before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_retract_release">Retract release</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <transition transition_id="unhide" title="Unhide"
+             new_state="pre-release" trigger="USER"
+             before_script=""
+             after_script="release_new_state">
+  <action url="" category="workflow"
+          i18n:translate="title_lec_wf_unhide_release">Unhide release</action>
+  <guard>
+   <guard-permission>Modify portal content</guard-permission>
+  </guard>
+ </transition>
+ <worklist worklist_id="reviewer_queue" title="">
+  <description>Reviewer tasks</description>
+  <action url="%(portal_url)s/search?review_state=pending"
+          category="global">Pending (%(count)d)</action>
+  <guard>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+  <match name="review_state" values="pending"/>
+ </worklist>
+ <variable variable_id="action" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The last transition</description>
+  <default>
+   
+   <expression>transition/getId|nothing</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="actor" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>The ID of the user who performed the last transition</description>
+  <default>
+   
+   <expression>user/getId</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="comments" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Comments about the last transition</description>
+  <default>
+   
+   <expression>python:state_change.kwargs.get('comment', '')</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <variable variable_id="review_history" for_catalog="False"
+           for_status="False" update_always="False">
+  <description>Provides access to workflow history</description>
+  <default>
+   
+   <expression>state_change/getHistory</expression>
+  </default>
+  <guard>
+   <guard-permission>Request review</guard-permission>
+   <guard-permission>Review portal content</guard-permission>
+  </guard>
+ </variable>
+ <variable variable_id="time" for_catalog="False"
+           for_status="True" update_always="True">
+  <description>Time of the last transition</description>
+  <default>
+   
+   <expression>state_change/getDateTime</expression>
+  </default>
+  <guard>
+  </guard>
+ </variable>
+ <script script_id="re_release_state" type="External Method"
+         filename=""
+         module="LiboExtensionCenter.WorkflowScripts"
+         function="reReleaseState"/>
+ <script script_id="release_new_state"
+         type="External Method" filename=""
+         module="LiboExtensionCenter.WorkflowScripts"
+         function="releaseNewState"/>
+</dc-workflow>
commit 1f89665b2d6b4703a9f7d384c340a98fd97bb607
Author: Andreas Mantke <maand at gmx.de>
Date:   Sun Apr 24 11:05:13 2011 +0200

    initial commit of the subdirectories browser, content, events and their content

diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.py
new file mode 100755
index 0000000..e69de29
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.pyc
new file mode 100644
index 0000000..2c43a44
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/__init__.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.py
new file mode 100644
index 0000000..735516c
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.py
@@ -0,0 +1,95 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+class CategoryView(BrowserView):
+    
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+        
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+        
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+        
+    
+    def get_products(self, category, version, sort_on, SearchableText=None):
+        featured = False
+        
+        # featured content should be filtered by state and then 
+        # sorted by average rating
+        if sort_on == 'featured':
+            featured = True
+            sort_on = 'positive_ratings'
+        contentFilter = {'getCategories': category,
+                         'SearchableText': SearchableText,
+                         'portal_type': 'LECProject',
+                         'sort_on' : sort_on,
+                         'sort_order': 'reverse'}
+        
+        if version != 'all':
+            contentFilter['getCompatibility'] = version
+        if featured:
+            contentFilter['review_state'] = 'featured'
+            
+        return self.catalog(**contentFilter)
+    
+    def get_latest_plone_release(self):
+        """Get the latest version from the vocabulary. This only 
+        goes by string sorting so would need to be reworked if the 
+        plone versions dramatically changed"""
+        # getAvailableVersions is coming from root.py. ?
+        versions = list(self.context.getAvailableVersions())
+        versions.sort(reverse=True)
+        return versions[0]
+    
+    
+    def by_category(self, category, states=[], limit=None):
+        """Get catalog brains for projects in category."""
+        return self._contained(states, category, 'LECProject', limit,
+                                    sort_on='sortable_title', sort_order = 'asc')
+
+    def _contained(self, states, category, portal_type, limit=None,
+                        sort_on='Date', sort_order='reverse'):
+        """Get contained objects of type portal_type
+        that are in states and have category."""
+
+        catalog = getToolByName(self, 'portal_catalog')
+        my_path = '/'.join(self.context.getPhysicalPath())
+        query = { 'path'         : my_path,
+                  'portal_type'  : portal_type,
+                }
+
+        if states:
+            query['review_state'] = states
+        if category:
+            if self.context.getUseClassifiers():
+                query['getClassifiers'] = category 
+            else:
+                query['getCategories'] = category
+        if limit:
+            query['sort_limit'] = limit
+        if sort_on:
+            query['sort_on'] = sort_on
+        if sort_order:
+            query['sort_order'] = sort_order
+
+        results = catalog.searchResults(query)
+        if len(results) is not 0:
+            if limit:
+                return results[:int(limit)]
+            else:
+                return results
+        else:
+            return [] # return empty list, not catalog instance with no results.
+
+    def category_name(self, category):
+        """Get the long name of a category.
+        """
+        return self.context.getField('availableCategories').lookup(self.context, category, 1)
+
+    def category_description(self, category):
+        """Get the description of a category.
+        """
+        return self.context.getField('availableCategories').lookup(self.context, category, 2)
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.pyc
new file mode 100644
index 0000000..41bfb59
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/category.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/configure.zcml b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/configure.zcml
new file mode 100644
index 0000000..894abcc
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/configure.zcml
@@ -0,0 +1,175 @@
+<configure xmlns="http://namespaces.zope.org/browser"
+           xmlns:zope="http://namespaces.zope.org/zope"
+           xmlns:browser="http://namespaces.zope.org/browser"
+           i18n_domain="lec">
+
+    <!-- Resource directory for stylesheets -->
+    <browser:resourceDirectory
+      name="am.LiboExtensionCenter.stylesheets"
+      directory="stylesheets"
+      />
+  
+  
+  <page
+      name="extensioncenter_view"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".root.ExtensionCenterView"
+      permission="zope2.View"
+      allowed_attributes="rss_url active_projects can_add_project
+        project_count release_count categories project_url
+        featured_project featured_project_title featured_project_release
+        featured_project_release_url featured_project_release_id
+        featured_project_release_date has_featured_project"
+      />
+
+  <page
+      name="project_view"
+      for="am.LiboExtensionCenter.interfaces.IProjectContent"
+      class=".project.ProjectView"
+      permission="zope2.View"
+      allowed_attributes="latest_release latest_release_date upcoming_releases
+        release_rss_url display_categories similar_search_url is_public
+        release_folder_url roadmap_folder_url has_documentation_link
+        documentation_url documentation_link_class additional_resources
+        has_criteria_info criteria_info has_review_comment"
+      />
+  
+  <page
+      name="project_doap_view"
+      for="am.LiboExtensionCenter.interfaces.IProjectContent"
+      class=".projectdoap.ProjectDOAPView"
+      permission="zope2.View"
+      allowed_attributes="categories_url naked_description all_licenses get_oses
+        get_releases get_tracker"
+      />
+  
+  <page
+      name="doap.rdf"
+      for="am.LiboExtensionCenter.interfaces.IProjectContent"
+      class=".projectdoap.ProjectDOAPDocument"
+      permission="zope2.View"
+      allowed_attributes=""
+      />
+
+  <page
+      name="releasefolder_view"
+      for="am.LiboExtensionCenter.interfaces.IReleaseFolderContent"
+      class=".releasefolder.ReleaseFolderView"
+      permission="zope2.View"
+      allowed_attributes="upcoming_releases previous_releases" 
+      />
+
+  <page
+      name="roadmap_view"
+      for="am.LiboExtensionCenter.interfaces.IImprovementProposalFolderContent"
+      class=".roadmap.RoadmapView"
+      permission="zope2.View"
+      allowed_attributes="state_title improvement_proposals upcoming_releases getStateTitle"
+      />
+
+  <page
+      name="release_view"
+      for="am.LiboExtensionCenter.interfaces.IReleaseContent"
+      class=".release.ReleaseView"
+      permission="zope2.View"
+      allowed_attributes="start end compatibility_vocab license_vocab
+                          related_features_vocab validate_id
+                          is_outdated is_released release_date"
+      />
+
+  <page
+      name="proposal_view"
+      for="am.LiboExtensionCenter.interfaces.IImprovementProposalContent"
+      class=".improvement.ImprovementView"
+      permission="zope2.View"
+      allowed_attributes="title raw_title"
+      />
+
+  <page
+      name="docfolder_view"
+      for="am.LiboExtensionCenter.interfaces.IDocumentationFolderContent"
+      class=".docfolder.DocFolderView"
+      permission="zope2.View"
+      allowed_attributes=""
+      />
+
+  <page
+      name="file_view"
+      for="am.LiboExtensionCenter.interfaces.IFileContent"
+      class=".downloadablefile.DownloadableFileView"
+      permission="zope2.View"
+      allowed_attributes="direct_url file_size downloadicon_name"
+      />
+
+  <page
+      name="file_view"
+      for="am.LiboExtensionCenter.interfaces.IFileLinkContent"
+      class=".filelink.FileLinkView"
+      permission="zope2.View"
+      allowed_attributes="direct_url file_size downloadicon_name"
+      />
+
+  <page
+      name="category_view"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".category.CategoryView"
+      permission="zope2.View"
+      allowed_attributes="by_category _contained category_name category_description get_products get_latest_plone_release"
+      />
+
+  <!-- Pypi APIs -->
+  <page 
+      name="file_upload"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypi.PyPIView"
+      permission="zope2.View"
+      attribute="file_upload"
+    />
+ 
+  <page 
+      name="submit"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypi.PyPIView"
+      permission="zope2.View"
+      attribute="submit"
+    />
+
+  <page 
+      name="links"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypilinks.PyPILinksView"
+      permission="zope2.View"
+      template="pypilinks.pt"
+    />
+
+  <page 
+      name="simple"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypilinks.PyPILinksViewDeprecated"
+      permission="zope2.View"
+      template="pypilinks.pt"
+    />
+
+  <page 
+      name="list_classifiers"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypi.PyPIView"
+      permission="zope2.View"
+      attribute="list_classifiers"
+    />
+
+  <page 
+      name="verify"
+      for="am.LiboExtensionCenter.interfaces.IExtensionCenterContent"
+      class=".pypi.PyPIView"
+      permission="zope2.View"
+      attribute="verify"
+    />
+
+    <!-- thumbnail zooming -->
+    <resource
+        name="am.LiboExtensionCenter.fancyzoom.js"
+        file="fancyzoom.js"
+        />
+
+</configure>
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.py
new file mode 100644
index 0000000..c6d9aae
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.py
@@ -0,0 +1,31 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+class DocFolderView(BrowserView):
+
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+
+    def non_phc_contents(self):
+        """Get a list of folder objects of types not defined by the help
+        center product which have been placed in this help center.
+        """
+
+        phcTypes = self.context.allowed_content_types
+        catalog = getToolByName(self, 'portal_catalog')
+        allTypes = catalog.uniqueValuesFor('portal_type')
+
+        nonPHCTypes = [t for t in allTypes if t not in phcTypes]
+
+        # Need this, else we end up with all types, not no types :)
+        if not nonPHCTypes:
+            return []
+
+        return self.context.getFolderContents(contentFilter = {'portal_type' : nonPHCTypes})
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.pyc
new file mode 100644
index 0000000..ce6fb46
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/docfolder.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.py
new file mode 100644
index 0000000..7556aa0
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.py
@@ -0,0 +1,42 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+import re
+
+class DownloadableFileView(BrowserView):
+
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+
+    def downloadicon_name(self):
+        """Given the currently selected platform, return the name of the
+        name of the icon to use.
+
+        This takes the form platform_${name}.gif, where ${name} is the
+        platform name, in lowercase, with all non-alpha-numeric characters
+        (including whitespace) converted to underscores.
+        """
+        return 'platform_%s.gif' % \
+                    re.sub(r'\W', '_', self.context.getPlatform()).lower()
+
+    def file_size(self):
+        """Return the file size of the download, or None if unknown.
+        """
+        try:
+            return self.context.getObjSize(self.context)
+        except RuntimeError: 
+            # older products throwing RuntimeError: Filesystem Script (Python) getObjSize has errors.
+            return None
+
+    def direct_url(self):
+        """Get the direct URL to the download.
+        """
+        #return '%s/getDownloadableFile' % self.absolute_url()
+        return self.context.absolute_url()
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.pyc
new file mode 100644
index 0000000..6420998
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/downloadablefile.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/fancyzoom.js b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/fancyzoom.js
new file mode 100644
index 0000000..3548d25
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/fancyzoom.js
@@ -0,0 +1,9 @@
+// zoom thumbnails to full size
+jQuery(function($) {
+    $('.thumbzoom img').prepOverlay({
+        subtype: 'image',
+        urlmatch: '_(thumb|preview)$',
+        urlreplace: ''
+    });
+});
+
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.py
new file mode 100644
index 0000000..dc48d4b
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.py
@@ -0,0 +1,37 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+import re
+
+class FileLinkView(BrowserView):
+
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+
+    def downloadicon_name(self):
+        """Given the currently selected platform, return the name of the
+        name of the icon to use.
+
+        This takes the form platform_${name}.gif, where ${name} is the
+        platform name, in lowercase, with all non-alpha-numeric characters
+        (including whitespace) converted to underscores.
+        """
+        return 'platform_%s.gif' % \
+                    re.sub(r'\W', '_', self.context.getPlatform()).lower()
+
+    def file_size(self):
+        """Return the file size of the download, or None if unknown.
+        """
+        return self.context.getExternalFileSize()
+
+    def direct_url(self):
+        """Get the direct URL to the download.
+        """
+        return self.context.getExternalURL()
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.pyc
new file mode 100644
index 0000000..67eb26f
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/filelink.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.py
new file mode 100644
index 0000000..1ddf421
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.py
@@ -0,0 +1,27 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+class ImprovementView(BrowserView):
+
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+
+    def title(self):
+        """Return the title as "#${id}: ${title}".
+
+        The id is the proposal number, and we want it to be associated
+        with the title when it's displayed.
+        """
+        return '#%s: %s' % (self.context.getId(), self.context.getField('title').get(self.context))
+    
+    def raw_title(self):
+        """Get the raw title of the improvement proposal - no #${id} prefixing.
+        """
+        return self.context.getField('title').get(self.context)
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.pyc b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.pyc
new file mode 100644
index 0000000..91d54ab
Binary files /dev/null and b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/improvement.pyc differ
diff --git a/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/project.py b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/project.py
new file mode 100644
index 0000000..8e8d91b
--- /dev/null
+++ b/LiboExtensionWebsite/am.LiboExtensionCenter/am/LiboExtensionCenter/browser/project.py
@@ -0,0 +1,241 @@
+from Products.Five.browser import BrowserView
+from Products.CMFCore.utils import getToolByName
+from Acquisition import aq_inner
+
+
+def _upcoming_releases(proj):
+    """Get a list of upcoming releases for a project, in reverse order of
+    effective date.
+    """
+    
+    releaseFolder = proj.getReleaseFolder()
+    catalog = getToolByName(proj, 'portal_catalog')
+    res = catalog.searchResults(
+      portal_type = 'LECRelease',
+      review_state = ['pre-release', 'alpha', 'beta', 'release-candidate'],
+      path = '/'.join(releaseFolder.getPhysicalPath()),
+      sort_on = 'effective',
+      sort_order = 'reverse')
+    return [r.getObject() for r in res]
+
+
+class ProjectView(BrowserView):
+    
+    def __init__(self, context, request):
+        BrowserView.__init__(self, context, request)
+        
+        self.membership = getToolByName(self.context, 'portal_membership')
+        self.catalog = getToolByName(self.context, 'portal_catalog')
+        self.portal_url = getToolByName(self.context, 'portal_url')()
+        
+        self.context_path = '/'.join(self.context.getPhysicalPath())
+        
+    def latest_release(self):
+        """Get the most recent final release or None if none can be found.
+        """

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list