aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb
diff options
context:
space:
mode:
authorTristan Darricau <github@nicofuma.fr>2014-06-02 23:35:35 +0200
committerTristan Darricau <github@nicofuma.fr>2014-06-02 23:35:35 +0200
commitf980fed5d26e2a7d2e1c139da7e1d8be7c1523e3 (patch)
treed8cdfec9bf838cadb305b8bfca7f04492cb54b6e /phpBB/phpbb
parent3e31764007dd68ef438bad2a2437ba48707f6831 (diff)
downloadforums-f980fed5d26e2a7d2e1c139da7e1d8be7c1523e3.tar
forums-f980fed5d26e2a7d2e1c139da7e1d8be7c1523e3.tar.gz
forums-f980fed5d26e2a7d2e1c139da7e1d8be7c1523e3.tar.bz2
forums-f980fed5d26e2a7d2e1c139da7e1d8be7c1523e3.tar.xz
forums-f980fed5d26e2a7d2e1c139da7e1d8be7c1523e3.zip
[ticket/12639] Handle $conditions['keywords'] outside of the loop
PHPBB3-12639
Diffstat (limited to 'phpBB/phpbb')
-rw-r--r--phpBB/phpbb/log/log.php33
1 files changed, 17 insertions, 16 deletions
diff --git a/phpBB/phpbb/log/log.php b/phpBB/phpbb/log/log.php
index 0dce9306df..d2c946d28b 100644
--- a/phpBB/phpbb/log/log.php
+++ b/phpBB/phpbb/log/log.php
@@ -391,28 +391,29 @@ class log implements \phpbb\log\log_interface
}
$sql_where = 'WHERE log_type = ' . $log_type;
+
+ if (isset($conditions['keywords']))
+ {
+ $sql_where .= $this->generate_sql_keyword($conditions['keywords'], '', ' AND');
+
+ unset($conditions['keywords']);
+ }
+
foreach ($conditions as $field => $field_value)
{
- if ($field == 'keywords')
+ $sql_where .= ' AND ';
+
+ if (is_array($field_value) && sizeof($field_value) == 2 && !is_array($field_value[1]))
+ {
+ $sql_where .= $field . ' ' . $field_value[0] . ' ' . $field_value[1];
+ }
+ else if (is_array($field_value) && isset($field_value['IN']) && is_array($field_value['IN']))
{
- $sql_where .= $this->generate_sql_keyword($field_value, '', ' AND');
+ $sql_where .= $this->db->sql_in_set($field, $field_value['IN']);
}
else
{
- $sql_where .= ' AND ';
-
- if (is_array($field_value) && sizeof($field_value) == 2 && !is_array($field_value[1]))
- {
- $sql_where .= $field . ' ' . $field_value[0] . ' ' . $field_value[1];
- }
- else if (is_array($field_value) && isset($field_value['IN']) && is_array($field_value['IN']))
- {
- $sql_where .= $this->db->sql_in_set($field, $field_value['IN']);
- }
- else
- {
- $sql_where .= $field . ' = ' . $field_value;
- }
+ $sql_where .= $field . ' = ' . $field_value;
}
}