7 private function delete_table_action(): string {
8 return
'<a class="btn btn-sm btn-outline-danger dbxAjax dbxConfirm"'
9 .
' href="?dbx_modul=dbxAdmin&dbx_run1=session&dbx_run2=list_session&dbx_do=delete_tab"'
10 .
' title="Session-Tabelle leeren"'
11 .
' data-confirm-title="<i class=\'bi bi-trash3\'></i> Session-Tabelle leeren"'
12 .
' data-confirm="Alle gespeicherten Sessions wirklich loeschen?"'
13 .
' data-confirm-hint="<small>Die Tabelle dbxSession wird komplett geleert. Dieser Vorgang kann nicht rueckgaengig gemacht werden.</small>"'
14 .
' data-confirm-buttons="yesno"'
15 .
' role="button"><i class="bi bi-trash3"></i></a>';
18 private function report_sessions() {
19 $oDB = dbx()->get_system_obj(
'dbxDB');
20 $form =
'report-sessions';
22 $rid = dbx()->get_modul_var(
'rid' ,0 ,
'int');
23 $work = dbx()->get_modul_var(
'dbx_do' ,
'',
'parameter');
24 dbx()->debug(
"####Work=($work) RID=($rid)####");
28 $oReport = dbx()->get_system_obj(
'dbxReport');
29 $oReport->init($form);
31 $oReport->add_rep(
'bar_title',
'Sessions');
32 $oReport->add_rep(
'bar_subtitle',
'Aktive und gespeicherte Sitzungen');
33 $oReport->add_rep(
'report_shell_class',
'dbx-admin-dashboard-panel dbx-admin-dashboard-session-report');
34 $oReport->add_rep(
'bar_actions', $this->delete_table_action());
35 $oReport->_msg_info =
'';
36 $oReport->_msg_success =
'';
37 $oReport->_msg_error =
'';
39 if ($work ==
'row_delete' && $rid) {
40 $ok=$oReport->del_selected($rid);
41 $ok=$oDB->delete(
'dbxSession',$rid);
42 dbx()->debug(
"##delete session id=($rid) ok=($ok)");
43 if ( $ok) $oReport->_msg_success =
'Zeile geloescht';
44 if (!$ok) $oReport->_msg_error =
'Zeile konnte nicht geloescht werden';
47 if ($work ==
'multi_delete') {
48 $result = $oReport->delete_multi_selected_records($dd);
49 $oReport->apply_multi_delete_result(
$result);
52 if ($work ==
'delete_tab') {
53 $ok=$oDB->delete_tab($dd);
54 dbx()->debug(
"##delete tab dd=($dd) ok=($ok)");
55 if ( $ok) $oReport->_msg_success =
'Datenbank-Tabelle geleert';
56 if (!$ok) $oReport->_msg_err =
'Datenbank-Tabelle konnte nicht geleert werden';
62 $flds[
'update_date'] =
'Zugriff';
63 $flds[
'userid'] =
'User';
65 $flds[
'design'] =
'Design';
66 $flds[
'page'] =
'Page';
67 $flds[
'modul'] =
'Modul';
68 $flds[
'run1'] =
'Run1';
69 $flds[
'run2'] =
'Run2';
70 $flds[
'edit'] =
'Edit';
71 $flds[
'color'] =
'Color';
72 $flds[
'language'] =
'Lng';
73 $flds[
'request_counter'] =
'Request';
75 $oReport->_data = $data;
77 $oReport->_action =
'?dbx_modul=dbxAdmin&dbx_run1=session&dbx_run2=list_session';
78 $oReport->_pages =
true;
79 $oReport->_create_row_select=
true;
80 $oReport->_create_row_edit =
false;
81 $oReport->_create_row_delete=
true;
82 $oReport->_create_sel_flds =
true;
83 $oReport->_but_pagination = 7;
85 $oReport->enable_delete_tab($dd);
87 $oReport->add_action(
'rows_delete' ,
'action_button_delete' ,
'&dbx_do=multi_delete');
89 $oReport->create_selection_fields(
'dbxAdmin|rpt-sessions-selection');
91 if ($work !=
'delete_tab' && $work !=
'multi_delete' && $work !=
'row_delete' && $oReport->submit()) {
92 dbx()->debug(
"###MODUL Report-submit ### POST=", $_POST ,$_GET);
93 if(!$oReport->errors()) {
94 $oReport->_msg_success =
'';
96 $oReport->_msg_error =
'Prüfen sie bitte ihre Eingaben';
101 $rwhere=$oReport->get_fld_val(
'dbx_rwhere' ,
'' ,
'sqlsearch|max=32');
102 $rsort =$oReport->get_fld_val(
'dbx_rsort' ,
'update_date' ,
'parameter');
103 $rdesc =$oReport->get_fld_val(
'dbx_rdesc' ,
'DESC',
'parameter');
104 $select=$oReport->get_fld_val(
'dbx_rselect', 0 ,
'int');
105 $rgroup=$oReport->get_fld_val(
'dbx_rgroup' ,
'' ,
'parameter');
106 $rrows =$oReport->get_fld_val(
'dbx_rrows' ,10 ,
'int');
107 $rpos =$oReport->get_fld_val(
'dbx_rpos' , 0 ,
'int');
113 'like' => array(
'modul',
'run1',
'run2'),
114 'equal' => array(
'userid'),
115 'mode' =>
'starts_with',
120 if (is_array($rwhere)) {
121 $rwhere = $oDB->normalize_where($dd, $rwhere);
123 $rwhere=$oReport->add_rwhere_select($rwhere);
126 $oReport->_rflds = $flds;
127 $oReport->_rrows = $rrows;
128 $oReport->_rpos = $rpos;
129 $oReport->_count_all = $oDB->count($dd);
130 $oReport->_rcount=$oDB->count($dd,$rwhere);
131 $oReport->_rdata =$oDB->select($dd,$rwhere,$flds,$rsort,$rdesc,$rgroup,$rrows,$rpos);
136 $content=$oReport->run($flds,
'table');
143 public function run() {
144 $run=dbx()->get_modul_var(
'dbx_run2',
'list_session',
'parameter');
145 $content=
'undefined run';
150 $content=$this->report_sessions();
if(! $db->connect_db_server($server)) $result