mirror of
https://github.com/e107inc/e107.git
synced 2025-08-05 22:27:34 +02:00
Fixes #851 - Admin-UI - when the listQry doesn't contain backticks around table names.
This commit is contained in:
@@ -3411,6 +3411,7 @@ class e_admin_controller_ui extends e_admin_controller
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// check for table & field aliases
|
||||
$fields = array(); // preserve order
|
||||
foreach ($this->fields as $field => $att)
|
||||
@@ -3544,6 +3545,23 @@ class e_admin_controller_ui extends e_admin_controller
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Quick fix for bad custom $listQry;
|
||||
*/
|
||||
protected function parseCustomListQry($qry)
|
||||
{
|
||||
if(strpos($qry,'`')===false)
|
||||
{
|
||||
$ret = preg_replace("/FROM\s*(#[\w]*/","FROM `$1`", $qry); // backticks missing, so add them.
|
||||
e107::getMessage()->addDebug('Your $listQry is missing `backticks` around the table name!');
|
||||
return $ret;
|
||||
}
|
||||
|
||||
return $qry;
|
||||
|
||||
}
|
||||
|
||||
|
||||
// TODO - abstract, array return type, move to parent?
|
||||
protected function _modifyListQry($raw = false, $isfilter = false, $forceFrom = false, $forceTo = false, $listQry = '')
|
||||
{
|
||||
@@ -3741,7 +3759,7 @@ class e_admin_controller_ui extends e_admin_controller
|
||||
}
|
||||
else
|
||||
{
|
||||
$qry = $listQry ? $listQry : "SELECT SQL_CALC_FOUND_ROWS ".$tableSFields." FROM ".$tableFrom;
|
||||
$qry = $this->parseCustomListQry($listQry) ? $listQry : "SELECT SQL_CALC_FOUND_ROWS ".$tableSFields." FROM ".$tableFrom;
|
||||
}
|
||||
|
||||
// group field - currently auto-added only if there are joins
|
||||
@@ -3843,7 +3861,12 @@ class e_admin_controller_ui extends e_admin_controller
|
||||
}
|
||||
|
||||
// Debug Filter Query.
|
||||
if($listQry)
|
||||
{
|
||||
e107::getMessage()->addDebug('Using Custom listQry ');
|
||||
}
|
||||
e107::getMessage()->addDebug('QRY='.str_replace('#', MPREFIX, $qry));
|
||||
|
||||
// echo $qry.'<br />';
|
||||
// print_a($this->fields);
|
||||
// print_a($_GET);
|
||||
|
@@ -86,7 +86,13 @@ class plugin_gallery_admin extends e_admin_dispatcher
|
||||
*/
|
||||
protected $menuTitle = 'Gallery';
|
||||
|
||||
|
||||
function init()
|
||||
{
|
||||
if(E107_DEBUG_LEVEL > 0)
|
||||
{
|
||||
$this->adminMenu['main/list'] = array('caption'=> LAN_CATEGORY, 'perm' => 'P');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -100,6 +106,7 @@ class gallery_cat_admin_ui extends e_admin_ui
|
||||
protected $listOrder = 'media_cat_order';
|
||||
|
||||
protected $listQry = "SELECT * FROM #core_media_cat WHERE media_cat_owner = 'gallery' "; // without any Order or Limit.
|
||||
// protected $listQry = "SELECT * FROM #core_media "; // without any Order or Limit.
|
||||
// protected $editQry = "SELECT * FROM #faq_info WHERE faq_info_id = {ID}";
|
||||
|
||||
protected $fields = array(
|
||||
|
Reference in New Issue
Block a user