mirror of
https://github.com/Sarjuuk/aowow.git
synced 2025-11-29 15:58:16 +08:00
69 lines
2.6 KiB
PHP
69 lines
2.6 KiB
PHP
<?php
|
|
|
|
namespace Aowow;
|
|
|
|
if (!defined('AOWOW_REVISION'))
|
|
die('illegal access');
|
|
|
|
|
|
class AdminVideosResponse extends TemplateResponse
|
|
{
|
|
protected int $requiredUserGroup = U_GROUP_ADMIN | U_GROUP_BUREAU | U_GROUP_VIDEO;
|
|
|
|
protected string $template = 'admin/videos';
|
|
protected string $pageName = 'videos';
|
|
protected ?int $activeTab = parent::TAB_STAFF;
|
|
protected array $breadcrumb = [4, 1, 17]; // Staff > Content > Videos
|
|
|
|
protected array $scripts = array(
|
|
[SC_JS_FILE, 'js/video.js'],
|
|
[SC_CSS_STRING, '.layout {margin: 0px 25px; max-width: inherit; min-width: 1200px; }'],
|
|
[SC_CSS_STRING, '#highlightedRow { background-color: #322C1C; }']
|
|
);
|
|
protected array $expectedGET = array(
|
|
'action' => ['filter' => FILTER_CALLBACK, 'options' => [self::class, 'checkTextLine']],
|
|
'all' => ['filter' => FILTER_CALLBACK, 'options' => [self::class, 'checkEmptySet']],
|
|
'type' => ['filter' => FILTER_VALIDATE_INT ],
|
|
'typeid' => ['filter' => FILTER_VALIDATE_INT ],
|
|
'user' => ['filter' => FILTER_CALLBACK, 'options' => 'urldecode' ]
|
|
);
|
|
|
|
public ?bool $getAll = null;
|
|
public array $viPages = [];
|
|
public array $viData = [];
|
|
public int $viNFound = 0;
|
|
public array $pageTypes = [];
|
|
|
|
protected function generate() : void
|
|
{
|
|
$this->h1 = 'Video Manager';
|
|
|
|
// types that can have videos
|
|
foreach (Type::getClassesFor(0, 'contribute', CONTRIBUTE_SS) as $type => $obj)
|
|
$this->pageTypes[$type] = Util::ucWords(Lang::game(Type::getFileString($type)));
|
|
|
|
$viGetAll = $this->_get['all'];
|
|
$viPages = [];
|
|
$viData = [];
|
|
$nMatches = 0;
|
|
|
|
if ($this->_get['type'] && $this->_get['typeid'])
|
|
$viData = VideoMgr::getVideos($this->_get['type'], $this->_get['typeid'], nFound: $nMatches);
|
|
else if ($this->_get['user'])
|
|
{
|
|
if (mb_strlen($this->_get['user']) >= 3)
|
|
if ($uId = DB::Aowow()->selectCell('SELECT `id` FROM ?_account WHERE LOWER(`username`) = LOWER(?)', $this->_get['user']))
|
|
$viData = VideoMgr::getVideos(userId: $uId, nFound: $nMatches);
|
|
}
|
|
else
|
|
$viPages = VideoMgr::getPages($viGetAll, $nMatches);
|
|
|
|
$this->getAll = $viGetAll;
|
|
$this->viPages = $viPages;
|
|
$this->viData = $viData;
|
|
$this->viNFound = $nMatches; // ssm_numPagesFound
|
|
|
|
parent::generate();
|
|
}
|
|
}
|