function response($message, $error = 0, $log = 1) { global $db, $systemname, $systemURL; if ($log == 1 and $message) { if (isset($_COOKIE["loguserid"])) { $userid = $db->conn->real_escape_string(trim($_COOKIE["loguserid"])); } else { $userid = 0; } $number = getphonenumber($userid); logresult($number, $message); } $db->conn->commit(); echo '<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title>', $systemname, '</title>'; echo '<base href="', $systemURL, '" />'; echo '<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" />'; echo '<link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css" />'; if (file_exists("analytics.php")) { require "analytics.php"; } echo '</head><body><div class="container">'; if ($error) { echo '<div class="alert alert-danger" role="alert">', $message, '</div>'; } else { echo '<div class="alert alert-success" role="alert">', $message, '</div>'; } echo '</div></body></html>'; exit; }
function revert($number, $bikeNum) { global $db; $userId = getUser($number); $result = $db->query("SELECT currentUser FROM bikes WHERE bikeNum={$bikeNum} AND currentUser<>'NULL'"); if (!$result->num_rows) { sendSMS($number, _('Bike') . " " . $bikeNum . " " . _('is not rented right now. Revert not successful!')); return; } else { $row = $result->fetch_assoc(); $revertusernumber = getphonenumber($row["currentUser"]); } $result = $db->query("SELECT parameter,standName FROM stands LEFT JOIN history ON stands.standId=parameter WHERE bikeNum={$bikeNum} AND action IN ('RETURN','FORCERETURN') ORDER BY time DESC LIMIT 1"); if ($result->num_rows == 1) { $row = $result->fetch_assoc(); $standId = $row["parameter"]; $stand = $row["standName"]; } $result = $db->query("SELECT parameter FROM history WHERE bikeNum={$bikeNum} AND action IN ('RENT','FORCERENT') ORDER BY time DESC LIMIT 1,1"); if ($result->num_rows == 1) { $row = $result->fetch_assoc(); $code = $row["parameter"]; } if ($standId and $code) { $result = $db->query("UPDATE bikes SET currentUser=NULL,currentStand={$standId},currentCode={$code} WHERE bikeNum={$bikeNum}"); $result = $db->query("INSERT INTO history SET userId={$userId},bikeNum={$bikeNum},action='REVERT',parameter='{$standId}|{$code}'"); $result = $db->query("INSERT INTO history SET userId=0,bikeNum={$bikeNum},action='RENT',parameter={$code}"); $result = $db->query("INSERT INTO history SET userId=0,bikeNum={$bikeNum},action='RETURN',parameter={$standId}"); sendSMS($number, _('Bike') . " " . $bikeNum . " " . _('reverted to stand') . " " . $stand . " " . _('with code') . " " . $code . "."); sendSMS($revertusernumber, _('Bike') . " " . $bikeNum . " " . _('has been returned. You can now rent a new bicycle.')); } else { sendSMS($number, _('No last code for bicycle') . " " . $bikeNum . " " . _('found. Revert not successful!')); } }
function revert($userId, $bikeNum) { global $db; $standId = 0; $result = $db->query("SELECT currentUser FROM bikes WHERE bikeNum={$bikeNum} AND currentUser IS NOT NULL"); if (!$result->num_rows) { response(_('Bicycle') . " " . $bikeNum . " " . _('is not rented right now. Revert not successful!'), ERROR); return; } else { $row = $result->fetch_assoc(); $revertusernumber = getphonenumber($row["currentUser"]); } $result = $db->query("SELECT parameter,standName FROM stands LEFT JOIN history ON stands.standId=parameter WHERE bikeNum={$bikeNum} AND action IN ('RETURN','FORCERETURN') ORDER BY time DESC LIMIT 1"); if ($result->num_rows == 1) { $row = $result->fetch_assoc(); $standId = $row["parameter"]; $stand = $row["standName"]; } $result = $db->query("SELECT parameter FROM history WHERE bikeNum={$bikeNum} AND action IN ('RENT','FORCERENT') ORDER BY time DESC LIMIT 1,1"); if ($result->num_rows == 1) { $row = $result->fetch_assoc(); $code = str_pad($row["parameter"], 4, "0", STR_PAD_LEFT); } if ($standId and $code) { $result = $db->query("UPDATE bikes SET currentUser=NULL,currentStand={$standId},currentCode={$code} WHERE bikeNum={$bikeNum}"); $result = $db->query("INSERT INTO history SET userId={$userId},bikeNum={$bikeNum},action='REVERT',parameter='{$standId}|{$code}'"); $result = $db->query("INSERT INTO history SET userId=0,bikeNum={$bikeNum},action='RENT',parameter={$code}"); $result = $db->query("INSERT INTO history SET userId=0,bikeNum={$bikeNum},action='RETURN',parameter={$standId}"); response('<h3>' . _('Bicycle') . ' ' . $bikeNum . ' ' . _('reverted to') . ' <span class="label label-primary">' . $stand . '</span> ' . _('with code') . ' <span class="label label-primary">' . $code . '</span>.</h3>'); sendSMS($revertusernumber, _('Bike') . " " . $bikeNum . " " . _('has been returned. You can now rent a new bicycle.')); } else { response(_('No last stand or code for bicycle') . " " . $bikeNum . " " . _('found. Revert not successful!'), ERROR); } }
function logrequest($userid) { global $dbserver, $dbuser, $dbpassword, $dbname; $localdb = new Database($dbserver, $dbuser, $dbpassword, $dbname); $localdb->connect(); $localdb->conn->autocommit(TRUE); $number = getphonenumber($userid); $result = $localdb->query("INSERT INTO received SET sender='{$number}',receive_time='" . date("Y-m-d H:i:s") . "',sms_text='" . $_SERVER['REQUEST_URI'] . "',ip='" . $_SERVER['REMOTE_ADDR'] . "'"); }
function logrequest($userid) { R::selectDatabase('localdb'); R::begin(); $received = R::dispense('received'); $received->sender = getphonenumber($userid); $received->receivetime = date("Y-m-d H:i:s"); $received->smstext = $_SERVER['REQUEST_URI']; $received->ip = $_SERVER['REMOTE_ADDR']; R::store($received); R::commit(); R::selectDatabase('default'); }