From bee707be8aa6575fa1180097395b429289f3392d Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Thu, 29 Jun 2017 04:02:15 -0600 Subject: [PATCH] Tweak mobile APIs --- apps/sync_mobile.php | 2 +- database.mwb | Bin 18524 -> 18554 bytes mobile/index.php | 22 ++++++++++++++++++++++ settings.template.php | 8 ++++---- 4 files changed, 27 insertions(+), 5 deletions(-) diff --git a/apps/sync_mobile.php b/apps/sync_mobile.php index 0c24ed0..8bea14a 100644 --- a/apps/sync_mobile.php +++ b/apps/sync_mobile.php @@ -31,7 +31,7 @@ if ($_GET['mobilecode'] == "generate") { $code = strtoupper(substr(md5(mt_rand() . uniqid("", true)), 0, 20)); $database->insert('mobile_codes', ['uid' => $_SESSION['uid'], 'code' => $code]); } - $url = str_replace("/", "\\", URL); + $url = str_replace("/", "\\", URL . "mobile/index.php"); $codeuri = "bizsync://" . $url . "/" . $_SESSION['username'] . "/" . $code; $qrCode = new QrCode($codeuri); $qrCode->setSize(200); diff --git a/database.mwb b/database.mwb index 8ad217a878ad412be6727463d447964c6c11af39..f61f63af3112693eb1b5a90feb5f7bda9a65d394 100644 GIT binary patch delta 6564 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 "ERROR", "msg" => lang("login incorrect", false)])); } } + case "user_info": + engageRateLimit(); + if (get_account_status($VARS['username']) != "NORMAL") { + insertAuthLog(20, null, "Username: " . $VARS['username'] . ", Key: " . $VARS['key']); + exit(json_encode(["status" => "ERROR", "msg" => lang("login failed try on web", false)])); + } + if (authenticate_user($VARS['username'], $VARS['password'], $autherror)) { + $userinfo = $database->get("accounts", ["uid", "username", "realname", "email"], ["username" => $VARS['username']]); + insertAuthLog(19, $userinfo['uid'], "Key: " . $VARS['key']); + exit(json_encode(["status" => "OK", "info" => $userinfo])); + } else { + if (!is_empty($autherror)) { + insertAuthLog(20, null, "Username: " . $VARS['username'] . ", Key: " . $VARS['key']); + exit(json_encode(["status" => "ERROR", "msg" => $autherror])); + } else { + insertAuthLog(20, null, "Username: " . $VARS['username'] . ", Key: " . $VARS['key']); + exit(json_encode(["status" => "ERROR", "msg" => lang("login incorrect", false)])); + } + } case "start_session": // Do a web login. engageRateLimit(); @@ -72,6 +92,8 @@ switch ($VARS['action']) { } } exit(json_encode(["status" => "ERROR", "msg" => lang("login incorrect", false)])); + case "listapps": + exit(json_encode(["status" => "OK", "apps" => EXTERNAL_APPS])); default: http_response_code(404); die(json_encode(["status" => "ERROR", "msg" => "The requested action is not available."])); diff --git a/settings.template.php b/settings.template.php index dbfd76c..8dbf67d 100644 --- a/settings.template.php +++ b/settings.template.php @@ -73,25 +73,25 @@ define('LANGUAGE', "en_us"); define('EXTERNAL_APPS', [ "portal" => [ "url" => "http://localhost/portal", - "mobileapi" => "/mobile", + "mobileapi" => "/mobile/index.php", "icon" => "/static/img/logo.svg", "title" => SITE_TITLE ], "taskfloor" => [ "url" => "http://localhost/taskfloor", - "mobileapi" => "/mobile", + "mobileapi" => "/mobile/index.php", "icon" => "/static/img/logo.svg", "title" => "TaskFloor" ], "qwikclock" => [ "url" => "http://localhost/qwikclock", - "mobileapi" => "/mobile", + "mobileapi" => "/mobile/index.php", "icon" => "/static/img/logo.svg", "title" => "QwikClock" ], "inventory" => [ "url" => "http://localhost/inventory", - "mobileapi" => "/mobile", + "mobileapi" => "/mobile/index.php", "icon" => "/static/img/logo.svg", "title" => "Inventory" ]