示例#1
0
 public function addDebt($user1, $user2, $amount, $description)
 {
     $userStore = new UserStore($this->db);
     $idUser1 = $userStore->getIDFromName($user1);
     $idUser2 = $userStore->getIDFromName($user2);
     $this->dbQuery("INSERT INTO `tareas`.`debt` (`idDebt`, `idUser1`, `idUser2`, `amount`, `description`) VALUES (NULL, '" . $idUser1 . "', '" . $idUser2 . "', '" . $amount . "', '" . $description . "')");
     return $this->getInsertID();
 }
示例#2
0
<?php

$app;
include_once "../UserStore.class.php";
include_once "../app.class.php";
include "../utils.php";
$app = getAPP();
$db = $app->getDB();
$store = new UserStore($db);
$user = $store->checkUser($_POST['name'], $_POST['pass']);
if ($user != null) {
    $app->setUser($user);
    header("Location: main.php");
} else {
    echo "<h1>ERROR: el usuario es incorrecto</h1>";
}
示例#3
0
<?php

require_once "listing21.01.php";
class Validator
{
    private $store;
    public function __construct(UserStore $store)
    {
        $this->store = $store;
    }
    public function validateUser($mail, $pass)
    {
        if (!is_array($user = $this->store->getUser($mail))) {
            return false;
        }
        if ($user['pass'] == $pass) {
            return true;
        }
        $this->store->notifyPasswordFailure($mail);
        return false;
    }
}
$store = new UserStore();
$store->addUser("bob williams", "*****@*****.**", "12345");
$validator = new Validator($store);
if ($validator->validateUser("*****@*****.**", "12345")) {
    print "pass, friend!\n";
}
示例#4
0
 public function setUp()
 {
     $store = new UserStore();
     $store->addUser("bob williams", "*****@*****.**", "12345");
     $this->validator = new Validator($store);
 }
示例#5
0
 public static function loginExists($username, $password, $id)
 {
     $store = new UserStore();
     return $store->usernamePasswordIdExists($username, $password, $id);
 }
示例#6
0
 public function modifyTask($user, $week, $task)
 {
     $userStore = new UserStore($this->db);
     $id = $userStore->getIDFromName($user);
     $this->dbQuery("UPDATE task SET `IdUser` = '" . $id . "' WHERE week='" . $week . "' AND name='" . $task . "'");
 }
示例#7
0
class UserStore
{
    private $users = array();
    function addUser($name, $mail, $pass)
    {
        if (isset($this->users[$mail])) {
            throw new Exception("User {$mail} already in the system");
        }
        if (strlen($pass) < 5) {
            throw new Exception("Password must have 5 or more letters");
        }
        $this->users[$mail] = array('pass' => $pass, 'mail' => $mail, 'name' => $name);
        return true;
    }
    function notifyPasswordFailure($mail)
    {
        if (isset($this->users[$mail])) {
            $this->users[$mail]['failed'] = time();
        }
    }
    function getUser($mail)
    {
        return $this->users[$mail];
    }
}
$store = new UserStore();
$store->addUser("bob williams", "*****@*****.**", "12345");
$store->notifyPasswordFailure("*****@*****.**");
$user = $store->getUser("*****@*****.**");
print_r($user);
示例#8
0
文件: main.php 项目: nacho/tareas
function fillTotalDebts($db, $globalUser)
{
    $userStore = new UserStore($db);
    $debtStore = new DebtStore($db);
    $users = $userStore->getUsers();
    foreach ($users as $user) {
        $debts = $debtStore->getTotalDebtsForUser($user);
        foreach ($debts as $debt) {
            $user1 = $debt->getUser1();
            $user2 = $debt->getUser2();
            echo "<div id='debt' class='debt'>";
            echo "<ul class='menu'>";
            echo "<li>" . $user1->getName() . " ---> " . $user2->getName() . " : " . $debt->getAmount() . "</li>";
            echo "</ul>";
            echo "</div>";
        }
    }
}