Subversion Repository Public Repository

Nextrek

Diff Revisions 722 vs 723 for /Android/SmartCharging/endPoints/nightly/edit_locale.php

Diff revisions: vs.
  @@ -27,6 +27,8 @@
27 27 $local = new Local();
28 28 $local_repo;
29 29
30 + $user_id;
31 +
30 32 if (array_key_exists("email", $params) && $params["email"] !== "" && !filter_var($params["email"], FILTER_VALIDATE_EMAIL)) {
31 33 $risposta = createErrorMessage(-1, "Parametro \"email\" non valido");
32 34 echo json_encode($risposta);
  @@ -38,7 +40,16 @@
38 40 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
39 41 //echo "Connesso con successo al DB";
40 42
41 - if (!array_key_exists("token", $params) || !UserRepository::checkToken($params["token"], $conn)) {
43 + if (!array_key_exists("token", $params) || $params["token"] === "") {
44 + $risposta = createErrorMessage(-1, "Parametro \"token\" non valido");
45 + //$risposta["return"] = -1;
46 + echo json_encode($risposta);
47 + die();
48 + }
49 +
50 + $user_id = UserRepository::getUserByToken($params["token"], $conn);
51 +
52 + if ($user_id == -1) {
42 53 $risposta = createErrorMessage(-1, "Token non valido");
43 54 //$risposta["return"] = -1;
44 55 echo json_encode($risposta);
  @@ -47,6 +58,15 @@
47 58
48 59 $local_repo = new LocalRepository($conn);
49 60
61 + $oldLocal = $local_repo->getFullLocalInfo($params["local_id"]);
62 +
63 + if ($oldLocal->id_utente_owner != $user_id) { //l'utente non gestisce il locale
64 + $risposta = createErrorMessage(-1, "Token non valido");
65 + //$risposta["return"] = -1;
66 + echo json_encode($risposta);
67 + die();
68 + }
69 +
50 70 $local->id = $params["local_id"];
51 71 $local->nomelocale = array_key_exists("nomelocale", $params) ? $params["nomelocale"] : null;
52 72 $local->descrizione = array_key_exists("descrizione", $params) ? $params["descrizione"] : null;