From 3053541e3b3aba4cff756c2d8fbd1919c13f3a60 Mon Sep 17 00:00:00 2001 From: Yuan Chiu Date: Sat, 25 Oct 2014 00:23:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E4=BD=BF=E7=94=A8=E8=80=85?= =?UTF-8?q?=E5=B8=B3=E8=99=9F=E7=AE=A1=E7=90=86=20=E5=8F=96=E5=BE=97?= =?UTF-8?q?=E7=BE=A4=E7=B5=84=E5=90=8D=E7=A8=B1=E3=80=81=E7=8F=AD=E7=B4=9A?= =?UTF-8?q?=E5=90=8D=E7=A8=B1=E6=94=B9=E7=94=B1=E4=B8=80=E9=96=8B=E5=A7=8B?= =?UTF-8?q?=E6=93=B7=E5=8F=96=E8=B3=87=E6=96=99=E6=99=82=E4=B8=80=E4=BD=B5?= =?UTF-8?q?=E6=93=B7=E5=8F=96=EF=BC=8C=E4=B8=8D=E5=86=8D=E9=80=8F=E9=81=8E?= =?UTF-8?q?=E7=BE=A4=E7=B5=84=E7=89=A9=E4=BB=B6=E5=8F=A6=E5=A4=96=E6=93=B7?= =?UTF-8?q?=E5=8F=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htdocs/lib/Database/DBUser.php | 16 +++++++-- htdocs/lib/User/User.php | 62 ++++++++++++++-------------------- htdocs/lib/User/UserAdmin.php | 4 +-- 3 files changed, 42 insertions(+), 40 deletions(-) diff --git a/htdocs/lib/Database/DBUser.php b/htdocs/lib/Database/DBUser.php index 797c53c..08cb5c3 100644 --- a/htdocs/lib/Database/DBUser.php +++ b/htdocs/lib/Database/DBUser.php @@ -170,8 +170,18 @@ class DBUser extends Database { * @return array 查詢結果陣列 */ protected function queryUserByWhere($where) { - $sqlString = "SELECT * FROM ".$this->table('User'). - " WHERE ".$where; + + $sqlString = "SELECT `UID`, `UPassword`, ". + "`group`.`GID`, `group`.`GName`, `class`.`CID`, `class`.`CName`, ". + "`UEnabled`, `UBuildTime`, `UModifyTime`, ". + "`LMode`, `MMode`, `UEnable_NoAppoint`, ". + "`UNickname`, `URealName`, `UEmail`, `UMemo` ". + "FROM `".$this->table('User')."` AS `user` ". + "LEFT JOIN `".$this->table('AGroup')."` as `group` ". + "ON `group`.`GID` = `user`.`GID`". + "LEFT JOIN `".$this->table('CGroup')."` as `class` ". + "ON `class`.`CID` = `user`.`CID`". + "WHERE ".$where; $query = $this->connDB->prepare($sqlString); $query->execute(); @@ -197,7 +207,9 @@ class DBUser extends Database { array( 'user_id' => $thisResult['UID'], 'password' => $thisResult['UPassword'], 'group_id' => $thisResult['GID'], + 'group_name' => $thisResult['GName'], 'class_id' => $thisResult['CID'], + 'class_name' => $thisResult['CName'], 'enable' => $output_enable, 'build_time' => $thisResult['UBuildTime'], 'modify_time' => $thisResult['UModifyTime'], diff --git a/htdocs/lib/User/User.php b/htdocs/lib/User/User.php index 4e65796..2c14ca9 100644 --- a/htdocs/lib/User/User.php +++ b/htdocs/lib/User/User.php @@ -170,6 +170,16 @@ class User { public function getCreateTime(){ return $this->queryResultArray['build_time']; } + + /** + * 取得帳號資訊修改時間 + * + * @return string 修改時間 + * @since 2.0.0 + */ + public function getModifyTime(){ + return $this->queryResultArray['modify_time']; + } // ======================================================================== /** @@ -178,7 +188,7 @@ class User { * @return string 群組ID * @since 2.0.0 */ - public function getGroup(){ + public function getGroupID(){ return $this->queryResultArray['group_id']; } @@ -191,17 +201,7 @@ class User { */ public function getGroupName(){ - // 群組ID - $groupID = $this->queryResultArray['group_id']; - - // 取得群組名稱 - try { - $group = new User\UserGroup($groupID); - return $group->getName(); - } - catch (Exception\GroupNoFoundException $e) { - throw $e; - } + return $this->queryResultArray['group_name']; } /** @@ -259,22 +259,7 @@ class User { * @since 2.0.0 */ public function getClassName(){ - // TODO: 取得所在群組顯示名稱 - // 群組ID - $classID = $this->queryResultArray['class_id']; - - // 檢查有此群組 - if(isset($classID)) { - // 取得群組名稱 - try { - $group = new ClassGroup($classID); - return $group->getName(); - } - catch (Exception\ClassNoFoundException $e) { - throw $e; - } - } - else return null; + return $this->queryResultArray['class_name']; } /** @@ -349,22 +334,27 @@ class User { /** * 取得這個人的學習導引風格 * - * @return string 學習導引風格 + * @return int 將推薦幾個學習點 * @since 2.0.0 */ public function getLearnStyle(){ - // TODO: 取得這個人的學習導引風格 + return $this->queryResultArray['learnStyle_mode']; } /** * 設定這個人的學習導引風格 * - * @param string $style 學習導引風格 + * @param int $style 將推薦幾個學習點 * @since 2.0.0 */ public function setLearnStyle($style){ - // TODO: 設定這個人的學習導引風格 + if( $style >= 0 ) { + $this->setUpdate('learnStyle_mode', $style); + } + else { + throw new \UnexpectedValueException(); + } } @@ -375,7 +365,7 @@ class User { * @since 2.0.0 */ public function getMaterialStyle(){ - // TODO: 取得這個人的教材風格 + return $this->queryResultArray['material_mode']; } /** @@ -385,9 +375,9 @@ class User { * @since 2.0.0 */ public function setMaterialStyle($style){ - // TODO: 設定這個人的教材風格 - - + + // TODO: 防呆- 無此教材 + $this->setUpdate('material_mode', $style); } // ======================================================================== diff --git a/htdocs/lib/User/UserAdmin.php b/htdocs/lib/User/UserAdmin.php index 021b0f9..4fa0934 100644 --- a/htdocs/lib/User/UserAdmin.php +++ b/htdocs/lib/User/UserAdmin.php @@ -60,8 +60,8 @@ class UserAdmin { * 'enable' => true, // (optional) 預設為true * 'learnStyle_mode' => 3, // (optional) * 'material_mode' => 'normal', // (optional) - * 'material_mode' => 'normal', // (optional) - * 'enable_noAppoint' => true, // (optional) + * 'nickname' => '元兒~', // (optional) + * 'enable_noAppoint' => true, // (optional) * 'realname' => 'Eric Chiu', // (optional) * 'email' => 'eric@example.tw', // (optional) * 'memo' => '' ) // (optional)