User.php 1.56 KB
<?php 
/**
 * User model
 *
 */

class User extends ActiveRecord
{
    /**
     * REST behavior
     */
    public function behaviors()
    {
        return array(
            'RestModelBehavior' => array(
                'class' => 'WRestModelBehavior',
            )
        );
    }
    
    
    /**
     * Returns current model
     */
    public static function model( $className = __CLASS__ )
    {
        return parent::model($className);
    }
    
    
    /**
     * Return table name to which this model is related
     */ 
    public function tableName()
    {
        return 'users';
    }
    
    
    /**
     * Return table primary key name
     */
    public function primaryKey()
    {
        return 'id';
    }
    
    
    /**
     * Model rules
     */
    public function rules()
    {
        return array(
            array('name, login, passwd, uid, gid, maildir, smtp, imap, quota, manager, backup', 'default', 'on' => 'update'),
            array('login, passwd, maildir', 'required', 'on' => 'update'),
            array('smtp, imap, manager', 'numerical', 'on' => 'update', 'allowEmpty' => false, 'integerOnly' => true),
            array('login', 'email', 'on' => 'update'),
            array('name, login, passwd, uid, gid, maildir, smtp, imap, quota, manager', 'default', 'on' => 'insert'),
            array('login, passwd, maildir', 'required', 'on' => 'insert'),
            array('smtp, imap, manager', 'numerical', 'on' => 'insert', 'allowEmpty' => false, 'integerOnly' => true),
            array('login', 'email', 'on' => 'insert')
        );
    }
}