'0', 'uid' => '0', 'rank' => '0', 'plugin_name' => '', 'main_module_name' => '', ); public function getByPluginNameAndUniacid($plugin_name, $uniacid) { global $_W; return $this->query->where('uid', $_W['uid'])->where(array('plugin_name' => $plugin_name, 'uniacid' => $uniacid))->get(); } public function getMaxRank() { global $_W; $rank_info = $this->query->select('max(rank)')->where('uid', $_W['uid'])->getcolumn(); return $rank_info; } public function setTop($plugin_name, $main_module_name, $uniacid) { global $_W; if (empty($plugin_name) || empty($uniacid)) { return false; } $max_rank = $this->getMaxRank(); $exist = $this->getByPluginNameAndUniacid($plugin_name, $uniacid); if (!empty($exist)) { pdo_update($this->tableName, array('rank' => ($max_rank + 1)), array('plugin_name' => $plugin_name, 'uid' => $_W['uid'], 'uniacid' => $uniacid)); } else { pdo_insert($this->tableName, array('uid' => $_W['uid'], 'plugin_name' => $plugin_name, 'main_module_name' => $main_module_name, 'uniacid' => $uniacid, 'rank' => ($max_rank + 1))); } return true; } public function searchWithUid($uid) { return $this->query->where('r.uid', $uid); } public function getPluginRankList($main_module, $uniacid) { return $this->query ->select('p.name, r.uid, r.uniacid, r.rank') ->from('modules_plugin', 'p') ->leftjoin('modules_plugin_rank', 'r') ->on(array('p.name' => 'r.plugin_name')) ->where('p.main_module', $main_module) ->where('r.uniacid', $uniacid) ->orderby('r.rank', 'DESC') ->getall('name'); } }