-CREATE TABLE core_person_signup (
- id int(11) NOT NULL auto_increment,
- PRIMARY KEY (id)
-) ;
-
-
-ALTER TABLE core_person_signup ADD COLUMN name varchar(128) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN honor varchar(32) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN firstname varchar(128) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN lastname varchar(128) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN firstname_alt varchar(128) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN lastname_alt varchar(128) NOT NULL DEFAULT '';
-
-ALTER TABLE core_person_signup ADD COLUMN email varchar(256) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN verify_key varchar(256) NOT NULL DEFAULT '';
-ALTER TABLE core_person_signup ADD COLUMN created_dt DATETIME NOT NULL;
<?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 $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
-
+ 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));
- public $created_dt; // datetime(19) binary
+ 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 sendMail()
+ {
+
+ }
}
-
\ No newline at end of file