コード例 #1
0
 public function invoke()
 {
     $return = "";
     if (!isset($_GET['method'])) {
         $return = '{ "error": "No se envió un método" }';
     } else {
         switch ($_GET['method']) {
             case 'register':
                 $_SESSION["user"] = UserFactory::getInstance()->register($_GET['email'], $_GET['password'], 3);
                 if (isset($_SESSION["user"]) && $_SESSION["user"]) {
                     $return = json_encode($_SESSION["user"]->getUserData());
                 } else {
                     $return = '{ "logged": false, "error": "Ya existe un usuario registrado con ese email" }';
                 }
                 break;
             case 'create':
                 $name = $_GET['name'];
                 $email = $_GET['email'];
                 $type = $_GET['type'];
                 $password = $_GET['password'];
                 $user = UserFactory::getInstance()->create($email, $name, $password, $type);
                 if (isset($user) && $user) {
                     $return = '{ "status": "ok", "message": "Se creó el usuario" }';
                 } else {
                     $return = '{ "logged": false, "error": "Ya existe un usuario registrado con ese email" }';
                 }
                 break;
             case 'login':
                 $_SESSION["user"] = UserFactory::getInstance()->login($_GET['email'], $_GET['password']);
                 if (isset($_SESSION["user"]) && $_SESSION["user"]) {
                     $return = json_encode($_SESSION["user"]->getUserData());
                 } else {
                     $return = '{ "logged": false, "error": "Error de email / password" }';
                 }
                 break;
             case 'users':
                 if (isset($_SESSION["user"]) && $_SESSION["user"]) {
                     $uq = $_SESSION["user"]->getUserQueries();
                     $rows = $uq->getUserList();
                     $result = $uq->fetch_all($rows);
                     /*$result = array();
                       while ($row = $rows->fetch_assoc()) {
                           array_push($result, $row);
                       }
                       $rows->free();*/
                     //$result = $rows->fetch_all(MYSQLI_ASSOC);
                     $return = json_encode($result);
                     //$rows->free();
                 } else {
                     $return = '{ "logged": false, "error": "Error obteniendo los usuarios" }';
                 }
                 break;
             case 'user':
                 if (isset($_SESSION["user"]) && $_SESSION["user"] && isset($_GET["id"])) {
                     $rows = $_SESSION["user"]->getUserQueries()->getUserById($_GET["id"]);
                     /*$result = array();
                       while ($row = $rows->fetch_assoc()) {
                           array_push($result, $row);
                       }
                       $rows->free();
                       $return = json_encode($result);*/
                     $result = $rows->fetch_object(MYSQLI_ASSOC);
                     $return = json_encode($result);
                     $rows->free();
                 } else {
                     $return = '{ "logged": false, "error": "Error obteniendo el usuario" }';
                 }
                 break;
             case 'update':
                 if (isset($_SESSION["user"]) && $_SESSION["user"] && isset($_GET["id"])) {
                     $email = $_GET["email"];
                     $id = $_GET["id"];
                     $name = $_GET["name"];
                     $password = $_GET["password"];
                     $active = $_GET["active"];
                     $type = $_GET["type"];
                     $rows = $_SESSION["user"]->getUserQueries()->updateUser($email, $id, $name, $password, $active, $type);
                     $return = json_encode($rows);
                 } else {
                     $return = '{ "logged": false, "error": "Error actualizando el usuario" }';
                 }
                 break;
             case 'toggle':
                 if (isset($_SESSION["user"]) && $_SESSION["user"] && isset($_GET["id"])) {
                     $id = $_GET["id"];
                     $active = $_GET["active"];
                     $rows = $_SESSION["user"]->getUserQueries()->toggleUser($id, $active);
                     $return = json_encode($rows);
                 } else {
                     $return = '{ "logged": false, "error": "Error actualizando el usuario" }';
                 }
                 break;
             case 'check':
                 if (isset($_SESSION["user"]) && $_SESSION["user"]) {
                     $return = json_encode($_SESSION["user"]->getUserData());
                 } else {
                     $return = '{ "logged": false, "error": "No se ha iniciado sesión" }';
                 }
                 break;
             case 'logout':
                 session_destroy();
                 $return = '{ "logged": false, "message": "Sesión cerrada" }';
                 break;
         }
     }
     echo $return;
 }
コード例 #2
0
ファイル: UserAPI.php プロジェクト: CookieQuartet/eventosmdp
<?php

include_once 'User.php';
include_once 'userAdmin/UserAdmin.php';
include_once 'userGeneral/UserGeneral.php';
include_once 'userPublisher/UserPublisher.php';
include_once 'userType/UserTypeEnum.php';
include_once 'UserFactory.php';
session_start();
include_once './UserController.php';
if (!isset($_SESSION["userFactory"])) {
    $_SESSION["userFactory"] = UserFactory::getInstance();
}
$controller = new UserController($_SESSION["userFactory"]);
$controller->invoke();
コード例 #3
0
ファイル: basicmvc.php プロジェクト: hemantshekhawat/Snippets
        return self::$instance;
    }
    // End Singleton Methods
    public function getUserByID($id)
    {
        $db = DB::getInstance();
        $result = $db->query("SELECT ID, Name, Email, Access FROM User WHERE ID = ?", array($id));
        if (empty($result) || count($result) != 1) {
            return FALSE;
        }
        // Idiot Check - We should only have 1 user for that ID
        $user = new User();
        $result = $result[0];
        foreach ($result as $key => $value) {
            $user->{$key} = $value;
        }
        return $user;
    }
}
Config::$dbuser = '******';
Config::$dbpass = '******';
Config::$dbhost = 'localhost';
Config::$dbname = 'test';
// now pretend this is in a controller
$userfactory = UserFactory::getInstance();
$user = $userfactory->getUserByID(1);
if ($user->isAdmin()) {
    echo "Woot! you're an admin!";
} else {
    echo "You're a pleb";
}