Commit 5b727020 authored by Carsten  Rose's avatar Carsten Rose
Browse files

Manual.rst: Updates to STORE_USER

parent 51b651f2
Pipeline #915 passed with stage
in 1 minute and 41 seconds
...@@ -207,22 +207,22 @@ Setup CSS & JS ...@@ -207,22 +207,22 @@ Setup CSS & JS
} }
page.includeJS { page.includeJS {
file01 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.min.js file01 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.min.js
file02 = typo3conf/ext/qfq/Resources/Public/JavaScript/bootstrap.min.js file02 = typo3conf/ext/qfq/Resources/Public/JavaScript/bootstrap.min.js
file03 = typo3conf/ext/qfq/Resources/Public/JavaScript/validator.min.js file03 = typo3conf/ext/qfq/Resources/Public/JavaScript/validator.min.js
file04 = typo3conf/ext/qfq/Resources/Public/JavaScript/jqx-all.js file04 = typo3conf/ext/qfq/Resources/Public/JavaScript/jqx-all.js
file05 = typo3conf/ext/qfq/Resources/Public/JavaScript/globalize.js file05 = typo3conf/ext/qfq/Resources/Public/JavaScript/globalize.js
file06 = typo3conf/ext/qfq/Resources/Public/JavaScript/tinymce.min.js file06 = typo3conf/ext/qfq/Resources/Public/JavaScript/tinymce.min.js
file07 = typo3conf/ext/qfq/Resources/Public/JavaScript/EventEmitter.min.js file07 = typo3conf/ext/qfq/Resources/Public/JavaScript/EventEmitter.min.js
file08 = typo3conf/ext/qfq/Resources/Public/JavaScript/typeahead.bundle.min.js file08 = typo3conf/ext/qfq/Resources/Public/JavaScript/typeahead.bundle.min.js
file09 = typo3conf/ext/qfq/Resources/Public/JavaScript/qfq.min.js file09 = typo3conf/ext/qfq/Resources/Public/JavaScript/qfq.min.js
file10 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.tablesorter.combined.min.js file10 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.tablesorter.combined.min.js
file11 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.tablesorter.pager.min.js file11 = typo3conf/ext/qfq/Resources/Public/JavaScript/jquery.tablesorter.pager.min.js
file12 = typo3conf/ext/qfq/Resources/Public/JavaScript/widget-columnSelector.min.js file12 = typo3conf/ext/qfq/Resources/Public/JavaScript/widget-columnSelector.min.js
# Only needed in case FormElement 'annotate' is used. # Only needed in case FormElement 'annotate' is used.
file20 = typo3conf/ext/qfq/Resources/Public/JavaScript/fabric.min.js file20 = typo3conf/ext/qfq/Resources/Public/JavaScript/fabric.min.js
file21 = typo3conf/ext/qfq/Resources/Public/JavaScript/qfq.fabric.min.js file21 = typo3conf/ext/qfq/Resources/Public/JavaScript/qfq.fabric.min.js
} }
...@@ -1455,43 +1455,44 @@ Store ...@@ -1455,43 +1455,44 @@ Store
Only variables that are known in a specified store can be substituted. Only variables that are known in a specified store can be substituted.
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
|Name |Description | Content | |Name |Description | Content |
+=====+========================================================================================+============================================================================+ +=====+========================================================================================+================================================================================+
| B | :ref:`STORE_BEFORE`: Record - the current record loaded in the form before any update. | All columns of the current record from the current table | | B | :ref:`STORE_BEFORE`: Record - the current record loaded in the form before any update. | All columns of the current record from the current table. See `STORE_BEFORE`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| C | :ref:`STORE_CLIENT`: POST variable, if not found: GET variable. | Parameter sent from the Client (=Browser). | | C | :ref:`STORE_CLIENT`: POST variable, if not found: GET variable. | Parameter sent from the Client (=Browser). See `STORE_CLIENT`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| D | Default values column : The *table.column* specified *default value*. | | | D | Default values column : The *table.column* specified *default value*. | |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| E | *Empty* - allways an empty string, might be helpful if a variable is empty or undefined| Any key | | E | *Empty* - allways an empty string, might be helpful if a variable is empty or undefined| Any key |
| | and will be used in an SQL statement. | | | | and will be used in an SQL statement. | |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| F | :ref:`STORE_FORM`: data not saved in database yet. | All native *FormElements*. Recent values from the Browser. | | F | :ref:`STORE_FORM`: data not saved in database yet. | All native *FormElements*. Recent values from the Browser. See: `STORE_FORM`_ |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| L | :ref:`STORE_LDAP`: Will be filled on demand during processing of a *FormElement*. | Custom specified list of LDAP attributes | | L | :ref:`STORE_LDAP`: Will be filled on demand during processing of a *FormElement*. | Custom specified list of LDAP attributes. See `STORE_LDAP`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| M | Column type: The *table.column* specified *type*. | | | M | Column type: The *table.column* specified *type*. | |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| P | Parent record. E.g.: on multi & copy forms the current record of the outer query. | All columns of the MultiSQL Statement from the table for the current row | | P | Parent record. E.g.: on multi & copy forms the current record of the outer query. | All columns of the MultiSQL Statement from the table for the current row |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| R | :ref:`STORE_RECORD`: Record - the current record loaded in the form. | All columns of the current record from the current table | | R | :ref:`STORE_RECORD`: Record - the current record loaded in the form. | All columns of the current record from the current table. See `STORE_RECORD`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| S | :ref:`STORE_SIP`: Client parameter 's' will indicate the current SIP, which will be | sip, r (recordId), form | | S | :ref:`STORE_SIP`: Client parameter 's' will indicate the current SIP, which will be | sip, r (recordId), form. See `STORE_SIP`_. |
| | loaded from the SESSION repo to the SIP-Store. | | | | loaded from the SESSION repo to the SIP-Store. | |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| T | :ref:`STORE_TYPO3`: a) Bodytext (ttcontent record), b) Typo3 internal variables. | See Typo3 tt_content record configuration | | T | :ref:`STORE_TYPO3`: a) Bodytext (ttcontent record), b) Typo3 internal variables. | See Typo3 tt_content record configuration. See `STORE_TYPO3`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| U | :ref:`STORE_USER`: per user variables, valid as long as the browser session lives. | Set via report: '...' AS '_=<var name>' | | U | :ref:`STORE_USER`: per user variables, valid as long as the browser session lives. | Set via report: '...' AS '_=<var name>' See: `STORE_USER`_, |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ | | | `store_user_examples`_ |
| V | :ref:`STORE_VARS`: Generic variables. | | +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ | V | :ref:`STORE_VARS`: Generic variables. | See `STORE_VARS`_. |
| Y | :ref:`STORE_SYSTEM`: a) Database, b) helper vars for logging/debugging: | | +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| | SYSTEM_SQL_RAW ... SYSTEM_FORM_ELEMENT_COLUMN, c) Any custom fields: CONTACT, HELP, ...| | | Y | :ref:`STORE_SYSTEM`: a) Database, b) helper vars for logging/debugging: | See `STORE_SYSTEM`_. |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ | | SYSTEM_SQL_RAW ... SYSTEM_FORM_ELEMENT_COLUMN, c) Any custom fields: CONTACT, HELP, ...| |
| 0 | *Zero* - allways value: 0, might be helpful if a variable is empty or undefined and | Any key | +-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
| | will be used in an SQL statement. | | | 0 | *Zero* - allways value: 0, might be helpful if a variable is empty or undefined and | Any key |
+-----+----------------------------------------------------------------------------------------+----------------------------------------------------------------------------+ | | will be used in an SQL statement. | |
+-----+----------------------------------------------------------------------------------------+--------------------------------------------------------------------------------+
* Default *<prio>*: *FSRVD* - Form / SIP / Record / Vars / Table definition. * Default *<prio>*: *FSRVD* - Form / SIP / Record / Vars / Table definition.
* Hint: Preferable, parameter should be submitted by SIP, not by Client (=URL). * Hint: Preferable, parameter should be submitted by SIP, not by Client (=URL).
...@@ -1739,6 +1740,7 @@ As soon as a value is set in the store, it remains as long as the browser sessio ...@@ -1739,6 +1740,7 @@ As soon as a value is set in the store, it remains as long as the browser sessio
Values can be set via report '... AS "_=<var name>"' Values can be set via report '... AS "_=<var name>"'
See also: `store_user_examples`_
.. _LDAP: .. _LDAP:
...@@ -5290,7 +5292,7 @@ Special column names ...@@ -5290,7 +5292,7 @@ Special column names
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| _+html-tag attributes |The content will be wrapped with '<html-tag attributes>'. Example: SELECT 'example' AS '_+a href="http://example.com"' creates '<a href="http://example.com">example</a>' | | _+html-tag attributes |The content will be wrapped with '<html-tag attributes>'. Example: SELECT 'example' AS '_+a href="http://example.com"' creates '<a href="http://example.com">example</a>' |
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| _=varname |The content will be saved in store 'user' under 'varname'. Retrieve it later via {{varname:U}} | | _=varname |The content will be saved in store 'user' under 'varname'. Retrieve it later via {{varname:U}}. See `STORE_USER`_, `store_user_examples`_ |
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|_<nonReservedName> |Suppress output. Column names with leading underscore are used to select data from the database and make it available in other parts of the report without generating any output. | |_<nonReservedName> |Suppress output. Column names with leading underscore are used to select data from the database and make it available in other parts of the report without generating any output. |
+------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
...@@ -7167,8 +7169,12 @@ FormElement) forms: :: ...@@ -7167,8 +7169,12 @@ FormElement) forms: ::
rsep = ,&ensp; rsep = ,&ensp;
} }
Keep variables per user session .. _`store_user_examples`:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
STORE_USER examples
^^^^^^^^^^^^^^^^^^^
Keep variables per user session.
Two pages (pass variable) Two pages (pass variable)
''''''''''''''''''''''''' '''''''''''''''''''''''''
...@@ -7220,6 +7226,28 @@ All places with `{{feUser:Y}}` has to be replaced by `{{feUser:UY}}`: :: ...@@ -7220,6 +7226,28 @@ All places with `{{feUser:Y}}` has to be replaced by `{{feUser:UY}}`: ::
'p:{{pageAlias:T}}&feUser={{feUser:T}}|t:Back to own identity|b|s' AS _link, 'p:{{pageAlias:T}}&feUser={{feUser:T}}|t:Back to own identity|b|s' AS _link,
Semester switch (remember last choice)
''''''''''''''''''''''''''''''''''''''
A current semester is defined via configuration in STORE_SYSTEM '{{semId:Y}}'. The first column "'{{semId:SUY}}' AS '_=semId'" saves
the semester to STORE_USER via '_=semId'. The priority 'SCUY' takes either the latest choose (STORE_SIP) or reuse the
last used (STORE_USER) or (first time call during browser session) takes the default from config (STORE_SYSTEM): ::
# Semester switch
10 {
sql = SELECT '{{semId:SUY}}' AS '_=semId',
CONCAT('p:{{pageAlias:T}}&semId=', sp.id, '|t:', sp.name, '|s|b|G:glyphicon-chevron-left') AS _link,
' <button class="btn disabled ', IF({{semId:Y0}}=sc.id, 'btn-success', 'btn-default'), '">',sc.name, '</button> ',
CONCAT('p:{{pageAlias:T}}&semId=', sn.id, '|t:', sn.name, '|s|b|G:glyphicon-chevron-right|R') AS _link
FROM semester AS sc
LEFT JOIN semester AS sp ON sp.id=sc.id-1
LEFT JOIN semester AS sn ON sc.id+1=sn.id AND sn.show_semester_from<=CURDATE()
WHERE sc.id={{semId:SUY}} AND '{{form:SE}}'=''
ORDER BY sc.semester_von
head = <div class="btn-group" style="position: absolute; top: 15px; right: 25px;">
tail = </div><p></p>
}
.. _`system`: .. _`system`:
System System
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment