Fixes for lists

This commit is contained in:
Antonio de la Rosa 2025-12-07 15:32:24 +01:00
parent ebf029e7dd
commit d951ac852e
4 changed files with 38 additions and 2 deletions

View file

@ -110,6 +110,7 @@ class AppController extends Admin\TplController\TplController {
$_SESSION['admin_login']=$arr_user['id']; $_SESSION['admin_login']=$arr_user['id'];
$_SESSION['date_login']=date("Y-m-d H:i:s"); $_SESSION['date_login']=date("Y-m-d H:i:s");
$_SESSION['theme']=$arr_user['theme'];
if($arr_user['double_auth']) { if($arr_user['double_auth']) {
@ -287,6 +288,9 @@ class AppController extends Admin\TplController\TplController {
if(password_verify($auth_code, $arr_user['auth_token'])) { if(password_verify($auth_code, $arr_user['auth_token'])) {
unset($_SESSION['double_auth']); unset($_SESSION['double_auth']);
$_SESSION['theme']=$arr_user['theme'];
$error=0; $error=0;
} }

View file

@ -44,6 +44,12 @@ class GenerateAdminClass {
break; break;
case 'edit':
break;
} }
} }
@ -122,7 +128,7 @@ class GenerateAdminClass {
$get_order_field=trim($_GET['order_field'] ?? ''); $get_order_field=trim($_GET['order_field'] ?? '');
if(in_array($get_order_field, $this->fields_list, true) && $get_order_field!='') { if(in_array($get_order_field, array_keys($this->fields_list), true) && $get_order_field!='') {
$order_field=$get_order_field; $order_field=$get_order_field;
@ -138,12 +144,27 @@ class GenerateAdminClass {
if($search_all_text!='') { if($search_all_text!='') {
$arr_fields=[];
$arr_values=[];
//$arr_values_sql=array_fill(0, count($this->fields_list), '?');
foreach(array_keys($this->fields_list) as $field) {
$arr_fields[]='`'.$field.'` LIKE ?';
$arr_values[]=$search_all_text.'%';
}
$search_values=array_merge($arr_values, $search_values);
$sql_search_text=$sql_search_text.' AND ('.implode(' OR ', $arr_fields).')';
//$search_all_text='WHERE '; //$search_all_text='WHERE ';
} }
$this->db->select($this->table, array_keys($this->fields_list), $sql_search_text.' order by ? ? limit '.$begin_page.','.$num_elements, $search_values); $this->db->select($this->table, array_keys($this->fields_list), $sql_search_text.' order by ? ? limit '.$begin_page.','.$num_elements, $search_values);
//fwrite(STDERR, $sql_search_text.' order by ? ? limit '.$begin_page.','.$num_elements);
//file_put_contents('php://stderr', var_export($search_values, true)." ".$sql_search_text.' order by ? ? limit '.$begin_page.','.$num_elements."\n");
foreach($this->db->get_result() as $v) { foreach($this->db->get_result() as $v) {
$items[]=$v; $items[]=$v;

View file

@ -10,7 +10,7 @@ options_list={'url': '<?=$url?>/?op=get_list', 'order_fields': [
<?php <?php
foreach($fields_list as $key => $val) { foreach($fields_list as $key => $val) {
echo "'".$val."',\n"; echo "'".$key."',\n";
} }
?> ?>
'<?=_('Options')?>' '<?=_('Options')?>'

View file

@ -246,4 +246,15 @@ class Controller {
} }
public function send_error($str) {
if(!fwrite(STDERR, $str)) {
throw new Exception('Cannot write to stderr!! '.$str);
}
}
} }