Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
typo3
qfq
Commits
95ac7b5c
Commit
95ac7b5c
authored
Jan 09, 2020
by
Carsten Rose
Browse files
Merge branch 'F8851FixSqlLogModeModifyAll' into 'develop'
F8851 fix sql log mode modify all See merge request
!235
parents
a2df60c1
06ada0fc
Pipeline
#3112
passed with stages
in 2 minutes and 15 seconds
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Documentation/Manual.rst
View file @
95ac7b5c
...
...
@@ -1319,7 +1319,7 @@ Only in FormElement:
| **auto** | Form | | Only supported for FormElements. Most suitable checktype is dynamically evaluated based |
| | | | on native column definition, the FormElement type, and other info. See below for details. |
+------------------+------+-------+-------------------------------------------------------------------------------------------+
| **email** | Form | Query | [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\.[a-zA-Z]{2,}
|
| **email** | Form | Query | [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\\.[a-zA-Z]{2,} |
+------------------+------+-------+-------------------------------------------------------------------------------------------+
| **pattern** | Form | | Compares the value against a regexp. |
+------------------+------+-------+-------------------------------------------------------------------------------------------+
...
...
@@ -1350,15 +1350,15 @@ The following `escape` & `action` types are available:
+=======+==================================================================================================================================+
| c | Config - the escape type configured in `configuration`_. |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| C | Colon ':' will be escaped against \\: |
| C | Colon ':' will be escaped against \\:
|
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| d | Double ticks " will be escaped against \\\".
|
| d | Double ticks " will be escaped against \\\". |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| l | LDAP search filter values: `ldap-escape() <http://php.net/manual/en/function.ldap-escape.php>`_ (LDAP_ESCAPE_FILTER). |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| L | LDAP DN values. `ldap-escape() <http://php.net/manual/en/function.ldap-escape.php>`_ (LDAP_ESCAPE_DN). |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| s | Single ticks ' will be escaped against \\\'.
|
| s | Single ticks ' will be escaped against \\\'. |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
| S | Stop replace. If the replaced value contains nested variables, they won't be replaced. |
+-------+----------------------------------------------------------------------------------------------------------------------------------+
...
...
@@ -3156,7 +3156,7 @@ See also at specific *FormElement* definitions.
+------------------------+--------+ |
| max | s/d/n | *Always use the international format 'yyyy-mm-dd[ hh:mm[:ss]]* |
+------------------------+--------+----------------------------------------------------------------------------------------------------------+
| processReadOnly |
[n]
| [0|1] By default FE's with type='readonly' are not processed during 'save'. |
| processReadOnly |
string
| [0|1] By default FE's with type='readonly' are not processed during 'save'. |
| | | This option forces to process them during 'save' as well. |
+------------------------+--------+----------------------------------------------------------------------------------------------------------+
| retype, | string | See `input-text`_ |
...
...
@@ -6234,11 +6234,11 @@ Link Examples
+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| SELECT "p:form_person|C:green" AS _link |
<a
href=
"?form_person"
><img
alttext=
"Check"
src=
"typo3conf/ext/qfq/Resources/Public/icons/checked-green.gif"
></a>
|
+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| SELECT "U:form=Person
&
r=123|x|D" as _link |
<a
href=
"typo3conf/ext/qfq/Classes/Api/delete.php?s=badcaffee1234"
><span
class=
"glyphicon glyphicon-trash"
></span>
">
</a>
|
| SELECT "U:form=Person
&
r=123|x|D" as _link |
<a
href=
"typo3conf/ext/qfq/Classes/Api/delete.php?s=badcaffee1234"
><span
class=
"glyphicon glyphicon-trash"
></span>
">
</a>
|
+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| SELECT "U:form=Person
&
r=123|x|t:Delete" as _link |
<a
href=
"typo3conf/ext/qfq/Classes/Api/delete.php?s=badcaffee1234"
>
Delete
</a>
|
| SELECT "U:form=Person
&
r=123|x|t:Delete" as _link |
<a
href=
"typo3conf/ext/qfq/Classes/Api/delete.php?s=badcaffee1234"
>
Delete
</a>
|
+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| SELECT "s:1|d:full.pdf|M:pdf|p:id=det1
&
r=12|p:id=det2|F:cv.pdf| |
<a
href=
"typo3conf/ext/qfq/Classes/Api/download.php?s=badcaffee1234"
>
Download
</a>
|
| SELECT "s:1|d:full.pdf|M:pdf|p:id=det1
&
r=12|p:id=det2|F:cv.pdf| |
<a
href=
"typo3conf/ext/qfq/Classes/Api/download.php?s=badcaffee1234"
>
Download
</a>
|
| t:Download|a:Create complete PDF - please wait" as _link | |
+-----------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| SELECT "y:iatae3Ieem0jeet|t:Password|o:Clipboard|b" AS _link |
<button
class=
"btn btn-info"
onClick=
"new QfqNS.Clipboard({text: 'iatae3Ieem0jeet'});"
title=
'Copy to clipboard'
>
Password
</button>
|
...
...
extension/Classes/Core/Constants.php
View file @
95ac7b5c
...
...
@@ -783,7 +783,6 @@ const RANDOM_LENGTH = 32;
// SQL logging Modes
const
SQL_LOG_MODE_ALL
=
'all'
;
const
SQL_LOG_MODE_MODIFY
=
'modify'
;
const
SQL_LOG_MODE_MODIFY_ALL
=
'modifyAll'
;
const
SQL_LOG_MODE_NONE
=
'none'
;
const
SQL_LOG_MODE_ERROR
=
'error'
;
...
...
extension/Classes/Core/Database/Database.php
View file @
95ac7b5c
...
...
@@ -50,7 +50,7 @@ class Database {
/**
* @var array
*/
private
$sqlLogModePrio
=
[
SQL_LOG_MODE_NONE
=>
1
,
SQL_LOG_MODE_ERROR
=>
2
,
SQL_LOG_MODE_MODIFY
=>
3
,
SQL_LOG_MODE_
MODIFY_
ALL
=>
4
,
SQL_LOG_MODE_ALL
=>
5
];
private
$sqlLogModePrio
=
[
SQL_LOG_MODE_NONE
=>
1
,
SQL_LOG_MODE_ERROR
=>
2
,
SQL_LOG_MODE_MODIFY
=>
3
,
SQL_LOG_MODE_ALL
=>
4
];
private
$dbName
=
''
;
...
...
@@ -74,7 +74,7 @@ class Database {
$this
->
store
=
Store
::
getInstance
();
$storeSystem
=
$this
->
store
->
getStore
(
STORE_SYSTEM
);
$this
->
sqlLog
=
$storeSystem
[
SYSTEM_SITE_PATH
]
.
'/'
.
$storeSystem
[
SYSTEM_SQL_LOG
];
$this
->
sqlLog
=
$storeSystem
[
SYSTEM_SQL_LOG
];
$dbInit
=
$storeSystem
[
SYSTEM_DB_INIT
];
$config
=
$this
->
getConnectionDetails
(
$dbIndex
,
$storeSystem
);
...
...
@@ -358,9 +358,7 @@ class Database {
*/
private
function
prepareExecute
(
$sql
,
array
$parameterArray
,
&
$queryType
,
array
&
$stat
,
$specificMessage
=
''
,
array
$skipErrno
=
array
())
{
// Only log a modify type statement here if sqlLogMode is (at least) modifyAll
// If sqlLogMode is modify, log the statement after it has been executed and we know if there are affected rows.
$sqlLogMode
=
$this
->
isSqlModify
(
$sql
)
?
SQL_LOG_MODE_MODIFY_ALL
:
SQL_LOG_MODE_ALL
;
$sqlLogMode
=
$this
->
isSqlModify
(
$sql
)
?
SQL_LOG_MODE_MODIFY
:
SQL_LOG_MODE_ALL
;
$errno
=
0
;
$result
=
0
;
...
...
@@ -489,18 +487,7 @@ class Database {
$this
->
store
->
setVar
(
SYSTEM_SQL_COUNT
,
$count
,
STORE_SYSTEM
);
}
// Logfile
$pageContentSqlLogMode
=
$this
->
store
->
getVar
(
SYSTEM_SQL_LOG_MODE
,
STORE_SYSTEM
);
if
(
$pageContentSqlLogMode
==
SQL_LOG_MODE_MODIFY
&&
$sqlLogMode
==
SQL_LOG_MODE_MODIFY_ALL
)
{
// sqlLogMode modify: need to log query and query result (if count > 0)
if
(
$count
>
0
)
{
$this
->
dbLog
(
SQL_LOG_MODE_MODIFY
,
$sql
,
$parameterArray
);
$this
->
dbLog
(
SQL_LOG_MODE_MODIFY
,
$msg
);
}
}
else
{
// Query result
$this
->
dbLog
(
$sqlLogMode
,
$msg
);
}
$this
->
dbLog
(
$sqlLogMode
,
$msg
);
return
$count
;
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment