<?php
+
/**
* Table Definition for Person
*/
require_once 'DB/DataObject.php';
-
class Pman_Core_DataObjects_Core_person_signup extends DB_DataObject
{
###START_AUTOCODE
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 $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 $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 $created_dt; // datetime(19) binary
+// function verify($key)
+// {
+// // if key matches verify_key
+// // copy into person or other entity...
+// // and delete....
+// if ($this->get("verify_key", $key)) {
+// $p = DB_DataObject::factory('person');
+// $p->setFrom(array(
+// 'honor' => $this->honor,
+// 'name' => $this->name,
+// 'email' => $this->email,
+// 'firstname' => $this->firstname,
+// 'lastname' => $this->lastname,
+// 'firstname_alt' => $this->firstname_alt,
+// 'lastname_alt' => $this->lastname_alt));
+//
+// if ($p->insert()) {
+//
+// $temp_pwd = $p->generatePassword();
+//
+// $this->delete();
+//
+// //login
+// @session_start();
+//
+// $_SESSION['Hydra']['authUser'] = $p ? serialize($p) : false;
+//
+// //mail pwd
+// $c = DB_DataObject::factory('core_email');
+// if (!$c->get('name', 'CORE_PERSON_SIGNUP_CONGRATULATION')) {
+// $this->jerr("can not find template");
+// }
+// $ret = $c->send(array(
+// 'rcpts' => $this->email,
+// 'honor' => $this->honor . ". " . $this->lastname,
+// 'password' => $temp_pwd
+// ), true);
+//
+// if (is_object($ret)) {
+// return false;
+// }
+// return true;
+// } else {
+// return false;
+// }
+// }
+// return false;
+// }
+//
+// function convertTo($table)
+// {
+// $t = DB_DataObject::factory($table);
+// $ret = $t->get('email', $this->email);
+// if ($ret != 0) {
+// return false;
+// } else {
+// $t->setFrom(array(
+// 'honor' => $this->honor,
+// 'name' => $this->name,
+// 'email' => $this->email,
+// 'firstname' => $this->firstname,
+// 'lastname' => $this->lastname,
+// 'firstname_alt' => $this->firstname_alt,
+// 'lastname_alt' => $this->lastname_alt));
+//
+// $t->insert();
+// return true;
+// }
+// }
+ function convertTo($target = false)
+ {
+ if(!$target){
+ return false;
+ }
+
+ $roo = HTML_FlexyFramework::get()->page;
+
+ if($target->get('email', $this->email)){
+ return $target;
+ }
+
+ $target->setFrom($this->toArray());
+
+ $target->insert();
+
+ $this->person_id = $target->id;
+ // ok - deleting might not be a great idea.... - as we can not track already confirmed codes..
+
+ //$this->delete();
+
+ 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."'");
- $row = $this->get("verify_key",$key);
- if(!empty($row)){
- $p = DB_DataObject::factory('person');
- $p->honor = $row->honor;
- $p->name = $row->name;
- $p->email = $row->email;
- $p->firstname = $row->firstname;
- $p->lastname = $row->lastname;
- $p->firstname_alt = $row->firstname_alt;
- $p->lastname_alt = $row->lastname_alt;
- $temp_pwd = $p->generatePassword();
- //$temp_pwd = mt_rand(100000,999999);
- //$p->passwd = $temp_pwd;
- if($p->insert()){
-
- $this->delete();
-
- //login
- @session_start();
- $_SESSION['Hydra']['authUser'] = $p ? serialize($p) : false;
+ $content = array(
+ 'template' => $template,
+ 'person' => $this,
+ 'serverName' => $_SERVER['SERVER_NAME'],
+ 'baseURL' => $roo->baseURL
+ );
- //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;
-
- $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