// admin :: Calendar controller header('Content-Type: application/json'); session_start(); require __DIR__ . "/../../vendor/autoload.php"; $EXP = new Expenses\Expenses(); if (!$EXP->user_id()) { exit(json_encode(['error' => 'please login'])); } //exit(json_encode($_GET));// test switch ($_GET['do']) { case 'list': // list all user sessions //$user_id=$_POST['user_id']; //$sessions=$edxApp->sessions([$user_id])[$user_id]; $from = date("Y-m-d", $_GET['start']); $to = date("Y-m-d", $_GET['end']); $sql = "SELECT ed_id, ed_name as title, ed_date as start FROM expenses_data WHERE ed_date>='{$from}' AND ed_date<='{$to}';"; $q = $EXP->db()->query($sql) or die("Error:sql"); $dat = []; while ($r = $q->fetch(PDO::FETCH_ASSOC)) { $dat[] = $r; } //exit(json_encode($_GET));// test exit(json_encode($dat)); //print_r($sessions); break; default: //die("Error : unknow action ".$_POST['do']); exit(json_encode($_GET)); }
<?php //Download expense data as CSV session_start(); require __DIR__ . "/../../vendor/autoload.php"; $EXP = new Expenses\Expenses(); if (!$EXP->user_id()) { header("location:../login/logout.php"); die("Error:!user_id"); } $sql = "SELECT ed_name, ed_value, ed_currency, ed_date FROM expenses_data "; $sql .= "WHERE ed_uid=" . $EXP->user_id() . " ORDER BY ed_date;"; $q = $EXP->db()->query($sql) or die("Error {$sql}"); $dat = []; while ($r = $q->fetch(PDO::FETCH_ASSOC)) { $dat[] = $r; } /* function maybeEncodeCSVField($string) { if(strpos($string, ',') !== false || strpos($string, '"') !== false || strpos($string, "\n") !== false) { $string = '"' . str_replace('"', '""', $string) . '"'; } return $string; } */ //echo "<pre>"; //print_r($dat); header("Content-type: text/csv"); header("Content-Disposition: attachment; filename=expenses.csv"); header("Pragma: no-cache"); header("Expires: 0");
<?php // Expenses visualisation // header('Content-Type: application/json'); session_start(); require __DIR__ . "/../../vendor/autoload.php"; $EXP = new Expenses\Expenses(); if (!$EXP->user_id()) { exit(json_encode(['error' => 'please log in'])); } switch ($_POST['do']) { case 'search': $WHERE = []; $WHERE[] = "ed_uid=" . $EXP->user_id(); if ($_POST['str']) { $WHERE[] = "ed_name LIKE " . $EXP->db()->quote('%' . $_POST['str'] . '%'); } if ($_POST['minmax']) { $min = $max = 0; if (preg_match("/<=?([0-9]+)/", $_POST['minmax'], $o)) { $max = $o[1] * 1; } if (preg_match("/>=?([0-9]+)/", $_POST['minmax'], $o)) { $min = $o[1] * 1; } if ($min > 0) { $WHERE[] = "ed_value >= " . $min; } if ($max > 0) { $WHERE[] = "ed_value <= " . $max; }
<?php // Expenses visualisation // header('Content-Type: application/json'); session_start(); require __DIR__ . "/../../vendor/autoload.php"; $EXP = new Expenses\Expenses(); if (!$EXP->user_id()) { exit(json_encode(['error' => 'please log in'])); } switch ($_POST['do']) { case 'today': $today = date("Y-m-d"); $sql = "SELECT * FROM expenses_data WHERE ed_uid=" . $EXP->user_id() . " AND ed_date LIKE '{$today}%' ORDER BY ed_date;"; $q = $EXP->db()->query($sql) or die; //echo $sql;exit; $dat = []; while ($r = $q->fetch(PDO::FETCH_ASSOC)) { $r['date'] = explode(" ", $r['ed_date'])[0]; $r['time'] = explode(" ", $r['ed_date'])[1]; $r['time'] = substr($r['time'], 0, 5); $dat[] = $r; } exit(json_encode($dat)); case 'savenew': //print_r($_POST);exit; $dat = []; if ($id = $EXP->parseInsert($_POST['str'])) { $dat['inserted'] = $id; } exit(json_encode($dat));