コード例 #1
0
ファイル: User.php プロジェクト: EGreg/PHP-On-Pie
 function beforeSave($updated_fields)
 {
     parent::beforeSave($updated_fields);
     if (isset($updated_fields['username'])) {
         $app = Pie_Config::expect('pie', 'app');
         $unique = Pie_Config::get('users', 'model', $app, 'username_unique', true);
         if ($unique) {
             $criteria = array('username' => $updated_fields['username']);
             if (isset($this->id)) {
                 $criteria['id != '] = $this->id;
             }
             $row = Users_User::db()->select('COUNT(1)', Users_User::table())->where($criteria)->limit(1)->execute()->fetch();
             if ($row[0] > 0) {
                 throw new Users_Exception_UsernameExists(null, 'username');
             }
         }
     }
     return $updated_fields;
 }