示例#1
0
 /**
  * Creates a scoreboard in a group
  * 
  * @param array $groupData
  * @param type $name
  * @param type $description
  * @param type $alias
  */
 public static function createGroupScoreboard(array $groupData, $name = null, $description = null, $alias = null)
 {
     if (is_null($name)) {
         $name = Utils::CreateRandomString();
     }
     if (is_null($description)) {
         $description = Utils::CreateRandomString();
     }
     if (is_null($alias)) {
         $alias = Utils::CreateRandomString();
     }
     $request = new Request(array("auth_token" => OmegaupTestCase::login($groupData["owner"]), "group_alias" => $groupData["group"]->alias, "name" => $name, "alias" => $alias, "description" => $description));
     $response = GroupController::apiCreateScoreboard($request);
     $scoreboards = GroupsScoreboardsDAO::search(new GroupsScoreboards(array("alias" => $alias)));
     return array("request" => $request, "response" => $response, "scoreboard" => $scoreboards[0]);
 }
 /**
  * Creates a scoreboard in a group
  *
  * @param array $groupData
  * @param type $name
  * @param type $description
  * @param type $alias
  */
 public static function createGroupScoreboard(array $groupData, $name = null, $description = null, $alias = null)
 {
     if (is_null($name)) {
         $name = Utils::CreateRandomString();
     }
     if (is_null($description)) {
         $description = Utils::CreateRandomString();
     }
     if (is_null($alias)) {
         $alias = Utils::CreateRandomString();
     }
     $request = new Request(array('auth_token' => OmegaupTestCase::login($groupData['owner']), 'group_alias' => $groupData['group']->alias, 'name' => $name, 'alias' => $alias, 'description' => $description));
     $response = GroupController::apiCreateScoreboard($request);
     $scoreboards = GroupsScoreboardsDAO::search(new GroupsScoreboards(array('alias' => $alias)));
     return array('request' => $request, 'response' => $response, 'scoreboard' => $scoreboards[0]);
 }
 /**
  * Details of a scoreboard
  * 
  * @param Request $r
  */
 public static function apiList(Request $r)
 {
     GroupController::validateGroup($r);
     $response = array();
     $response["scoreboards"] = array();
     try {
         $key = new GroupsScoreboards(array("group_id" => $r["group"]->group_id));
         $scoreboards = GroupsScoreboardsDAO::search($key);
         foreach ($scoreboards as $scoreboard) {
             $response["scoreboards"][] = $scoreboard->asArray();
         }
     } catch (Exception $ex) {
         throw new InvalidDatabaseOperationException($ex);
     }
     $response["status"] = "ok";
     return $response;
 }
示例#4
0
 /**
  * Test add a scoreboard
  */
 public function testCreateScoreboard()
 {
     $groupData = GroupsFactory::createGroup();
     $name = Utils::CreateRandomString();
     $description = Utils::CreateRandomString();
     $alias = Utils::CreateRandomString();
     $response = GroupController::apiCreateScoreboard(new Request(array('auth_token' => self::login($groupData['owner']), 'group_alias' => $groupData['group']->alias, 'name' => $name, 'alias' => $alias, 'description' => $description)));
     $this->assertEquals('ok', $response['status']);
     $groupScoreboards = GroupsScoreboardsDAO::search(new GroupsScoreboards(array('alias' => $alias)));
     $groupScoreboard = $groupScoreboards[0];
     $this->assertNotNull($groupScoreboard);
     $this->assertEquals($description, $groupScoreboard->getDescription());
     $this->assertEquals($groupData['group']->group_id, $groupScoreboard->getGroupId());
 }
示例#5
0
 /**
  * Create a scoreboard set to a group
  * 
  * @param Request $r
  */
 public static function apiCreateScoreboard(Request $r)
 {
     self::validateGroup($r);
     Validators::isValidAlias($r["alias"], "alias", true);
     Validators::isStringNonEmpty($r["name"], "name", true);
     Validators::isStringNonEmpty($r["description"], "description", false);
     try {
         $groupScoreboard = new GroupsScoreboards(array("group_id" => $r["group"]->group_id, "name" => $r["name"], "description" => $r["description"], "alias" => $r["alias"], "create_time" => gmdate('Y-m-d H:i:s', time())));
         GroupsScoreboardsDAO::save($groupScoreboard);
         self::$log->info("New scoreboard created " . $r["alias"]);
     } catch (Exception $ex) {
         throw new InvalidDatabaseOperationException($ex);
     }
     return array("status" => "ok");
 }
示例#6
0
 /**
  * Test add a scoreboard
  */
 public function testCreateScoreboard()
 {
     $groupData = GroupsFactory::createGroup();
     $name = Utils::CreateRandomString();
     $description = Utils::CreateRandomString();
     $alias = Utils::CreateRandomString();
     $response = GroupController::apiCreateScoreboard(new Request(array("auth_token" => self::login($groupData["owner"]), "group_alias" => $groupData["group"]->alias, "name" => $name, "alias" => $alias, "description" => $description)));
     $this->assertEquals("ok", $response["status"]);
     $groupScoreboards = GroupsScoreboardsDAO::search(new GroupsScoreboards(array("alias" => $alias)));
     $groupScoreboard = $groupScoreboards[0];
     $this->assertNotNull($groupScoreboard);
     $this->assertEquals($description, $groupScoreboard->getDescription());
     $this->assertEquals($groupData["group"]->group_id, $groupScoreboard->getGroupId());
 }
 /**
  * Create a scoreboard set to a group
  *
  * @param Request $r
  */
 public static function apiCreateScoreboard(Request $r)
 {
     self::validateGroup($r);
     Validators::isValidAlias($r['alias'], 'alias', true);
     Validators::isStringNonEmpty($r['name'], 'name', true);
     Validators::isStringNonEmpty($r['description'], 'description', false);
     try {
         $groupScoreboard = new GroupsScoreboards(array('group_id' => $r['group']->group_id, 'name' => $r['name'], 'description' => $r['description'], 'alias' => $r['alias'], 'create_time' => gmdate('Y-m-d H:i:s', time())));
         GroupsScoreboardsDAO::save($groupScoreboard);
         self::$log->info('New scoreboard created ' . $r['alias']);
     } catch (Exception $ex) {
         throw new InvalidDatabaseOperationException($ex);
     }
     return array('status' => 'ok');
 }