Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- use Orm\Model;
- class Model_Domain extends \Orm\Model
- {
- protected static $_properties = array(
- 'id',
- 'domain',
- 'created_at',
- 'updated_at',
- );
- protected static $_many_many = array(
- 'users' => array(
- 'key_from' => 'id',
- 'key_through_from' => 'domain_id',
- 'table_through' => 'domains_users',
- 'key_through_to' => 'user_id',
- 'model_to' => 'Model_User',
- 'key_to' => 'id',
- 'cascade_save' => true,
- 'cascade_delete' => false,
- )
- );
- protected static $_has_many = array(
- 'forwards' => array(
- 'key_from' => 'id',
- 'model_to' => 'Model_Forward',
- 'key_to' => 'domain_id',
- 'cascade_save' => true,
- 'cascade_delete' => false
- )
- );
- protected static $_observers = array(
- 'Orm\Observer_CreatedAt' => array(
- 'events' => array('before_insert'),
- 'mysql_timestamp' => false,
- ),
- 'Orm\Observer_UpdatedAt' => array(
- 'events' => array('before_save'),
- 'mysql_timestamp' => false,
- ),
- );
- public static function validate($factory)
- {
- $val = Validation::forge($factory);
- $val->add_field('domain', 'Domain', 'required|max_length[255]');
- return $val;
- }
- }
- <?php
- use Orm\Model;
- class Model_User extends \Orm\Model
- {
- //protected static $_many_many = array('domains');
- protected static $_many_many = array(
- 'domains' => array(
- 'key_from' => 'id',
- 'key_through_from' => 'domain_id',
- 'table_through' => 'domains_users',
- 'key_through_to' => 'user_id',
- 'model_to' => 'Model_Domain',
- 'key_to' => 'id',
- 'cascade_save' => true,
- 'cascade_delete' => false,
- )
- );
- protected static $_properties = array(
- 'id',
- 'username',
- 'password',
- 'group',
- 'email',
- 'last_login',
- 'login_hash',
- 'created_at',
- 'updated_at',
- );
- protected static $_observers = array(
- 'Orm\Observer_CreatedAt' => array(
- 'events' => array('before_insert'),
- 'mysql_timestamp' => false,
- ),
- 'Orm\Observer_UpdatedAt' => array(
- 'events' => array('before_save'),
- 'mysql_timestamp' => false,
- ),
- );
- public static function validate($factory)
- {
- $val = Validation::forge($factory);
- $val->add_field('username', 'Username', 'required|max_length[50]');
- $val->add_field('password', 'Password', 'required|max_length[255]');
- $val->add_field('group', 'Group', 'required|valid_string[numeric]');
- $val->add_field('email', 'Email', 'required|valid_email|max_length[255]');
- $val->add_field('last_login', 'Last Login', 'required|max_length[25]');
- $val->add_field('login_hash', 'Login Hash', 'required|max_length[255]');
- return $val;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement