DataObjects/Core_person_signup.php
[Pman.Core] / DataObjects / Core_person_signup.php
1 <?php
2 /**
3  * Table Definition for Person
4  */
5 require_once 'DB/DataObject.php';
6
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     
17     //public $name;                            // string(128)  not_null
18     public $firstname;                            // string(128)  not_null
19     public $lastname;                            // string(128)  not_null
20     //public $firstname_alt;                            // string(128)  not_null
21     //public $lastname_alt;                            // string(128)  not_null
22     
23     
24     public $honor;                            // string(128)  not_null
25     public $verify_key;                      // int(11)
26     public $verified;
27     
28
29     public $created_dt;                      // datetime(19)  binary
30
31     
32     
33     
34     
35     function verify($key)
36     {
37         // if key matches verify_key
38         // copy into person or other entity...
39         // and delete....
40         //$this->whereAdd("verify_key = '".$key."'");
41         $row = $this->get("verify_key",$key);
42         if(!empty($row)){
43             $p = DB_DataObject::factory('person');
44             $p->honor = $row->honor;
45             $p->name = $row->name;
46             $p->email = $row->email;
47             $p->firstname = $row->firstname;
48             $p->lastname = $row->lastname;
49             $p->firstname_alt = $row->firstname_alt;
50             $p->lastname_alt = $row->lastname_alt;
51             $temp_pwd = $p->generatePassword();
52             //$temp_pwd = mt_rand(100000,999999);
53             //$p->passwd = $temp_pwd;
54             if($p->insert()){
55                 
56                 $this->delete();
57
58                 //login
59                 @session_start();
60         
61                 $_SESSION['Hydra']['authUser'] = $p ? serialize($p) : false;
62
63                 //mail pwd
64                 $htmlStr = "";
65                 $htmlStr .= "Dear ".$p->honor.".".$p->lastname."<br /><br />";
66                 $htmlStr .= "Congratulations on Joining HydRa.<br /><br />";
67                 $htmlStr .= "If you need to access the system again please log in using the password ";
68                 $htmlStr .= $temp_pwd; 
69
70                 $name = "Roojs";
71                 $email_sender = "no-reply@roojs.com";
72                 $subject = "Congratulations";
73                 $recipient_email = $p->email;
74  
75                 $headers  = "MIME-Version: 1.0\r\n";
76                 $headers .= "Content-type: text/html; charset=utf-8\r\n";
77                 $headers .= "From: {$name} ";
78                 $headers .= "<";
79                 $headers .= $email_sender;
80                 $headers .= ">\r\n";
81
82                 $body = $htmlStr;
83                 if(mail($recipient_email, $subject, $body, $headers)){
84                     error_log("Sending failed.");
85                 }
86             }else{
87                 error_log("db insert error");
88                 return false;
89             }   
90         }
91         return false;
92         
93     }
94 }
95
96