From 96f84b53765d612a24d41f2c2f7f72771f0503cb Mon Sep 17 00:00:00 2001 From: wangchunsheng Date: Fri, 19 Mar 2010 03:14:14 +0000 Subject: [PATCH] + add api module. --- trunk/module/api/control.php | 42 +++++++++++++++++++++++++++++++ trunk/module/api/lang/zh-cn.php | 25 ++++++++++++++++++ trunk/module/common/control.php | 4 +++ trunk/module/group/lang/zh-cn.php | 4 +-- trunk/module/group/model.php | 7 ++++-- 5 files changed, 78 insertions(+), 4 deletions(-) create mode 100644 trunk/module/api/control.php create mode 100644 trunk/module/api/lang/zh-cn.php diff --git a/trunk/module/api/control.php b/trunk/module/api/control.php new file mode 100644 index 0000000000..2fea50ded4 --- /dev/null +++ b/trunk/module/api/control.php @@ -0,0 +1,42 @@ +. + * + * @copyright Copyright 2009-2010 Chunsheng Wang + * @author Chunsheng Wang + * @package api + * @version $Id$ + * @link http://www.zentao.cn + */ +class api extends control +{ + /* 获得sessionid。*/ + public function getSessionID() + { + $this->view->sessionID = session_id(); + $this->display(); + } + + /* 获得某一个model某一个方法的结果。params的传递方式:param1=value1,param2=value2。*/ + public function getModel($moduleName, $methodName, $params = '') + { + parse_str(str_replace(',', '&', $params), $params); + $module = $this->loadModel($moduleName); + $result = call_user_func_array(array(&$module, $methodName), $params); + if(dao::isError()) die(json_encode(dao::getError())); + die(json_encode($result)); + } +} diff --git a/trunk/module/api/lang/zh-cn.php b/trunk/module/api/lang/zh-cn.php new file mode 100644 index 0000000000..456ed1ccd1 --- /dev/null +++ b/trunk/module/api/lang/zh-cn.php @@ -0,0 +1,25 @@ +. + * + * @copyright Copyright 2009-2010 Chunsheng Wang + * @author Chunsheng Wang + * @package api + * @version $Id: zh-cn.php 536 2010-03-17 06:39:06Z wwccss $ + * @link http://www.zentao.cn + */ +$lang->api->common = 'API接口'; +$lang->api->getModel = '超级model调用接口'; diff --git a/trunk/module/common/control.php b/trunk/module/common/control.php index 30132a1d13..d018133dfe 100644 --- a/trunk/module/common/control.php +++ b/trunk/module/common/control.php @@ -53,6 +53,10 @@ class common extends control { if($method == 'login' or $method == 'logout' or $method == 'deny') return true; } + elseif($module == 'api' and $method == 'getsessionid') + { + return true; + } if(isset($this->app->user)) { diff --git a/trunk/module/group/lang/zh-cn.php b/trunk/module/group/lang/zh-cn.php index 7a1821cc1b..055514ef7e 100644 --- a/trunk/module/group/lang/zh-cn.php +++ b/trunk/module/group/lang/zh-cn.php @@ -200,9 +200,9 @@ $lang->resource->tree->ajaxGetOptionMenu = 'ajaxGetOptionMenu'; $lang->resource->search->buildForm = 'buildForm'; $lang->resource->search->buildQuery = 'buildQuery'; +$lang->resource->api->getModel = 'getModel'; $lang->resource->file->download = 'download'; - -$lang->resource->misc->ping = 'ping'; +$lang->resource->misc->ping = 'ping'; $lang->resource->admin->index = 'index'; $lang->resource->admin->browseCompany = 'browseCompany'; diff --git a/trunk/module/group/model.php b/trunk/module/group/model.php index 20a9a2cfb6..90a569af03 100644 --- a/trunk/module/group/model.php +++ b/trunk/module/group/model.php @@ -71,8 +71,11 @@ class groupModel extends model /* 获得分组的用户列表。*/ public function getUserPairs($groupID) { - $sql = "SELECT T2.account, T2.realname FROM " . TABLE_USERGROUP . " AS T1 LEFT JOIN " . TABLE_USER . " AS T2 ON T1.account = T2.account WHERE `group` = '$groupID'"; - return $this->fetchPairs($sql); + return $this->dao->select('t2.account, t2.realname') + ->from(TABLE_USERGROUP)->alias('t1') + ->leftJoin(TABLE_USER)->alias('t2')->on('t1.account = t2.account') + ->where('`group`')->eq((int)$groupID) + ->fetchPairs(); } /* 删除一个分组信息。*/