get('ip')) !== null) { $res['errno'] = Code::RECORD_ALREADY_EXIST; } else { $token = Random::randomString(32); $agent->set('token', $token); $res['errno'] = AgentManager::add($agent) ? Code::SUCCESS : Code::UNKNOWN_ERROR; } $log = new CRObject(); $log->set('scope', Session::get('uid')); $log->set('tag', 'agent.add'); $content = array('agent' => $agent, 'response' => $res['errno']); $log->set('content', json_encode($content)); CRLogger::log($log); return $res; } function agent_remove(CRObject $agent) { if (!AccessController::hasAccess(Session::get('role', 'visitor'), 'agent.remove')) { $res['errno'] = Code::NO_PRIVILEGE; return $res; } $res['errno'] = AgentManager::remove($agent) ? Code::SUCCESS : Code::UNKNOWN_ERROR; $log = new CRObject(); $log->set('scope', Session::get('uid')); $log->set('tag', 'agent.remove'); $content = array('agent' => $agent, 'response' => $res['errno']); $log->set('content', json_encode($content)); CRLogger::log($log); return $res; } function agent_list(CRObject $rule) { if (!AccessController::hasAccess(Session::get('role', 'visitor'), 'agent.list')) { $res['errno'] = Code::NO_PRIVILEGE; return $res; } $res['agents'] = AgentManager::gets($rule); $res['count'] = AgentManager::count($rule); $res['errno'] = $res['agents'] === null ? Code::FAIL : Code::SUCCESS; return $res; }