]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - plugins/OpenID/User_openid.php
pkeyGet is now static and more similar to getKV
[quix0rs-gnu-social.git] / plugins / OpenID / User_openid.php
1 <?php
2 /**
3  * Table Definition for user_openid
4  */
5
6 if (!defined('STATUSNET')) {
7     exit(1);
8 }
9
10 class User_openid extends Managed_DataObject
11 {
12     ###START_AUTOCODE
13     /* the code below is auto generated do not remove the above tag */
14
15     public $__table = 'user_openid';                     // table name
16     public $canonical;                       // varchar(255)  primary_key not_null
17     public $display;                         // varchar(255)  unique_key not_null
18     public $user_id;                         // int(4)   not_null
19     public $created;                         // datetime()   not_null
20     public $modified;                        // timestamp()   not_null default_CURRENT_TIMESTAMP
21
22     /* the code above is auto generated do not remove the tag below */
23     ###END_AUTOCODE
24
25     function table()
26     {
27         $db = $this->getDatabaseConnection();
28         $dbtype = $db->phptype; // Database type is stored here. Crazy but true.
29
30         return array('canonical' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
31                      'display'   => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
32                      'user_id'   => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL,
33                      'created'   => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL,
34                      'modified'  => ($dbtype == 'mysql' || $dbtype == 'mysqli') ?
35                      DB_DATAOBJECT_MYSQLTIMESTAMP + DB_DATAOBJECT_NOTNULL :
36                      DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME
37                      );
38     }
39
40     /**
41      * List primary and unique keys in this table.
42      * Unique keys used for lookup *MUST* be listed to ensure proper caching.
43      */
44     function keys()
45     {
46         return array_keys($this->keyTypes());
47     }
48
49     function keyTypes()
50     {
51         return array('canonical' => 'K', 'display' => 'U', 'user_id' => 'U');
52     }
53
54     /**
55      * No sequence keys in this table.
56      */
57     function sequenceKey()
58     {
59         return array(false, false, false);
60     }
61
62     static function hasOpenID($user_id)
63     {
64         $oid = new User_openid();
65
66         $oid->user_id = $user_id;
67
68         $cnt = $oid->find();
69
70         return ($cnt > 0);
71     }
72 }