1
0
Fork 0
mirror of https://codeberg.org/demostf/api.git synced 2026-06-04 02:14:06 +02:00

add option to limit uploads to a single key

This commit is contained in:
Robin Appelman 2018-04-24 23:24:47 +02:00
commit 96a9803e30
4 changed files with 68 additions and 12 deletions

View file

@ -30,16 +30,18 @@ class UploadProvider extends BaseProvider {
/** @var DemoSaver */
private $demoSaver;
private $baseUrl;
private $uploadKey;
public function __construct(
Connection $db,
string $baseUrl,
HeaderParser $headerParser,
Parser $parser,
DemoStore $store,
UserProvider $userProvider,
DemoProvider $demoProvider,
DemoSaver $demoSaver
string $baseUrl,
HeaderParser $headerParser,
Parser $parser,
DemoStore $store,
UserProvider $userProvider,
DemoProvider $demoProvider,
DemoSaver $demoSaver,
string $uploadKey
) {
parent::__construct($db);
$this->baseUrl = $baseUrl;
@ -49,11 +51,12 @@ class UploadProvider extends BaseProvider {
$this->userProvider = $userProvider;
$this->demoProvider = $demoProvider;
$this->demoSaver = $demoSaver;
$this->uploadKey = $uploadKey;
}
public function upload(string $key, string $red, string $blu, string $name, string $demoFile): string {
$user = $this->userProvider->byKey($key);
if (!$user) {
if (!$user || ($this->uploadKey !== '' && $this->uploadKey !== $key)) {
return 'Invalid key';
}