feat: BaseAPI의 launch()에 타입 지정

- APIRecoveryType이 명시
This commit is contained in:
2023-03-17 01:39:10 +09:00
parent 6b9cfe46a0
commit 4d340abdcf
77 changed files with 171 additions and 89 deletions
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\AuctionBuyRice;
use sammo\AuctionUniqueItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\General;
@@ -32,7 +33,7 @@ class BidBuyRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$auctionID = $this->args['auctionID'];
$amount = $this->args['amount'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Auction;
use sammo\Session;
use DateTimeInterface;
use sammo\AuctionSellRice;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\General;
@@ -31,7 +32,7 @@ class BidSellRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$auctionID = $this->args['auctionID'];
$amount = $this->args['amount'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Auction;
use sammo\Session;
use DateTimeInterface;
use sammo\AuctionUniqueItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\GameConst;
use sammo\General;
@@ -33,7 +34,7 @@ class BidUniqueAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$auctionID = $this->args['auctionID'];
$amount = $this->args['amount'];
@@ -8,6 +8,7 @@ use sammo\AuctionSellRice;
use sammo\DB;
use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType;
use sammo\Validator;
use sammo\General;
@@ -29,7 +30,7 @@ class GetActiveResourceAuctionList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
@@ -8,6 +8,7 @@ use sammo\AuctionUniqueItem;
use sammo\DB;
use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType;
use sammo\Enums\InheritanceKey;
use sammo\InheritancePointManager;
@@ -37,7 +38,7 @@ class GetUniqueItemAuctionDetail extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
@@ -8,6 +8,7 @@ use sammo\AuctionUniqueItem;
use sammo\DB;
use sammo\DTO\AuctionBidItem;
use sammo\DTO\AuctionInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\AuctionType;
use sammo\TimeUtil;
use sammo\Util;
@@ -24,7 +25,7 @@ class GetUniqueItemAuctionList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\AuctionBuyRice;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\GameConst;
use sammo\General;
@@ -52,7 +53,7 @@ class OpenBuyRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
/** @var int */
$amount = $this->args['amount'];
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\AuctionSellRice;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\GameConst;
use sammo\General;
@@ -52,7 +53,7 @@ class OpenSellRiceAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
/** @var int */
$amount = $this->args['amount'];
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\AuctionUniqueItem;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\GameConst;
use sammo\General;
@@ -49,7 +50,7 @@ class OpenUniqueAuction extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$itemID = $this->args['itemID'];
$amount = $this->args['amount'];
+2 -1
View File
@@ -7,6 +7,7 @@ use DateTimeInterface;
use sammo\Betting;
use sammo\DB;
use sammo\DTO\BettingItem;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\GameConst;
use sammo\KVStorage;
@@ -39,7 +40,7 @@ class Bet extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
/** @var int */
$bettingID = $this->args['bettingID'];
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\BettingInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Util;
use sammo\Validator;
@@ -32,7 +33,7 @@ class GetBettingDetail extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\BettingInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
@@ -29,7 +30,7 @@ class GetBettingList extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Command;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KVStorage;
use sammo\TimeUtil;
@@ -23,7 +24,7 @@ class GetReservedCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use function sammo\pushGeneralCommand;
@@ -31,7 +32,7 @@ class PushCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
if($amount == 0){
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use function sammo\repeatGeneralCommand;
@@ -31,7 +32,7 @@ class RepeatCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\Util;
use sammo\Validator;
@@ -36,7 +37,7 @@ class ReserveBulkCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$briefList = [];
foreach ($this->args as $idx => $turn) {
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Command;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\Util;
use sammo\Validator;
@@ -33,7 +34,7 @@ class ReserveCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$action = $this->args['action'];
$turnList = $this->args['turnList'];
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use sammo\Command\General\che_거병;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\Session;
@@ -30,7 +31,7 @@ class BuildNationCandidate extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use sammo\DB;
use sammo\DummyGeneral;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\Session;
use sammo\General;
@@ -26,7 +27,7 @@ class DieOnPrestart extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
//로그인 검사
$userID = $session->userID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\General;
use Ds\Set;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use sammo\Session;
@@ -33,7 +34,7 @@ class DropItem extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $session->generalID;
$me = General::createGeneralObjFromDB($generalID);
+3 -1
View File
@@ -1,6 +1,7 @@
<?php
namespace sammo\API\General;
use sammo\Enums\APIRecoveryType;
use sammo\General;
use sammo\Session;
@@ -17,7 +18,8 @@ class GetCommandTable extends \sammo\BaseAPI{
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag){
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $session->generalID;
$me = General::createGeneralObjFromDB($generalID);
$commandTable = getCommandTable($me);
+1 -1
View File
@@ -527,7 +527,7 @@ class GetFrontInfo extends \sammo\BaseAPI
return $result;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $session->generalID;
//NOTE: 이 경우 staticNation 정보를 조회한다.
+2 -1
View File
@@ -7,6 +7,7 @@ use sammo\ActionLogger;
use sammo\Auction;
use sammo\CityConst;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\GameUnitConst;
@@ -120,7 +121,7 @@ class Join extends \sammo\BaseAPI
return $targetBonusPointCnt;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session;
use sammo\DB;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\TurnExecutionHelper;
use sammo\UniqueConst;
@@ -20,7 +21,7 @@ class ExecuteEngine extends \sammo\BaseAPI
return static::NO_SESSION;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$reqServerID = $this->args['serverID'] ?? null;
if($reqServerID && $reqServerID !== UniqueConst::$serverID){
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Global;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KVStorage;
use sammo\RootDB;
@@ -33,7 +34,7 @@ class GeneralList extends \sammo\BaseAPI
return static::REQ_LOGIN;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
$gameStor = KVStorage::getStorage($db, 'game_env');
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use Nette\Caching\Cache;
use sammo\APICacheResult;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\MapRequest;
use sammo\TimeUtil;
@@ -44,7 +45,7 @@ class GetCachedMap extends \sammo\BaseAPI
return static::NO_SESSION;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
if (!class_exists('\\sammo\\UniqueConst')) {
return '서버 초기화되지 않음';
+2 -1
View File
@@ -9,6 +9,7 @@ use Nette\Caching\Cache;
use RuntimeException;
use sammo\APICacheResult;
use sammo\CityConst;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\GameUnitConst;
use sammo\Json;
@@ -279,7 +280,7 @@ class GetConst extends \sammo\BaseAPI
];
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$cacheDir = $this->rootPath . '/data/file_cache';
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Global;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use function sammo\getCurrentHistory;
@@ -19,7 +20,7 @@ class GetCurrentHistory extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$history = getCurrentHistory();
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Global;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KVStorage;
use sammo\Session;
@@ -22,7 +23,7 @@ class GetDiplomacy extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use LDTO\DTO;
use sammo\APICacheResult;
use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\GlobalMenu;
use sammo\Session;
@@ -19,7 +20,7 @@ class GetGlobalMenu extends BaseAPI
return null;
}
function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
if ($reqEtag !== null) {
$version = GlobalMenu::version;
+2 -1
View File
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\APICacheResult;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\UniqueConst;
use sammo\Util;
@@ -127,7 +128,7 @@ class GetHistory extends \sammo\BaseAPI
return $cachedHash;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$checkCache = $this->checkCached($reqEtag);
if ($checkCache) {
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Global;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\MapRequest;
use sammo\Validator;
@@ -27,7 +28,7 @@ class GetMap extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
return getWorldMap(new MapRequest([
'neutralView' => !!($this->args['neutralView'] ?? false),
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use function sammo\getAllNationStaticInfo;
use function sammo\getNationStaticInfo;
@@ -21,7 +22,7 @@ class GetNationList extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Global;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Util;
use sammo\Validator;
@@ -72,7 +73,7 @@ class GetRecentRecord extends \sammo\BaseAPI
return $history;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\General;
@@ -40,7 +41,7 @@ class BuyHiddenBuff extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$generalID = $session->generalID;
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\General;
@@ -25,7 +26,7 @@ class BuyRandomUnique extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$generalID = $session->generalID;
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\InheritAction;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Session;
use sammo\Validator;
use sammo\Util;
@@ -25,7 +26,7 @@ class GetMoreLog extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$lastID = $this->args['lastID'];
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\General;
@@ -25,7 +26,7 @@ class ResetSpecialWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$generalID = $session->generalID;
@@ -6,6 +6,7 @@ use DateTimeImmutable;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\General;
@@ -30,7 +31,7 @@ class ResetTurnTime extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$generalID = $session->generalID;
@@ -5,6 +5,7 @@ namespace sammo\API\InheritAction;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\RankColumn;
use sammo\GameConst;
use sammo\General;
@@ -36,7 +37,7 @@ class SetNextSpecialWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$generalID = $session->generalID;
@@ -6,6 +6,7 @@ use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\DiplomaticMessage;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Message;
use sammo\Validator;
@@ -31,7 +32,7 @@ class DecideMessageResponse extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$msgID = $this->args['msgID'];
$msgResponse = $this->args['response'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Message;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\Message;
use sammo\Validator;
@@ -27,7 +28,7 @@ class DeleteMessage extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$msgID = $this->args['msgID'];
+2 -1
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Message;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use function sammo\getMailboxList;
@@ -18,7 +19,7 @@ class GetContactList extends \sammo\BaseAPI{
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
if(!$session->generalID){
return [
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType;
use sammo\Json;
use sammo\Message;
@@ -65,7 +66,7 @@ class GetOldMessage extends \sammo\BaseAPI
}
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$this->delayFrequentCall($session);
$session->setReadOnly();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType;
use sammo\Json;
use sammo\Message;
@@ -61,7 +62,7 @@ class GetRecentMessage extends \sammo\BaseAPI
}
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$this->delayFrequentCall($session);
$session->setReadOnly();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Message;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Enums\MessageType;
use sammo\Message;
use sammo\MessageTarget;
@@ -145,7 +146,7 @@ class SendMessage extends \sammo\BaseAPI
return $msg;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$mailbox = $this->args['mailbox'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Misc;
use sammo\Session;
use DateTimeInterface;
use sammo\AppConf;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\RootDB;
use sammo\TimeUtil;
@@ -31,7 +32,7 @@ class UploadImage extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$imageData = base64_decode($this->args['imageData'], true);
if ($imageData === false) {
+4 -3
View File
@@ -4,6 +4,7 @@ namespace sammo\API\Nation;
use ArrayObject;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\General;
use sammo\Session;
use sammo\Util;
@@ -133,7 +134,7 @@ class GeneralList extends \sammo\BaseAPI
return 1;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
increaseRefresh("세력장수", 1);
@@ -188,14 +189,14 @@ class GeneralList extends \sammo\BaseAPI
foreach($troops as $troop){
$reservedCommandTargetGeneralIDList[$troop['id']] = $troop['id'];
}
if($reservedCommandTargetGeneralIDList){
$rawTurnList = $db->query(
'SELECT general_id, turn_idx, action, arg, brief FROM general_turn WHERE general_id IN %li AND turn_idx < 5 ORDER BY general_id asc, turn_idx asc',
array_values($reservedCommandTargetGeneralIDList)
);
foreach ($rawTurnList as $rawTurn) {
[
'general_id' => $generalID,
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Nation;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Session;
use sammo\Validator;
@@ -99,7 +100,7 @@ class GetGeneralLog extends \sammo\BaseAPI
return $this->args['generalID'];
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
+2 -1
View File
@@ -3,6 +3,7 @@
namespace sammo\API\Nation;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\General;
use sammo\KVStorage;
@@ -40,7 +41,7 @@ class GetNationInfo extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetBill extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -32,7 +33,7 @@ class SetBlockScout extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$value = $this->args['value'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -32,7 +33,7 @@ class SetBlockWar extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$value = $this->args['value'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\TimeUtil;
use sammo\Validator;
@@ -32,7 +33,7 @@ class SetNotice extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$msg = $this->args['msg'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetRate extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -31,7 +32,7 @@ class SetScoutMsg extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$msg = $this->args['msg'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Validator;
use sammo\WebUtil;
@@ -34,7 +35,7 @@ class SetSecretLimit extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
$userID = $session->userID;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Nation;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil;
use sammo\Validator;
@@ -34,7 +35,7 @@ class SetTroopName extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$db = DB::db();
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\General;
use sammo\Json;
@@ -29,7 +30,7 @@ class GetReservedCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use function sammo\pushNationCommand;
@@ -32,7 +33,7 @@ class PushCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
if($amount == 0){
@@ -5,6 +5,7 @@ namespace sammo\API\NationCommand;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
use function sammo\repeatNationCommand;
@@ -32,7 +33,7 @@ class RepeatCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$amount = $this->args['amount'];
@@ -4,6 +4,7 @@ namespace sammo\API\NationCommand;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\Util;
use sammo\Validator;
@@ -36,7 +37,7 @@ class ReserveBulkCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$briefList = [];
foreach ($this->args as $idx => $turn) {
@@ -4,6 +4,7 @@ namespace sammo\API\NationCommand;
use sammo\Session;
use DateTimeInterface;
use sammo\Enums\APIRecoveryType;
use sammo\GameConst;
use sammo\Util;
use sammo\Validator;
@@ -33,7 +34,7 @@ class ReserveCommand extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$action = $this->args['action'];
$turnList = $this->args['turnList'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
class ExitTroop extends \sammo\BaseAPI
{
@@ -18,7 +19,7 @@ class ExitTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $session->generalID;
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil;
use sammo\Validator;
@@ -29,7 +30,7 @@ class JoinTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$troopID = $this->args['troopID'];
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\Validator;
class KickFromTroop extends \sammo\BaseAPI
@@ -31,7 +32,7 @@ class KickFromTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$generalID = $this->args['generalID'];
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil;
use sammo\Validator;
@@ -29,7 +30,7 @@ class NewTroop extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$troopName = StringUtil::neutralize($this->args['troopName']);
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Troop;
use sammo\Session;
use DateTimeInterface;
use sammo\DB;
use sammo\Enums\APIRecoveryType;
use sammo\StringUtil;
use sammo\Validator;
@@ -33,7 +34,7 @@ class SetTroopName extends \sammo\BaseAPI
return static::REQ_GAME_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$userID = $session->userID;
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\VoteComment;
use sammo\Enums\APIRecoveryType;
use sammo\General;
use sammo\Session;
use sammo\TimeUtil;
@@ -33,7 +34,7 @@ class AddComment extends \sammo\BaseAPI
return null;
}
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$voteID = $this->args['voteID'];
$text = mb_substr($this->args['text'], 0, 200);
+2 -1
View File
@@ -7,6 +7,7 @@ use DateTimeInterface;
use sammo\DB;
use sammo\DTO\VoteComment;
use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KVStorage;
use sammo\Validator;
@@ -30,7 +31,7 @@ class GetVoteDetail extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$voteID = $this->args['voteID'];
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Session;
@@ -21,7 +22,7 @@ class GetVoteList extends \sammo\BaseAPI
return static::REQ_LOGIN | static::REQ_READ_ONLY;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$db = DB::db();
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\KVStorage;
use sammo\Session;
use sammo\TimeUtil;
@@ -52,7 +53,7 @@ class NewVote extends \sammo\BaseAPI
$voteStor->setValue("vote_{$voteID}", $lastVoteInfo->toArray());
}
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$isVoteAdmin = in_array('vote', $session->acl[DB::prefix()] ?? []);
$isVoteAdmin = $isVoteAdmin || $session->userGrade >= 5;
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Vote;
use DateTimeInterface;
use sammo\DB;
use sammo\DTO\VoteInfo;
use sammo\Enums\APIRecoveryType;
use sammo\General;
use sammo\Json;
use sammo\KVStorage;
@@ -42,7 +43,7 @@ class Vote extends \sammo\BaseAPI
return null;
}
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$voteID = $this->args['voteID'];
+4 -2
View File
@@ -5,7 +5,9 @@ namespace sammo\API\Login;
use DateTime;
use sammo\Session;
use DateTimeInterface;
use sammo\APIHelper;
use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KakaoUtil;
use sammo\RootDB;
@@ -78,7 +80,7 @@ class LoginByID extends \sammo\BaseAPI
return [$tokenID, $token];
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$RootDB = RootDB::db();
if ($session->isLoggedIn()) {
@@ -143,7 +145,7 @@ class LoginByID extends \sammo\BaseAPI
return [
'result' => false,
'reqOTP' => $oauthReqOTP,
'reason' => $oauthFailReason
'reason' => $oauthFailReason,
];
}
}
+2 -1
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Login;
use sammo\Session;
use DateTimeInterface;
use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KakaoUtil;
use sammo\RootDB;
@@ -36,7 +37,7 @@ class LoginByToken extends LoginByID
return null;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag)
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$loginNonce = $session->loginNonce ?? null;
$loginNonceExpired = $session->loginNonceExpired ?? null;
+10 -7
View File
@@ -5,6 +5,7 @@ namespace sammo\API\Login;
use sammo\Session;
use DateTimeInterface;
use sammo\BaseAPI;
use sammo\Enums\APIRecoveryType;
use sammo\Json;
use sammo\KakaoUtil;
use sammo\RootDB;
@@ -12,9 +13,11 @@ use sammo\TimeUtil;
use sammo\Util;
use sammo\Validator;
class ReqNonce extends BaseAPI{
class ReqNonce extends BaseAPI
{
public function getRequiredSessionMode(): int {
public function getRequiredSessionMode(): int
{
return \sammo\BaseAPI::NO_LOGIN;
}
@@ -23,15 +26,15 @@ class ReqNonce extends BaseAPI{
return null;
}
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag) {
public function launch(Session $session, ?DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType
{
$loginNonce = Util::randomStr(16);
$loginNonceExpired = TimeUtil::nowAddSeconds(2);
$session->loginNonce = $loginNonce;
$session->loginNonceExpired = $loginNonceExpired;
return [
'result'=>true,
'loginNonce'=>$loginNonce,
'result' => true,
'loginNonce' => $loginNonce,
];
}
}
}
+7 -4
View File
@@ -2,6 +2,8 @@
namespace sammo;
use sammo\Enums\APIRecoveryType;
abstract class BaseAPI
{
const NO_SESSION = -1;
@@ -13,7 +15,8 @@ abstract class BaseAPI
static array $sensitiveArgs = [];
static bool $allowExternalAPI = true;
public function getFilteredArgs(): array {
public function getFilteredArgs(): array
{
$filteredArgs = $this->args;
foreach (static::$sensitiveArgs as $argName) {
if (isset($filteredArgs[$argName])) {
@@ -33,10 +36,10 @@ abstract class BaseAPI
abstract public function getRequiredSessionMode(): int;
abstract function validateArgs(): ?string;
/** @return null|string|array */
abstract function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag);
abstract function launch(Session $session, ?\DateTimeInterface $modifiedSince, ?string $reqEtag): null | string | array | APIRecoveryType;
public function tryCache():?APICacheResult{
public function tryCache(): ?APICacheResult
{
return null;
}
}