function openSingleFunction($function) { $funcName = $function['funname']; // get opened function list for current publich account; $queryname = M('Token_open')->where(array('token' => $this->token, 'uid' => $this->websiteUserId))->field('queryname')->find(); $openedFuncNames = array(); if ($queryname) { $openedFuncNames = array_unique(explode(',', $queryname['queryname'])); } else { M('Token_open')->add(array('uid' => $this->websiteUserId, 'token' => $this->token)); } if (in_array($funcName, $openedFuncNames)) { // ingore functions which has been opened before return; } array_push($openedFuncNames, $funcName); // try to load template data $templateDataLoader = new TemplateDataLoader($this->websiteUserId, $this->uname, $this->token); $templateDataLoader->loadTemplateData($funcName); // update token_open table M('Token_open')->where(array('uid' => $this->websiteUserId, 'token' => $this->token))->setField('queryname', implode(',', $openedFuncNames)); session('opened_funcs', $openedFuncNames); if (isset($function['keywords']) && !empty($function['keywords'])) { $keywords = explode(' ', $function['keywords']); $kwds_db = M('keyword'); $kwd_data['uid'] = $this->websiteUserId; $kwd_data['token'] = $this->token; $kwd_data['type'] = 2; $kwd_data['module'] = 'img'; $kwd_data['function'] = $funcName; $kwd_data['pid'] = 0; foreach ($keywords as $vo) { $kwd_data['keyword'] = $vo; $kwds_db->add($kwd_data); } } }
public function add() { $server_token = session('token'); $func_id = $this->_get('id'); $fun = $this->queryFunction($func_id, $server_token); if (!empty($fun)) { $templateDataLoader = new TemplateDataLoader(session('uid'), session('uname'), session('token')); $templateDataLoader->loadTemplateData($fun['funname']); //该用户已经购买该功能组 $ret = $this->updateOpenedFuncs('add', $server_token, $fun['funname']); if ($ret) { if (isset($fun['keywords']) && !empty($fun['keywords'])) { $keywords = explode(' ', $fun['keywords']); $kwds_db = M('keyword'); $kwd_data['uid'] = session('uid'); $kwd_data['token'] = session('token'); $kwd_data['type'] = 2; $kwd_data['module'] = 'img'; $kwd_data['function'] = $fun['funname']; $kwd_data['pid'] = 0; foreach ($keywords as $vo) { $kwd_data['keyword'] = $vo; $kwds_db->add($kwd_data); } } echo 1; } else { echo 2; } } else { echo 2; } }