Whiteboard for preparation of workshop "ReST-based documentation in the TYPO3 BE" @ T3DD13
Concepts:
* Documentation BE module
** list of all available documentation, taken from typo3conf/Documentation/[key]/[language|default]/[format]/
*** "key" has this syntax:
**** [product key].[optional path].[manual or extension key]
**** Examples
***** typo3cms.TyposcriptReference
***** typo3cms.extensions.news
*** documentation does not need to be related to an existing extension, the official documentation or whatever. It can be just a bunch of local files.
*** versions are not supported, only one version is installed/available at any one time
*** "official format" is one of following:
**** view online (direct link to docs.typo3.org, pointing to the right version)
**** pdf
**** html (e.g., same as docs.typo3.org)
**** json (possibly not officially part of the list but added by a 3rd party ext such as EXT:sphinx or EXT:restdoc)
*** other formats detected and used as is
** Signal/Slots that could be useful:
*** post-processing of documentation list (e.g. for documentation located at some other place)
*** beforeLoadingDocumentation => compile (e.g. with extension Sphinx)
*** for adding features: one signal/slot to add functions, and one to handle the result (e.g. would provide a relative URL to display in a frame)
** download from docs.typo3.org (BE module, scheduler task?)
** list of official documentation (predefined + updatable by download from docs.typo3.org)
*** stored in a table (sys\_documentation?), loaded by an upgrade wizard
** list of available documentation is gathered by browsing the file structure (no table). See if it's fast enough.
** hook into Admin Tools > Language to retrieve compiled documentation for local extensions
** docs.typo3.org should create a zip file of the compiled documentation:
*** e.g., \url{http://docs.typo3.org/typo3cms/extensions/sphinx/packages/}<extkey>-<version>.zip
*** suggested structure within the zip file: /<extkey>/default/html/<all-files> to be compatible with what is to be found in typo3conf/documentation
*** when we generate PDF on docs.typo3.org, we should include the PDF as well within this archive, into /<extkey>/default/pdf/
Organization:
* 1 team can work on retrieval of compiled documentation
* 1 team can work on prototyping the BE module
** Domain model for a manual
** DocumentationRepository->findAll() to retrieve all available documentation
** view with jQuery + DataTables (synergy with Extension Manager)
Package Files:
1. Go to /path/to/typo3conf/Documentation (create if needed)
1. Download archives and unzip in place ("css\_styled\_content-6.2.zip" will be unzipped as a directory "css\_styled\_content", thus without version)
**SYSTEM EXTENSIONS:**
* \url{http://docs.typo3.org/typo3cms/extensions/css\_styled\_content/packages/css\_styled\_content-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/dbal/packages/dbal-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/felogin/packages/felogin-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/form/packages/form-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/indexed\_search/packages/indexed\_search-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/linkvalidator/packages/linkvalidator-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/openid/packages/openid-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/recycler/packages/recycler-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/rsaauth/packages/rsaauth-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/rtehtmlarea/packages/rtehtmlarea-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/saltedpasswords/packages/saltedpasswords-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/scheduler/packages/scheduler-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/sys\_action/packages/sys\_action-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/taskcenter/packages/taskcenter-6.2.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/workspaces/packages/workspaces-6.2.zip}
**STANDARD EXTENSIONS:**
* \url{http://docs.typo3.org/typo3cms/extensions/sphinx/packages/sphinx-1.0.0.zip}
* \url{http://docs.typo3.org/typo3cms/extensions/restdoc/packages/restdoc-1.3.0.zip}
**USEFUL LINKS**
* Documentation Domain Model (from Flow): \url{http://git.typo3.org/Packages/TYPO3.DocTools.git}
* Extension Sphinx: \url{https://forge.typo3.org/projects/show/extension-sphinx} (available on TER as well)
* DOC: \url{http://docs.typo3.org/typo3cms/extensions/sphinx/latest/}
* Fork of TYPO3 for the workshop: \url{https://github.com/fsuter/TYPO3.CMS.Documentation.Migration/}
* Backend module: \url{https://git.typo3.org/TYPO3CMS/Extensions/sphinx.git}
*