Issues (98)

application/mQueue/Model/UserMapper.php (1 issue)

1
<?php
2
3
namespace mQueue\Model;
4
5
use mQueue\Model\UserMapper as DefaultModelUserMapper;
6
7
abstract class UserMapper extends AbstractMapper
8
{
9
    /**
10
     * Create and save a new user
11
     *
12
     * @param array $values
13
     *
14
     * @return User
15
     */
16 3
    public static function insertUser(array $values)
17
    {
18 3
        $user = DefaultModelUserMapper::getDbTable()->createRow();
19 3
        $user->nickname = $values['nickname'];
20 3
        $user->email = $values['email'];
21 3
        $user->password = sha1($values['password']);
22 3
        $user->save();
23
24 3
        return $user;
25
    }
26
27
    /**
28
     * Finds a user by its email and password (not hashed)
29
     *
30
     * @param string $email
31
     * @param string $password
32
     *
33
     * @return null|User
34
     */
35 16
    public static function findEmailPassword($email, $password)
36
    {
37 16
        $select = self::getDbTable()->select()
38 16
            ->where('email = ?', $email)
39 16
            ->where('password = SHA1(?)', $password);
40
41 16
        $record = self::getDbTable()->fetchRow($select);
42
43 16
        return $record;
44
    }
45
46
    /**
47
     * Finds a user by its ID
48
     *
49
     * @param int $id
50
     *
51
     * @return null|User
52
     */
53 2
    public static function find($id)
54
    {
55 2
        $result = self::getDbTable()->find([$id]);
56
57 2
        return $result->current();
58
    }
59
60
    /**
61
     * Finds all users
62
     *
63
     * @return User[]
64
     */
65 3
    public static function fetchAll()
66
    {
67 3
        $resultSet = self::getDbTable()->fetchAll(null, 'LOWER(nickname)');
68
69 3
        return $resultSet;
0 ignored issues
show
Bug Best Practice introduced by
The expression return $resultSet returns the type Zend_Db_Table_Rowset_Abstract which is incompatible with the documented return type mQueue\Model\User[].
Loading history...
70
    }
71
}
72