function __construct($args = array(), $isSimpleInstance = false) { $this->setWithTable(self::TABLE); // user data $this->addAttribute('name', Datatypes::TEXT); $this->addAttribute('email', Datatypes::TEXT); // auth $this->addAttribute('username', Datatypes::TEXT); $this->addAttribute('password', Datatypes::TEXT); // associations $this->addHasMany('following', 'TUser', PersistentObject::HASMANY_SET); // users I follow, is a set // constraints $this->addConstraints('name', array(Constraint::minLength(1), Constraint::maxLength(255), Constraint::nullable(false), Constraint::blank(false))); $this->addConstraints('username', array(Constraint::blank(false))); $this->addConstraints('password', array(Constraint::minLength(4))); $this->addConstraints('email', array(Constraint::email())); parent::__construct($args, $isSimpleInstance); }