fix #8131 - chinese translations
[Pman.Core] / DataObjects / Core_person_signup.php
index a813bbc..a59f67d 100644 (file)
@@ -1,9 +1,9 @@
 <?php
+
 /**
  * Table Definition for Person
  */
-require_once 'DB/DataObject.php';
-
+class_exists('DB_DataObject') ? '' : require_once 'DB/DataObject.php';
 
 class Pman_Core_DataObjects_Core_person_signup extends DB_DataObject 
 {
@@ -13,88 +13,75 @@ class Pman_Core_DataObjects_Core_person_signup extends DB_DataObject
     public $__table = 'core_person_signup';                          // table name
     public $id;                              // int(11)  not_null primary_key auto_increment
     public $email;                           // string(128)  not_null
-    
     public $name;                            // string(128)  not_null
     public $firstname;                            // string(128)  not_null
     public $lastname;                            // string(128)  not_null
     public $firstname_alt;                            // string(128)  not_null
     public $lastname_alt;                            // string(128)  not_null
-    
-    
     public $honor;                            // string(128)  not_null
     public $verify_key;                      // int(11)
     public $verified;
-    
-
     public $created_dt;                      // datetime(19)  binary
-
-    
+    public $company_name;
+    public $person_type;
     
+    public $person_id;
+    public $person_table;
     
+    public $inviter_id;
+    function convertTo($target = false)
+    {
+        if(!$target){
+            return false;
+        }
+        
+        $roo = HTML_FlexyFramework::get()->page;
+        $old = clone($this);
+        // this shold not really happen...
+        if($target->get('email', $this->email)){
+            return false;
+        }
+        
+        $target->setFrom($this->toArray());
+        
+        $target->insert();
+        
+        $this->person_id = $target->id;
+        $this->person_table = $target->tableName();
+        $this->update($old);
+        
+        if(!empty($this->inviter_id) && method_exists($target, 'createFriend')){
+            $target->createFriend($this->inviter_id);
+        }
+        
+        return $target;
+    }
     
-    function verify($key)
+    function sendVerification($template, $roo)
     {
-        // if key matches verify_key
-        // copy into person or other entity...
-        // and delete....
-        //$this->whereAdd("verify_key = '".$key."'");
-        if($this->get("verify_key",$key)){
-            // var_dump($this);
-            // exit();
-            $p = DB_DataObject::factory('person');
-            $p->honor = $this->honor;
-            $p->name = $this->name;
-            $p->email = $this->email;
-            $p->firstname = $this->firstname;
-            $p->lastname = $this->lastname;
-            $p->firstname_alt = $this->firstname_alt;
-            $p->lastname_alt = $this->lastname_alt;
-            $temp_pwd = $p->generatePassword();
-            //$temp_pwd = mt_rand(100000,999999);
-            //$p->passwd = $temp_pwd;
-            if($p->insert()){
-                
-                $this->delete();
-
-                //login
-                @session_start();
+        $content = array(
+            'template'      => $template,
+            'person'        => $this,
+            'serverName'    => $_SERVER['SERVER_NAME'],
+            'baseURL'       => $roo->baseURL
+        );
         
-                $_SESSION['Hydra']['authUser'] = $p ? serialize($p) : false;
-
-                //mail pwd
-                $htmlStr = "";
-                $htmlStr .= "Dear ".$p->honor.".".$p->lastname."<br /><br />";
-                $htmlStr .= "Congratulations on Joining HydRa.<br /><br />";
-                $htmlStr .= "If you need to access the system again please log in using the password ";
-                $htmlStr .= $temp_pwd; 
-
-                $name = "Roojs";
-                $email_sender = "no-reply@roojs.com";
-                $subject = "Congratulations";
-                $recipient_email = $p->email;
-
-                // var_dump($p->email);
-                // exit();
-                $headers  = "MIME-Version: 1.0\r\n";
-                $headers .= "Content-type: text/html; charset=utf-8\r\n";
-                $headers .= "From: {$name} ";
-                $headers .= "<";
-                $headers .= $email_sender;
-                $headers .= ">\r\n";
-
-                $body = $htmlStr;
-                if(!mail($recipient_email, $subject, $body, $headers)){
-                    error_log("Sending failed.");
-                }
-            }else{
-                error_log("db insert error");
-                return false;
-            }   
+        $sent = DB_DataObject::factory('core_email')->send($content);
+        
+        if(!is_object($sent)){
+            return true;
         }
-        return false;
         
+        return $sent;
+    }
+    
+    function getEmailFrom()
+    {
+        if (empty($this->name)) {
+            return $this->email;
+        }
+        return '"' . addslashes($this->name) . '" <' . $this->email . '>';
     }
 }
 
-    
\ No newline at end of file