source: main/waeup.kofa/trunk/docs/source/userdocs/documents.rst @ 13949

Last change on this file since 13949 was 13178, checked in by Henrik Bettermann, 9 years ago

Restructure index page and modify README.txt again.

File size: 4.9 KB
RevLine 
[12829]1.. _documents:
2
[13167]3Documents Section
4*****************
[13136]5
[13144]6The documents section of Kofa is a tiny built-in content management
7system (CMS), which has been developed mainly for publishing
8announcements, adverts, instructions or general information provided
9by the university to inform prospective students about application
10and registration procedures.
[13136]11
[13167]12Technically speaking, the documents section is a container of type `DocumentsContainer` with id ``documents``, which is located in the `IUniversity` instance and which contains public documents. There are three types of public documents::
[13136]13
[13167]14  Documents Section (DocumentsContainer)
[13136]15  |
16  +---> PDFDocument
17  |
18  +---> HTMLDocument
19  |
20  +---> RESTDocument
21
[13144]22The first can be used to provide pdf files for download. The second
[13178]23and third can be used to create multi-lingual static html pages on
[13144]24the portal. HTML documents expect html coded text as input, REST
[13145]25documents expect `reStructuredText <http://docutils.sf.net/rst.html>`_
26which is transformed into html.
[13136]27
28Interfaces
29==========
30
[13144]31The base for all three document interfaces is `IPublicDocument`
32which inherits from `IDocument`. All attributes are read-only
33properties, i.e. attributes with a getter method only. These
34properties are computed dynamically and can't be set. Only the
[13145]35`document_id` and the `title` can be entered on form pages or can be
[13144]36imported.
[13136]37
38.. literalinclude:: ../../../src/waeup/kofa/documents/interfaces.py
39   :pyobject: IDocument
40
41.. literalinclude:: ../../../src/waeup/kofa/documents/interfaces.py
42   :pyobject: IPublicDocument
43
[13144]44A PDF Document further specifies which pdf files are connected to
45the object. Usually, only one filename is in the `filenames` tuple.
[13136]46
47.. literalinclude:: ../../../src/waeup/kofa/documents/interfaces.py
48   :pyobject: IPDFDocument
49
[13144]50HTML and REST documents have a schema field for multi-lingual
51content in HTML or in REST format respectively, see :ref:`note
52<multilingual>`. The hidden `html_dict` attributes contain the same
53information after saving the form, but the sequence of language
54translations has been split up and copied into a dictionary for
55faster processing.
[13136]56
57.. literalinclude:: ../../../src/waeup/kofa/documents/interfaces.py
58   :pyobject: IHTMLDocument
59
60.. literalinclude:: ../../../src/waeup/kofa/documents/interfaces.py
61   :pyobject: IRESTDocument
62
63
[13144]64Workflow
65========
[13136]66
[13144]67Public documents have a publication workflow with two states:
68created and published. Only the content or attached files of
69published documents can be seen by anonymous users::
[13136]70
[13144]71                 a
72    created ----------- published
[13136]73
[13144]74    a: publish
75   -a: retract
76
77History & Logging
78=================
79
80All transitions are automatically logged in ``main.log`` and the
81document's history. This is a sample history of public document::
82
83  2015-07-05 07:31:32 UTC - Document created by Admin
84  2015-07-05 07:31:53 UTC - Document published by Admin
85  2015-07-05 07:31:57 UTC - Document retracted by Admin
86
87The corresponding logfile excerpt is as follows::
88
89  2015-07-05 09:31:32,848 - INFO - admin - demodoc - Document created
90  2015-07-05 09:31:32,850 - INFO - admin - documents.browser.DocumentAddFormPage - added: HTML Document demodoc
91  2015-07-05 09:31:39,025 - INFO - admin - documents.browser.HTMLDocumentManageFormPage - demodoc - saved: html_multilingual
92  2015-07-05 09:31:43,279 - INFO - admin - documents.browser.HTMLDocumentManageFormPage - added: benny|waeup.local.DocumentManager
93  2015-07-05 09:31:53,152 - INFO - admin - demodoc - Document published
94  2015-07-05 09:31:57,216 - INFO - admin - demodoc - Document retracted
95  2015-07-05 09:32:46,679 - INFO - admin - documents.browser.DocumentsContainerManageFormPage - removed: demodoc
96
97
98Quick Guide
[13136]99===========
100
[13144]101How to add and reference an HTML document
102-----------------------------------------
[13136]103
[13144]1041. Click *Documents > Manage > Add document*.
1052. Select *HTML Document*, fill fields and press *Add document*.
[13178]1063. Enter multi-lingual content in HTML format and press *Save*.
[13144]1074. Click *View > Transition*.
1085. Select *Publish document* and press *Save*.
[13136]109
[13144]110The document is now published and available to anonymous users.
[13136]111
[13144]1126. Mark and copy the HTML Element provided on the page:
113   ``<a href= ... /a>``.
[13178]1147. Open another HTML document or a page with multi-lingual content
[13144]115   and paste the element where needed.
[13136]116
117
[13144]118How to add and reference a PDF document
119---------------------------------------
120
1211. Click *Documents > Manage > Add document*.
1222. Select *PDF Document*, fill fields and press *Add document*.
1233. Select *Files* and upload a pdf file from your computer.
1244. Click *View > Transition*.
1255. Select *Publish document* and press *Save*.
126
127The document and the connected pdf file are now published and
128available to anonymous users.
129
1306. Open the HTML source with your browser, search for the ``a``
131   element
1327. Mark and copy the HTML element found:
133   ``<a target="image" href= ... /a>``.
[13178]1348. Open another HTML document or a page with multi-lingual content
[13144]135   and paste the element where needed.
Note: See TracBrowser for help on using the repository browser.