DataObjects/Core_person_signup.php
[Pman.Core] / DataObjects / Core_person_signup.php
1 <?php
2
3 /**
4  * Table Definition for Person
5  */
6 require_once 'DB/DataObject.php';
7
8 class Pman_Core_DataObjects_Core_person_signup extends DB_DataObject 
9 {
10     ###START_AUTOCODE
11     /* the code below is auto generated do not remove the above tag */
12
13     public $__table = 'core_person_signup';                          // table name
14     public $id;                              // int(11)  not_null primary_key auto_increment
15     public $email;                           // string(128)  not_null
16     public $name;                            // string(128)  not_null
17     public $firstname;                            // string(128)  not_null
18     public $lastname;                            // string(128)  not_null
19     public $firstname_alt;                            // string(128)  not_null
20     public $lastname_alt;                            // string(128)  not_null
21     public $honor;                            // string(128)  not_null
22     public $verify_key;                      // int(11)
23     public $verified;
24     public $created_dt;                      // datetime(19)  binary
25     public $company_name;
26     public $person_type;
27     
28     public $person_id;
29     public $person_table;
30     
31     public $inviter_id;
32  
33     function convertTo($target = false)
34     {
35         if(!$target){
36             return false;
37         }
38         
39         $roo = HTML_FlexyFramework::get()->page;
40         $old = clone($this);
41         // this shold not really happen...
42         if($target->get('email', $this->email)){
43             
44             $this->person_id = $target->id;
45             $this->person_table = $target->tableName();
46             $this->update($old);
47             
48             return $target;
49         }
50         
51         $target->setFrom($this->toArray());
52         
53         $target->insert();
54         
55         $this->person_id = $target->id;
56         $this->person_table = $target->tableName();
57         $this->update($old);
58         
59         if(!empty($this->invite_id) && !empty($this->invite_table)){
60             $friend = DB_DataObject::factory($this->invite_table);
61             $friend->setFrom(array(
62                 'person_id' => $this->invite_id,
63                 'friend_id' => $target->id
64             ));
65             
66             $friend->insert();
67         }
68         
69         return $target;
70     }
71     
72     function sendVerification($template, $roo)
73     {
74         
75         $content = array(
76             'template'      => $template,
77             'person'        => $this,
78             'serverName'    => $_SERVER['SERVER_NAME'],
79             'baseURL'       => $roo->baseURL
80         );
81
82         $sent = DB_DataObject::factory('core_email')->send($content);
83         
84         if(!is_object($sent)){
85             return true;
86         }
87         
88         return $sent;
89     }
90     
91     function getEmailFrom()
92     {
93         if (empty($this->name)) {
94             return $this->email;
95         }
96         return '"' . addslashes($this->name) . '" <' . $this->email . '>';
97     }
98 }
99