mirror of
https://github.com/YGGverse/YGGtracker.git
synced 2025-02-09 21:44:23 +00:00
implement torrent statuses management #28
This commit is contained in:
parent
3cbc6ea90f
commit
989f2f3311
2
.env
2
.env
@ -48,7 +48,7 @@ MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0
|
|||||||
# YGGtracker
|
# YGGtracker
|
||||||
|
|
||||||
# Application version, used for API and media cache
|
# Application version, used for API and media cache
|
||||||
APP_VERSION='2.2.0'
|
APP_VERSION='2.2.1'
|
||||||
|
|
||||||
# Application name
|
# Application name
|
||||||
APP_NAME=YGGtracker
|
APP_NAME=YGGtracker
|
||||||
|
37
migrations/Version20231026163131.php
Normal file
37
migrations/Version20231026163131.php
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace DoctrineMigrations;
|
||||||
|
|
||||||
|
use Doctrine\DBAL\Schema\Schema;
|
||||||
|
use Doctrine\Migrations\AbstractMigration;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Auto-generated Migration: Please modify to your needs!
|
||||||
|
*/
|
||||||
|
final class Version20231026163131 extends AbstractMigration
|
||||||
|
{
|
||||||
|
public function getDescription(): string
|
||||||
|
{
|
||||||
|
return '';
|
||||||
|
}
|
||||||
|
|
||||||
|
public function up(Schema $schema): void
|
||||||
|
{
|
||||||
|
// this up() migration is auto-generated, please modify it to your needs
|
||||||
|
$this->addSql('ALTER TABLE torrent ADD COLUMN status BOOLEAN DEFAULT 1');
|
||||||
|
}
|
||||||
|
|
||||||
|
public function down(Schema $schema): void
|
||||||
|
{
|
||||||
|
// this down() migration is auto-generated, please modify it to your needs
|
||||||
|
$this->addSql('CREATE TEMPORARY TABLE __temp__torrent AS SELECT id, user_id, added, scraped, locales, sensitive, approved, md5file, keywords, seeders, peers, leechers FROM torrent');
|
||||||
|
$this->addSql('DROP TABLE torrent');
|
||||||
|
$this->addSql('CREATE TABLE torrent (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, user_id INTEGER NOT NULL, added INTEGER NOT NULL, scraped INTEGER DEFAULT NULL, locales CLOB NOT NULL --(DC2Type:simple_array)
|
||||||
|
, sensitive BOOLEAN NOT NULL, approved BOOLEAN NOT NULL, md5file VARCHAR(32) NOT NULL, keywords CLOB DEFAULT NULL --(DC2Type:simple_array)
|
||||||
|
, seeders INTEGER DEFAULT NULL, peers INTEGER DEFAULT NULL, leechers INTEGER DEFAULT NULL)');
|
||||||
|
$this->addSql('INSERT INTO torrent (id, user_id, added, scraped, locales, sensitive, approved, md5file, keywords, seeders, peers, leechers) SELECT id, user_id, added, scraped, locales, sensitive, approved, md5file, keywords, seeders, peers, leechers FROM __temp__torrent');
|
||||||
|
$this->addSql('DROP TABLE __temp__torrent');
|
||||||
|
}
|
||||||
|
}
|
@ -208,6 +208,14 @@ a.button-green:hover {
|
|||||||
border-top: 1px #5d627d solid;
|
border-top: 1px #5d627d solid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.border-bottom-dashed {
|
||||||
|
border-bottom: 1px #5d627d dashed;
|
||||||
|
}
|
||||||
|
|
||||||
|
.border-top-dashed {
|
||||||
|
border-top: 1px #5d627d dashed;
|
||||||
|
}
|
||||||
|
|
||||||
.border-width-2-px {
|
.border-width-2-px {
|
||||||
border-width: 2px;
|
border-width: 2px;
|
||||||
}
|
}
|
||||||
@ -367,6 +375,10 @@ a:visited.background-color-hover-night-light:hover {
|
|||||||
padding-bottom: 24px;
|
padding-bottom: 24px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.margin-t-4-px {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
.margin-l-4-px {
|
.margin-l-4-px {
|
||||||
margin-left: 4px;
|
margin-left: 4px;
|
||||||
}
|
}
|
||||||
|
@ -560,6 +560,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -606,6 +607,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -652,6 +654,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -699,6 +702,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -745,6 +749,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -783,6 +788,102 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
|
$torrent->getId()
|
||||||
|
)->getName()
|
||||||
|
],
|
||||||
|
'session' =>
|
||||||
|
[
|
||||||
|
'user' =>
|
||||||
|
[
|
||||||
|
'id' => $user->getId(),
|
||||||
|
'sensitive' => $user->isSensitive(),
|
||||||
|
'moderator' => $user->isModerator(),
|
||||||
|
'owner' => $user->getId() === $torrent->getUserId(),
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
// Torrent Status
|
||||||
|
case $activity::EVENT_TORRENT_STATUS_ADD:
|
||||||
|
|
||||||
|
// Init torrent
|
||||||
|
if (!$torrent = $torrentService->getTorrent($activity->getTorrentId()))
|
||||||
|
{
|
||||||
|
throw $this->createNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->render(
|
||||||
|
'default/activity/event/torrent/status/add' . $extension,
|
||||||
|
[
|
||||||
|
'id' => $activity->getId(),
|
||||||
|
'added' => $activity->getAdded(),
|
||||||
|
'user' =>
|
||||||
|
[
|
||||||
|
'id' => $activity->getUserId(),
|
||||||
|
'identicon' => $userService->identicon(
|
||||||
|
$userService->getUser(
|
||||||
|
$activity->getUserId()
|
||||||
|
)->getAddress()
|
||||||
|
)
|
||||||
|
],
|
||||||
|
'torrent' =>
|
||||||
|
[
|
||||||
|
'id' => $torrent->getId(),
|
||||||
|
'sensitive' => $torrent->isSensitive(),
|
||||||
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
|
$torrent->getId()
|
||||||
|
)->getName()
|
||||||
|
],
|
||||||
|
'session' =>
|
||||||
|
[
|
||||||
|
'user' =>
|
||||||
|
[
|
||||||
|
'id' => $user->getId(),
|
||||||
|
'sensitive' => $user->isSensitive(),
|
||||||
|
'moderator' => $user->isModerator(),
|
||||||
|
'owner' => $user->getId() === $torrent->getUserId(),
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case $activity::EVENT_TORRENT_STATUS_DELETE:
|
||||||
|
|
||||||
|
// Init torrent
|
||||||
|
if (!$torrent = $torrentService->getTorrent($activity->getTorrentId()))
|
||||||
|
{
|
||||||
|
throw $this->createNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $this->render(
|
||||||
|
'default/activity/event/torrent/status/delete' . $extension,
|
||||||
|
[
|
||||||
|
'id' => $activity->getId(),
|
||||||
|
'added' => $activity->getAdded(),
|
||||||
|
'user' =>
|
||||||
|
[
|
||||||
|
'id' => $activity->getUserId(),
|
||||||
|
'identicon' => $userService->identicon(
|
||||||
|
$userService->getUser(
|
||||||
|
$activity->getUserId()
|
||||||
|
)->getAddress()
|
||||||
|
)
|
||||||
|
],
|
||||||
|
'torrent' =>
|
||||||
|
[
|
||||||
|
'id' => $torrent->getId(),
|
||||||
|
'sensitive' => $torrent->isSensitive(),
|
||||||
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -830,6 +931,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -882,6 +984,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -934,6 +1037,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -986,6 +1090,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -1039,6 +1144,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -1091,6 +1197,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -1143,6 +1250,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -1195,6 +1303,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName(),
|
)->getName(),
|
||||||
@ -1248,6 +1357,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
@ -1294,6 +1404,7 @@ class ActivityController extends AbstractController
|
|||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'name' => $torrentService->readTorrentFileByTorrentId(
|
'name' => $torrentService->readTorrentFileByTorrentId(
|
||||||
$torrent->getId()
|
$torrent->getId()
|
||||||
)->getName()
|
)->getName()
|
||||||
|
@ -62,8 +62,9 @@ class TorrentController extends AbstractController
|
|||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Approved filter
|
// Access filter
|
||||||
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() && !$torrent->isApproved())
|
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() &&
|
||||||
|
(!$torrent->isStatus() || !$torrent->isApproved()))
|
||||||
{
|
{
|
||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
@ -110,9 +111,10 @@ class TorrentController extends AbstractController
|
|||||||
[
|
[
|
||||||
'session' =>
|
'session' =>
|
||||||
[
|
[
|
||||||
'user' => $user,
|
'user' => $user,
|
||||||
'id' => $user->getId(),
|
'id' => $user->getId(),
|
||||||
'moderator' => $user->isModerator()
|
'moderator' => $user->isModerator(),
|
||||||
|
'owner' => $user->getId() === $torrent->getUserId(),
|
||||||
],
|
],
|
||||||
'torrent' =>
|
'torrent' =>
|
||||||
[
|
[
|
||||||
@ -129,6 +131,7 @@ class TorrentController extends AbstractController
|
|||||||
'locales' => $torrent->getLocales(),
|
'locales' => $torrent->getLocales(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'download' =>
|
'download' =>
|
||||||
[
|
[
|
||||||
'file' =>
|
'file' =>
|
||||||
@ -226,24 +229,30 @@ class TorrentController extends AbstractController
|
|||||||
$activityService
|
$activityService
|
||||||
);
|
);
|
||||||
|
|
||||||
|
//
|
||||||
|
|
||||||
// Init request
|
// Init request
|
||||||
$query = $request->get('query') ? explode(' ', urldecode($request->get('query'))) : [];
|
$query = $request->get('query') ? explode(' ', urldecode($request->get('query'))) : [];
|
||||||
$page = $request->get('page') ? (int) $request->get('page') : 1;
|
$page = $request->get('page') ? (int) $request->get('page') : 1;
|
||||||
|
|
||||||
// Get total torrents
|
// Get total torrents
|
||||||
$total = $torrentService->findTorrentsTotal(
|
$total = $torrentService->findTorrentsTotal(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null, // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
);
|
);
|
||||||
|
|
||||||
$torrents = [];
|
$torrents = [];
|
||||||
foreach ($torrentService->findTorrents(
|
foreach ($torrentService->findTorrents(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null, // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
$this->getParameter('app.pagination'),
|
$this->getParameter('app.pagination'),
|
||||||
($page - 1) * $this->getParameter('app.pagination')
|
($page - 1) * $this->getParameter('app.pagination')
|
||||||
) as $torrent)
|
) as $torrent)
|
||||||
@ -254,18 +263,6 @@ class TorrentController extends AbstractController
|
|||||||
throw $this->createNotFoundException(); // @TODO exception
|
throw $this->createNotFoundException(); // @TODO exception
|
||||||
}
|
}
|
||||||
|
|
||||||
// Generate keywords
|
|
||||||
/* @TODO deprecated, based on active search result
|
|
||||||
$keywords = [];
|
|
||||||
foreach ($torrent->getKeywords() as $keyword)
|
|
||||||
{
|
|
||||||
if (in_array($keyword, $query))
|
|
||||||
{
|
|
||||||
$keywords[] = $keyword;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
// Generate keywords by extension
|
// Generate keywords by extension
|
||||||
$keywords = [];
|
$keywords = [];
|
||||||
|
|
||||||
@ -296,6 +293,7 @@ class TorrentController extends AbstractController
|
|||||||
'added' => $torrent->getAdded(),
|
'added' => $torrent->getAdded(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'file' =>
|
'file' =>
|
||||||
[
|
[
|
||||||
'name' => $file->getName(),
|
'name' => $file->getName(),
|
||||||
@ -401,19 +399,23 @@ class TorrentController extends AbstractController
|
|||||||
|
|
||||||
// Get total torrents
|
// Get total torrents
|
||||||
$total = $torrentService->findTorrentsTotal(
|
$total = $torrentService->findTorrentsTotal(
|
||||||
|
$user->getId(),
|
||||||
[],
|
[],
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null, // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
);
|
);
|
||||||
|
|
||||||
// Create torrents list
|
// Create torrents list
|
||||||
$torrents = [];
|
$torrents = [];
|
||||||
foreach ($torrentService->findTorrents(
|
foreach ($torrentService->findTorrents(
|
||||||
|
$user->getId(),
|
||||||
[],
|
[],
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null, // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
$this->getParameter('app.pagination'),
|
$this->getParameter('app.pagination'),
|
||||||
($page - 1) * $this->getParameter('app.pagination')
|
($page - 1) * $this->getParameter('app.pagination')
|
||||||
) as $torrent)
|
) as $torrent)
|
||||||
@ -454,6 +456,7 @@ class TorrentController extends AbstractController
|
|||||||
'added' => $torrent->getAdded(),
|
'added' => $torrent->getAdded(),
|
||||||
'approved' => $torrent->isApproved(),
|
'approved' => $torrent->isApproved(),
|
||||||
'sensitive' => $torrent->isSensitive(),
|
'sensitive' => $torrent->isSensitive(),
|
||||||
|
'status' => $torrent->isStatus(),
|
||||||
'file' =>
|
'file' =>
|
||||||
[
|
[
|
||||||
'name' => $file->getName(),
|
'name' => $file->getName(),
|
||||||
@ -558,19 +561,23 @@ class TorrentController extends AbstractController
|
|||||||
|
|
||||||
// Get total torrents
|
// Get total torrents
|
||||||
$total = $torrentService->findTorrentsTotal(
|
$total = $torrentService->findTorrentsTotal(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
);
|
);
|
||||||
|
|
||||||
// Create torrents list
|
// Create torrents list
|
||||||
$torrents = [];
|
$torrents = [];
|
||||||
foreach ($torrentService->findTorrents(
|
foreach ($torrentService->findTorrents(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$user->getLocales(),
|
$user->getLocales(),
|
||||||
!$user->isModerator() && $user->isSensitive() ? false : null, // hide on sensitive mode enabled or show all
|
!$user->isModerator() && $user->isSensitive() ? false : null,
|
||||||
!$user->isModerator() ? true : null, // show approved content only for regular users
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
$this->getParameter('app.pagination'),
|
$this->getParameter('app.pagination'),
|
||||||
($page - 1) * $this->getParameter('app.pagination')
|
($page - 1) * $this->getParameter('app.pagination')
|
||||||
) as $torrent)
|
) as $torrent)
|
||||||
@ -583,9 +590,9 @@ class TorrentController extends AbstractController
|
|||||||
|
|
||||||
$torrents[] =
|
$torrents[] =
|
||||||
[
|
[
|
||||||
'id' => $torrent->getId(),
|
'id' => $torrent->getId(),
|
||||||
'added' => $torrent->getAdded(),
|
'added' => $torrent->getAdded(),
|
||||||
'file' =>
|
'file' =>
|
||||||
[
|
[
|
||||||
'name' => $file->getName(),
|
'name' => $file->getName(),
|
||||||
],
|
],
|
||||||
@ -624,6 +631,13 @@ class TorrentController extends AbstractController
|
|||||||
ActivityService $activityService
|
ActivityService $activityService
|
||||||
): Response
|
): Response
|
||||||
{
|
{
|
||||||
|
// Init user
|
||||||
|
$user = $this->initUser(
|
||||||
|
$request,
|
||||||
|
$userService,
|
||||||
|
$activityService
|
||||||
|
);
|
||||||
|
|
||||||
// Init request
|
// Init request
|
||||||
$query = $request->get('query') ? explode(' ', urldecode($request->get('query'))) : [];
|
$query = $request->get('query') ? explode(' ', urldecode($request->get('query'))) : [];
|
||||||
$page = $request->get('page') ? (int) $request->get('page') : 1;
|
$page = $request->get('page') ? (int) $request->get('page') : 1;
|
||||||
@ -638,19 +652,23 @@ class TorrentController extends AbstractController
|
|||||||
|
|
||||||
// Get total torrents
|
// Get total torrents
|
||||||
$total = $torrentService->findTorrentsTotal(
|
$total = $torrentService->findTorrentsTotal(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
!$user->isModerator() ? $sensitive : null,
|
||||||
true, // approved only
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
);
|
);
|
||||||
|
|
||||||
// Create torrents list
|
// Create torrents list
|
||||||
$torrents = [];
|
$torrents = [];
|
||||||
foreach ($torrentService->findTorrents(
|
foreach ($torrentService->findTorrents(
|
||||||
|
$user->getId(),
|
||||||
$query,
|
$query,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
!$user->isModerator() ? $sensitive : null,
|
||||||
true, // approved only
|
!$user->isModerator() ? true : null,
|
||||||
|
!$user->isModerator() ? true : null,
|
||||||
$this->getParameter('app.pagination'),
|
$this->getParameter('app.pagination'),
|
||||||
($page - 1) * $this->getParameter('app.pagination')
|
($page - 1) * $this->getParameter('app.pagination')
|
||||||
) as $torrent)
|
) as $torrent)
|
||||||
@ -867,7 +885,8 @@ class TorrentController extends AbstractController
|
|||||||
time(),
|
time(),
|
||||||
(array) $locales,
|
(array) $locales,
|
||||||
(bool) $request->get('sensitive'),
|
(bool) $request->get('sensitive'),
|
||||||
$user->isApproved()
|
$user->isApproved(),
|
||||||
|
$user->isStatus()
|
||||||
);
|
);
|
||||||
|
|
||||||
// Add activity event
|
// Add activity event
|
||||||
@ -898,7 +917,7 @@ class TorrentController extends AbstractController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Torrent moderation
|
||||||
#[Route(
|
#[Route(
|
||||||
'/{_locale}/torrent/{torrentId}/approve/toggle',
|
'/{_locale}/torrent/{torrentId}/approve/toggle',
|
||||||
name: 'torrent_approve_toggle',
|
name: 'torrent_approve_toggle',
|
||||||
@ -975,6 +994,82 @@ class TorrentController extends AbstractController
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[Route(
|
||||||
|
'/{_locale}/torrent/{torrentId}/status/toggle',
|
||||||
|
name: 'torrent_status_toggle',
|
||||||
|
requirements:
|
||||||
|
[
|
||||||
|
'_locale' => '%app.locales%',
|
||||||
|
'torrentId' => '\d+',
|
||||||
|
],
|
||||||
|
methods:
|
||||||
|
[
|
||||||
|
'GET'
|
||||||
|
]
|
||||||
|
)]
|
||||||
|
public function status(
|
||||||
|
Request $request,
|
||||||
|
UserService $userService,
|
||||||
|
TorrentService $torrentService,
|
||||||
|
ActivityService $activityService
|
||||||
|
): Response
|
||||||
|
{
|
||||||
|
// Init user
|
||||||
|
$user = $this->initUser(
|
||||||
|
$request,
|
||||||
|
$userService,
|
||||||
|
$activityService
|
||||||
|
);
|
||||||
|
|
||||||
|
// Init torrent
|
||||||
|
if (!$torrent = $torrentService->getTorrent($request->get('torrentId')))
|
||||||
|
{
|
||||||
|
throw $this->createNotFoundException();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check permissions
|
||||||
|
if (!($user->isModerator() || $user->getId() == $torrent->getUserId()))
|
||||||
|
{
|
||||||
|
// @TODO
|
||||||
|
throw new \Exception(
|
||||||
|
$translator->trans('Access denied')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Register activity event
|
||||||
|
if (!$torrent->isStatus())
|
||||||
|
{
|
||||||
|
$activityService->addEventTorrentStatusAdd(
|
||||||
|
$user->getId(),
|
||||||
|
$torrent->getId(),
|
||||||
|
time()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$activityService->addEventTorrentStatusDelete(
|
||||||
|
$user->getId(),
|
||||||
|
$torrent->getId(),
|
||||||
|
time()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update status
|
||||||
|
$torrentService->toggleTorrentStatus(
|
||||||
|
$torrent->getId()
|
||||||
|
);
|
||||||
|
|
||||||
|
// Redirect back to form
|
||||||
|
return $this->redirectToRoute(
|
||||||
|
'torrent_info',
|
||||||
|
[
|
||||||
|
'_locale' => $request->get('_locale'),
|
||||||
|
'torrentId' => $torrent->getId()
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// Torrent locales
|
// Torrent locales
|
||||||
#[Route(
|
#[Route(
|
||||||
'/{_locale}/torrent/{torrentId}/edit/locales/{torrentLocalesId}',
|
'/{_locale}/torrent/{torrentId}/edit/locales/{torrentLocalesId}',
|
||||||
@ -1807,14 +1902,9 @@ class TorrentController extends AbstractController
|
|||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sensitive filter
|
// Access filter
|
||||||
if (!$user->isModerator() && $user->isSensitive())
|
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() &&
|
||||||
{
|
(!$torrent->isStatus() || !$torrent->isApproved()))
|
||||||
throw $this->createNotFoundException();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Approved filter
|
|
||||||
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() && !$torrent->isApproved())
|
|
||||||
{
|
{
|
||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
@ -1934,14 +2024,9 @@ class TorrentController extends AbstractController
|
|||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sensitive filter
|
// Access filter
|
||||||
if (!$user->isModerator() && $user->isSensitive())
|
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() &&
|
||||||
{
|
(!$torrent->isStatus() || !$torrent->isApproved()))
|
||||||
throw $this->createNotFoundException();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Approved filter
|
|
||||||
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() && !$torrent->isApproved())
|
|
||||||
{
|
{
|
||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
@ -2058,14 +2143,9 @@ class TorrentController extends AbstractController
|
|||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sensitive filter
|
// Access filter
|
||||||
if (!$user->isModerator() && $user->isSensitive())
|
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() &&
|
||||||
{
|
(!$torrent->isStatus() || !$torrent->isApproved()))
|
||||||
throw $this->createNotFoundException();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Approved filter
|
|
||||||
if (!$user->isModerator() && $user->getId() != $torrent->getUserId() && !$torrent->isApproved())
|
|
||||||
{
|
{
|
||||||
throw $this->createNotFoundException();
|
throw $this->createNotFoundException();
|
||||||
}
|
}
|
||||||
@ -2389,10 +2469,12 @@ class TorrentController extends AbstractController
|
|||||||
'locale' => $locale,
|
'locale' => $locale,
|
||||||
'locales' => $locales,
|
'locales' => $locales,
|
||||||
'torrents' => $torrentService->findTorrents(
|
'torrents' => $torrentService->findTorrents(
|
||||||
|
0, // no user session init, pass 0
|
||||||
[], // without keywords filter
|
[], // without keywords filter
|
||||||
$locales, // all system locales
|
$locales, // all system locales
|
||||||
null, // all sensitive levels
|
null, // all sensitive levels
|
||||||
true, // approved only
|
true, // approved only
|
||||||
|
true, // enabled only
|
||||||
1000, // @TODO limit
|
1000, // @TODO limit
|
||||||
0 // offset
|
0 // offset
|
||||||
)
|
)
|
||||||
|
@ -59,6 +59,9 @@ class Activity
|
|||||||
|
|
||||||
public const EVENT_TORRENT_WANTED_ADD = 2700;
|
public const EVENT_TORRENT_WANTED_ADD = 2700;
|
||||||
|
|
||||||
|
public const EVENT_TORRENT_STATUS_ADD = 1800;
|
||||||
|
public const EVENT_TORRENT_STATUS_DELETE = 1801;
|
||||||
|
|
||||||
// ...
|
// ...
|
||||||
|
|
||||||
#[ORM\Column]
|
#[ORM\Column]
|
||||||
|
@ -33,6 +33,9 @@ class Torrent
|
|||||||
#[ORM\Column]
|
#[ORM\Column]
|
||||||
private ?bool $approved = null;
|
private ?bool $approved = null;
|
||||||
|
|
||||||
|
#[ORM\Column]
|
||||||
|
private ?bool $status = null;
|
||||||
|
|
||||||
#[ORM\Column(length: 32)]
|
#[ORM\Column(length: 32)]
|
||||||
private ?string $md5file = null;
|
private ?string $md5file = null;
|
||||||
|
|
||||||
@ -156,6 +159,18 @@ class Torrent
|
|||||||
return $this;
|
return $this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function isStatus(): ?bool
|
||||||
|
{
|
||||||
|
return $this->status;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function setStatus(bool $status): static
|
||||||
|
{
|
||||||
|
$this->status = $status;
|
||||||
|
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
public function getSeeders(): ?int
|
public function getSeeders(): ?int
|
||||||
{
|
{
|
||||||
return $this->seeders;
|
return $this->seeders;
|
||||||
|
@ -22,38 +22,46 @@ class TorrentRepository extends ServiceEntityRepository
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function findTorrentsTotal(
|
public function findTorrentsTotal(
|
||||||
|
int $userId,
|
||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
?bool $sensitive = null,
|
?bool $sensitive = null,
|
||||||
?bool $approved = null,
|
?bool $approved = null,
|
||||||
int $limit = 10,
|
?bool $status = null,
|
||||||
int $offset = 0
|
int $limit = 10,
|
||||||
|
int $offset = 0
|
||||||
): int
|
): int
|
||||||
{
|
{
|
||||||
return $this->getTorrentsQueryByFilter(
|
return $this->getTorrentsQueryByFilter(
|
||||||
|
$userId,
|
||||||
$keywords,
|
$keywords,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
$sensitive,
|
||||||
$approved,
|
$approved,
|
||||||
|
$status,
|
||||||
)->select('count(t.id)')
|
)->select('count(t.id)')
|
||||||
->getQuery()
|
->getQuery()
|
||||||
->getSingleScalarResult();
|
->getSingleScalarResult();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function findTorrents(
|
public function findTorrents(
|
||||||
|
int $userId,
|
||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
?bool $sensitive = null,
|
?bool $sensitive = null,
|
||||||
?bool $approved = null,
|
?bool $approved = null,
|
||||||
|
?bool $status = null,
|
||||||
int $limit = 10,
|
int $limit = 10,
|
||||||
int $offset = 0
|
int $offset = 0
|
||||||
): array
|
): array
|
||||||
{
|
{
|
||||||
return $this->getTorrentsQueryByFilter(
|
return $this->getTorrentsQueryByFilter(
|
||||||
|
$userId,
|
||||||
$keywords,
|
$keywords,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
$sensitive,
|
||||||
$approved,
|
$approved,
|
||||||
|
$status,
|
||||||
)->setMaxResults($limit)
|
)->setMaxResults($limit)
|
||||||
->setFirstResult($offset)
|
->setFirstResult($offset)
|
||||||
->orderBy('t.id', 'DESC') // same as t.added
|
->orderBy('t.id', 'DESC') // same as t.added
|
||||||
@ -62,54 +70,85 @@ class TorrentRepository extends ServiceEntityRepository
|
|||||||
}
|
}
|
||||||
|
|
||||||
private function getTorrentsQueryByFilter(
|
private function getTorrentsQueryByFilter(
|
||||||
|
int $userId,
|
||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
?bool $sensitive = null,
|
?bool $sensitive = null,
|
||||||
?bool $approved = null,
|
?bool $approved = null,
|
||||||
|
?bool $status = null,
|
||||||
): \Doctrine\ORM\QueryBuilder
|
): \Doctrine\ORM\QueryBuilder
|
||||||
{
|
{
|
||||||
$query = $this->createQueryBuilder('t');
|
$query = $this->createQueryBuilder('t');
|
||||||
|
|
||||||
if ($keywords) // @TODO ANY or DTS
|
if ($keywords)
|
||||||
{
|
{
|
||||||
$andX = $query->expr()->andX();
|
$andKeywords = $query->expr()->andX();
|
||||||
|
|
||||||
foreach ($keywords as $i => $keyword)
|
foreach ($keywords as $i => $keyword)
|
||||||
{
|
{
|
||||||
$keyword = mb_strtolower($keyword); // all keywords stored in lowercase
|
$keyword = mb_strtolower($keyword); // all keywords stored in lowercase
|
||||||
|
|
||||||
$andX->add("t.keywords LIKE :keyword{$i}");
|
$andKeywords->add("t.keywords LIKE :keyword{$i}");
|
||||||
|
|
||||||
$query->setParameter(":keyword{$i}", "%{$keyword}%");
|
$query->setParameter(":keyword{$i}", "%{$keyword}%");
|
||||||
}
|
}
|
||||||
|
|
||||||
$query->andWhere($andX);
|
$query->andWhere($andKeywords);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($locales) // @TODO ANY or DTS
|
if ($locales)
|
||||||
{
|
{
|
||||||
//$orX = $query->expr()->orX();
|
$orLocales = $query->expr()->orX();
|
||||||
$orX = $query->expr()->orX();
|
|
||||||
|
|
||||||
foreach ($locales as $i => $locale)
|
foreach ($locales as $i => $locale)
|
||||||
{
|
{
|
||||||
$orX->add("t.locales LIKE :locale{$i}");
|
$orLocales->add("t.locales LIKE :locale{$i}");
|
||||||
|
$orLocales->add("t.userId = :userId");
|
||||||
|
|
||||||
$query->setParameter(":locale{$i}", "%{$locale}%");
|
$query->setParameter(":locale{$i}", "%{$locale}%");
|
||||||
|
$query->setParameter('userId', $userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
$query->andWhere($orX);
|
$query->andWhere($orLocales);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_bool($sensitive))
|
if (is_bool($sensitive))
|
||||||
{
|
{
|
||||||
$query->andWhere('t.sensitive = :sensitive')
|
$orSensitive = $query->expr()->orX();
|
||||||
->setParameter('sensitive', $sensitive);
|
|
||||||
|
$orSensitive->add("t.sensitive = :sensitive");
|
||||||
|
$orSensitive->add("t.userId = :userId");
|
||||||
|
|
||||||
|
$query->setParameter('sensitive', $sensitive);
|
||||||
|
$query->setParameter('userId', $userId);
|
||||||
|
|
||||||
|
$query->andWhere($orSensitive);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_bool($approved))
|
if (is_bool($approved))
|
||||||
{
|
{
|
||||||
$query->andWhere('t.approved = :approved')
|
$orApproved = $query->expr()->orX();
|
||||||
->setParameter('approved', $approved);
|
|
||||||
|
$orApproved->add("t.approved = :approved");
|
||||||
|
$orApproved->add("t.userId = :userId");
|
||||||
|
|
||||||
|
$query->setParameter('approved', $approved);
|
||||||
|
$query->setParameter('userId', $userId);
|
||||||
|
|
||||||
|
$query->andWhere($orApproved);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (is_bool($status))
|
||||||
|
{
|
||||||
|
$orStatus = $query->expr()->orX();
|
||||||
|
|
||||||
|
$orStatus->add("t.status = :status");
|
||||||
|
$orStatus->add("t.userId = :userId");
|
||||||
|
|
||||||
|
$query->setParameter('status', $status);
|
||||||
|
$query->setParameter('userId', $userId);
|
||||||
|
|
||||||
|
$query->andWhere($orStatus);
|
||||||
}
|
}
|
||||||
|
|
||||||
return $query;
|
return $query;
|
||||||
|
@ -62,6 +62,9 @@ class ActivityService
|
|||||||
Activity::EVENT_TORRENT_DOWNLOAD_FILE_ADD,
|
Activity::EVENT_TORRENT_DOWNLOAD_FILE_ADD,
|
||||||
Activity::EVENT_TORRENT_DOWNLOAD_MAGNET_ADD,
|
Activity::EVENT_TORRENT_DOWNLOAD_MAGNET_ADD,
|
||||||
|
|
||||||
|
Activity::EVENT_TORRENT_STATUS_ADD,
|
||||||
|
Activity::EVENT_TORRENT_STATUS_DELETE,
|
||||||
|
|
||||||
Activity::EVENT_TORRENT_WANTED_ADD,
|
Activity::EVENT_TORRENT_WANTED_ADD,
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
@ -379,6 +382,30 @@ class ActivityService
|
|||||||
] = $code;
|
] = $code;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case Activity::EVENT_TORRENT_STATUS_ADD:
|
||||||
|
|
||||||
|
$events
|
||||||
|
[
|
||||||
|
$this->translatorInterface->trans('Torrents')
|
||||||
|
]
|
||||||
|
[
|
||||||
|
$this->translatorInterface->trans('Enabled')
|
||||||
|
] = $code;
|
||||||
|
|
||||||
|
break;
|
||||||
|
|
||||||
|
case Activity::EVENT_TORRENT_STATUS_DELETE:
|
||||||
|
|
||||||
|
$events
|
||||||
|
[
|
||||||
|
$this->translatorInterface->trans('Torrents')
|
||||||
|
]
|
||||||
|
[
|
||||||
|
$this->translatorInterface->trans('Disabled')
|
||||||
|
] = $code;
|
||||||
|
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -861,6 +888,65 @@ class ActivityService
|
|||||||
return $activity;
|
return $activity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function addEventTorrentStatusAdd(
|
||||||
|
int $userId,
|
||||||
|
int $torrentId,
|
||||||
|
int $added
|
||||||
|
): ?Activity
|
||||||
|
{
|
||||||
|
$activity = new Activity();
|
||||||
|
|
||||||
|
$activity->setEvent(
|
||||||
|
Activity::EVENT_TORRENT_STATUS_ADD
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setUserId(
|
||||||
|
$userId
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setTorrentId(
|
||||||
|
$torrentId
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setAdded(
|
||||||
|
$added
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->entityManagerInterface->persist($activity);
|
||||||
|
$this->entityManagerInterface->flush();
|
||||||
|
|
||||||
|
return $activity;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function addEventTorrentStatusDelete(
|
||||||
|
int $userId,
|
||||||
|
int $torrentId,
|
||||||
|
int $added
|
||||||
|
): ?Activity
|
||||||
|
{
|
||||||
|
$activity = new Activity();
|
||||||
|
|
||||||
|
$activity->setEvent(
|
||||||
|
Activity::EVENT_TORRENT_STATUS_DELETE
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setUserId(
|
||||||
|
$userId
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setTorrentId(
|
||||||
|
$torrentId
|
||||||
|
);
|
||||||
|
|
||||||
|
$activity->setAdded(
|
||||||
|
$added
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->entityManagerInterface->persist($activity);
|
||||||
|
$this->entityManagerInterface->flush();
|
||||||
|
|
||||||
|
return $activity;
|
||||||
|
}
|
||||||
|
|
||||||
public function addEventTorrentWantedAdd(
|
public function addEventTorrentWantedAdd(
|
||||||
int $userId,
|
int $userId,
|
||||||
|
@ -192,7 +192,8 @@ class TorrentService
|
|||||||
int $added,
|
int $added,
|
||||||
array $locales,
|
array $locales,
|
||||||
bool $sensitive,
|
bool $sensitive,
|
||||||
bool $approved
|
bool $approved,
|
||||||
|
bool $status
|
||||||
): ?Torrent
|
): ?Torrent
|
||||||
{
|
{
|
||||||
$torrent = $this->addTorrent(
|
$torrent = $this->addTorrent(
|
||||||
@ -204,7 +205,8 @@ class TorrentService
|
|||||||
),
|
),
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
$sensitive,
|
||||||
$approved
|
$approved,
|
||||||
|
$status
|
||||||
);
|
);
|
||||||
|
|
||||||
$filesystem = new Filesystem();
|
$filesystem = new Filesystem();
|
||||||
@ -249,7 +251,8 @@ class TorrentService
|
|||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
bool $sensitive,
|
bool $sensitive,
|
||||||
bool $approved
|
bool $approved,
|
||||||
|
bool $status
|
||||||
): ?Torrent
|
): ?Torrent
|
||||||
{
|
{
|
||||||
$torrent = new Torrent();
|
$torrent = new Torrent();
|
||||||
@ -261,6 +264,7 @@ class TorrentService
|
|||||||
$torrent->setLocales($locales);
|
$torrent->setLocales($locales);
|
||||||
$torrent->setSensitive($sensitive);
|
$torrent->setSensitive($sensitive);
|
||||||
$torrent->setApproved($approved);
|
$torrent->setApproved($approved);
|
||||||
|
$torrent->setStatus($status);
|
||||||
|
|
||||||
$this->entityManagerInterface->persist($torrent);
|
$this->entityManagerInterface->persist($torrent);
|
||||||
$this->entityManagerInterface->flush();
|
$this->entityManagerInterface->flush();
|
||||||
@ -292,6 +296,30 @@ class TorrentService
|
|||||||
return $torrent;
|
return $torrent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function toggleTorrentStatus(
|
||||||
|
int $torrentId
|
||||||
|
): ?Torrent
|
||||||
|
{
|
||||||
|
$torrent = $this->getTorrent($torrentId);
|
||||||
|
|
||||||
|
$torrent->setStatus(
|
||||||
|
!$torrent->isStatus() // toggle current value
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->entityManagerInterface->persist($torrent);
|
||||||
|
$this->entityManagerInterface->flush();
|
||||||
|
|
||||||
|
$this->updateTorrentLocales(
|
||||||
|
$torrent->getId()
|
||||||
|
);
|
||||||
|
|
||||||
|
$this->updateTorrentSensitive(
|
||||||
|
$torrent->getId()
|
||||||
|
);
|
||||||
|
|
||||||
|
return $torrent;
|
||||||
|
}
|
||||||
|
|
||||||
public function getTorrentScrapeQueue(): ?Torrent
|
public function getTorrentScrapeQueue(): ?Torrent
|
||||||
{
|
{
|
||||||
return $this->entityManagerInterface
|
return $this->entityManagerInterface
|
||||||
@ -305,40 +333,48 @@ class TorrentService
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function findTorrents(
|
public function findTorrents(
|
||||||
|
int $userId,
|
||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
?bool $sensitive,
|
?bool $sensitive,
|
||||||
?bool $approved,
|
?bool $approved,
|
||||||
int $limit,
|
?bool $status,
|
||||||
int $offset
|
int $limit,
|
||||||
|
int $offset
|
||||||
) : array
|
) : array
|
||||||
{
|
{
|
||||||
return $this->entityManagerInterface
|
return $this->entityManagerInterface
|
||||||
->getRepository(Torrent::class)
|
->getRepository(Torrent::class)
|
||||||
->findTorrents(
|
->findTorrents(
|
||||||
|
$userId,
|
||||||
$keywords,
|
$keywords,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
$sensitive,
|
||||||
$approved,
|
$approved,
|
||||||
|
$status,
|
||||||
$limit,
|
$limit,
|
||||||
$offset
|
$offset
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function findTorrentsTotal(
|
public function findTorrentsTotal(
|
||||||
|
int $userId,
|
||||||
array $keywords,
|
array $keywords,
|
||||||
array $locales,
|
array $locales,
|
||||||
?bool $sensitive,
|
?bool $sensitive,
|
||||||
?bool $approved
|
?bool $approved,
|
||||||
|
?bool $status
|
||||||
) : int
|
) : int
|
||||||
{
|
{
|
||||||
return $this->entityManagerInterface
|
return $this->entityManagerInterface
|
||||||
->getRepository(Torrent::class)
|
->getRepository(Torrent::class)
|
||||||
->findTorrentsTotal(
|
->findTorrentsTotal(
|
||||||
|
$userId,
|
||||||
$keywords,
|
$keywords,
|
||||||
$locales,
|
$locales,
|
||||||
$sensitive,
|
$sensitive,
|
||||||
$approved
|
$approved,
|
||||||
|
$status
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -9,9 +9,11 @@
|
|||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -11,7 +11,11 @@
|
|||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,7 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -11,9 +11,11 @@
|
|||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,7 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -14,9 +14,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -14,9 +14,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -20,9 +20,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -8,9 +8,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -20,9 +20,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -8,9 +8,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -22,9 +22,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -8,9 +8,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -20,9 +20,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -8,9 +8,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -20,10 +20,12 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -8,10 +8,12 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -20,10 +20,12 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -8,10 +8,12 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -20,10 +20,12 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -8,10 +8,12 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -20,10 +20,12 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -8,10 +8,12 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -12,9 +12,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -13,9 +13,11 @@
|
|||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -6,9 +6,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
{% elseif torrent.sensitive == true %}
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
<div class="row">
|
||||||
|
<div class="column width-80">
|
||||||
|
<a href="{{ path('user_info', { userId : user.id }) }}">
|
||||||
|
<img class="border-radius-50 border-color-default vertical-align-middle" src="{{ user.identicon }}" alt="{{ 'identicon' | trans }}" />
|
||||||
|
</a>
|
||||||
|
<span class="margin-l-4-px">
|
||||||
|
{{ 'have enabled torrent' | trans }}
|
||||||
|
</span>
|
||||||
|
{% if session.user.moderator or session.user.owner %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% else %}
|
||||||
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
|
{% else %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
<div class="column width-20 text-right">
|
||||||
|
{{ added | format_ago }}
|
||||||
|
</div>
|
||||||
|
</div>
|
26
templates/default/activity/event/torrent/status/add.rss.twig
Normal file
26
templates/default/activity/event/torrent/status/add.rss.twig
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
<item>
|
||||||
|
<title>
|
||||||
|
{{ 'User' | trans }}
|
||||||
|
#{{ user.id }}
|
||||||
|
{{ 'have enabled torrent' | trans }}
|
||||||
|
{% if session.user.moderator or session.user.owner %}
|
||||||
|
{{ torrent.name }}
|
||||||
|
{% else %}
|
||||||
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
|
{% else %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
</title>
|
||||||
|
<author>#{{ user.id }}</author>
|
||||||
|
<pubDate>{{ added | date('D, d M Y h:i:s O') }}</pubDate>
|
||||||
|
<guid>{{ url('torrent_info', { torrentId : torrent.id }) }}#activity-{{ id }}</guid>
|
||||||
|
<link>{{ url('torrent_info', { torrentId : torrent.id }) }}#activity</link>
|
||||||
|
</item>
|
@ -0,0 +1,30 @@
|
|||||||
|
<div class="row">
|
||||||
|
<div class="column width-80">
|
||||||
|
<a href="{{ path('user_info', { userId : user.id }) }}">
|
||||||
|
<img class="border-radius-50 border-color-default vertical-align-middle" src="{{ user.identicon }}" alt="{{ 'identicon' | trans }}" />
|
||||||
|
</a>
|
||||||
|
<span class="margin-l-4-px">
|
||||||
|
{{ 'have disabled torrent' | trans }}
|
||||||
|
</span>
|
||||||
|
{% if session.user.moderator or session.user.owner %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% else %}
|
||||||
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }}
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
|
{% else %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
<div class="column width-20 text-right">
|
||||||
|
{{ added | format_ago }}
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -0,0 +1,26 @@
|
|||||||
|
<item>
|
||||||
|
<title>
|
||||||
|
{{ 'User' | trans }}
|
||||||
|
#{{ user.id }}
|
||||||
|
{{ 'have disabled torrent' | trans }}
|
||||||
|
{% if session.user.moderator or session.user.owner %}
|
||||||
|
{{ torrent.name }}
|
||||||
|
{% else %}
|
||||||
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }}
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
|
{% else %}
|
||||||
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
{{ torrent.name }}
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
</title>
|
||||||
|
<author>#{{ user.id }}</author>
|
||||||
|
<pubDate>{{ added | date('D, d M Y h:i:s O') }}</pubDate>
|
||||||
|
<guid>{{ url('torrent_info', { torrentId : torrent.id }) }}#activity-{{ id }}</guid>
|
||||||
|
<link>{{ url('torrent_info', { torrentId : torrent.id }) }}#activity</link>
|
||||||
|
</item>
|
@ -6,7 +6,11 @@
|
|||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
<a href="{{ path('torrent_info', { torrentId : torrent.id }) }}">
|
||||||
|
@ -4,7 +4,11 @@
|
|||||||
{% if session.user.moderator or session.user.owner %}
|
{% if session.user.moderator or session.user.owner %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.status == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'disabled' | trans }})
|
||||||
|
{% elseif torrent.approved == false %}
|
||||||
|
#{{ torrent.id }} ({{ 'waiting for approve' | trans }})
|
||||||
|
{% elseif torrent.sensitive == true and session.user.sensitive == true %}
|
||||||
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
#{{ torrent.id }} ({{ 'sensitive' | trans }})
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ torrent.name }}
|
{{ torrent.name }}
|
||||||
|
@ -80,7 +80,7 @@
|
|||||||
</div>
|
</div>
|
||||||
<table class="width-100">
|
<table class="width-100">
|
||||||
<tbody>
|
<tbody>
|
||||||
{% if session.moderator %}
|
{% if session.moderator or session.owner %}
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
<div class="padding-y-8-px border-bottom-default text-right">
|
<div class="padding-y-8-px border-bottom-default text-right">
|
||||||
@ -90,19 +90,19 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="padding-t-16-px">
|
<td class="padding-t-16-px">
|
||||||
{{ 'Approved' | trans }}
|
{{ 'Enabled' | trans }}
|
||||||
</td>
|
</td>
|
||||||
<td class="padding-t-16-px">
|
<td class="padding-t-16-px">
|
||||||
{% if torrent.approved %}
|
{% if torrent.status %}
|
||||||
{{ 'Yes' | trans }}
|
{{ 'Yes' | trans }}
|
||||||
<a class="float-right" href="{{ path('torrent_approve_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
<a class="float-right" href="{{ path('torrent_status_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
||||||
<path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/>
|
<path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/>
|
||||||
</svg>
|
</svg>
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ 'No' | trans }}
|
{{ 'No' | trans }}
|
||||||
<a class="float-right text-color-red" href="{{ path('torrent_approve_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
<a class="float-right text-color-red" href="{{ path('torrent_status_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
||||||
<path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/>
|
<path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/>
|
||||||
</svg>
|
</svg>
|
||||||
@ -110,6 +110,30 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
{% if session.moderator %}
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
{{ 'Approved' | trans }}
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
{% if torrent.approved %}
|
||||||
|
{{ 'Yes' | trans }}
|
||||||
|
<a class="float-right" href="{{ path('torrent_approve_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
||||||
|
<path d="M5 3a5 5 0 0 0 0 10h6a5 5 0 0 0 0-10H5zm6 9a4 4 0 1 1 0-8 4 4 0 0 1 0 8z"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
{% else %}
|
||||||
|
{{ 'No' | trans }}
|
||||||
|
<a class="float-right text-color-red" href="{{ path('torrent_approve_toggle', { torrentId : torrent.id }) }}" title="{{ 'Toggle' | trans }}">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16">
|
||||||
|
<path d="M11 4a4 4 0 0 1 0 8H8a4.992 4.992 0 0 0 2-4 4.992 4.992 0 0 0-2-4h3zm-6 8a4 4 0 1 1 0-8 4 4 0 0 1 0 8zM0 8a5 5 0 0 0 5 5h6a5 5 0 0 0 0-10H5a5 5 0 0 0-5 5z"/>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
{% endif %}
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="2">
|
<td colspan="2">
|
||||||
|
@ -39,6 +39,14 @@
|
|||||||
{{ 'wanted' | trans }}
|
{{ 'wanted' | trans }}
|
||||||
</a>
|
</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if torrent.status == false %}
|
||||||
|
<sub class="margin-l-8-px float-right opacity-06 hover-opacity-1" title="{{ 'Disabled' | trans }}">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16">
|
||||||
|
<path d="m10.79 12.912-1.614-1.615a3.5 3.5 0 0 1-4.474-4.474l-2.06-2.06C.938 6.278 0 8 0 8s3 5.5 8 5.5a7.029 7.029 0 0 0 2.79-.588zM5.21 3.088A7.028 7.028 0 0 1 8 2.5c5 0 8 5.5 8 5.5s-.939 1.721-2.641 3.238l-2.062-2.062a3.5 3.5 0 0 0-4.474-4.474L5.21 3.089z"/>
|
||||||
|
<path d="M5.525 7.646a2.5 2.5 0 0 0 2.829 2.829l-2.83-2.829zm4.95.708-2.829-2.83a2.5 2.5 0 0 1 2.829 2.829zm3.171 6-12-12 .708-.708 12 12-.708.708z"/>
|
||||||
|
</svg>
|
||||||
|
</sub>
|
||||||
|
{% endif %}
|
||||||
{% if torrent.approved == false %}
|
{% if torrent.approved == false %}
|
||||||
<sub class="margin-l-8-px float-right opacity-06 hover-opacity-1" title="{{ 'Waiting for approve' | trans }}">
|
<sub class="margin-l-8-px float-right opacity-06 hover-opacity-1" title="{{ 'Waiting for approve' | trans }}">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16">
|
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16">
|
||||||
@ -47,7 +55,7 @@
|
|||||||
</sub>
|
</sub>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% if torrent.sensitive == true %}
|
{% if torrent.sensitive == true %}
|
||||||
<sub class="margin-l-8-px float-right opacity-06 hover-opacity-1" title="{{ 'Content visible for non sensitive users only' | trans }}">
|
<sub class="margin-l-8-px float-right opacity-06 hover-opacity-1" title="{{ 'Sensitive' | trans }}">
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16">
|
<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" fill="currentColor" viewBox="0 0 16 16">
|
||||||
<path d="m9.97 4.88.953 3.811C10.159 8.878 9.14 9 8 9c-1.14 0-2.158-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.275 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/>
|
<path d="m9.97 4.88.953 3.811C10.159 8.878 9.14 9 8 9c-1.14 0-2.158-.122-2.923-.309L6.03 4.88C6.635 4.957 7.3 5 8 5s1.365-.043 1.97-.12zm-.245-.978L8.97.88C8.718-.13 7.282-.13 7.03.88L6.275 3.9C6.8 3.965 7.382 4 8 4c.618 0 1.2-.036 1.725-.098zm4.396 8.613a.5.5 0 0 1 .037.96l-6 2a.5.5 0 0 1-.316 0l-6-2a.5.5 0 0 1 .037-.96l2.391-.598.565-2.257c.862.212 1.964.339 3.165.339s2.303-.127 3.165-.339l.565 2.257 2.391.598z"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
@ -65,34 +65,39 @@
|
|||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="padding-t-16-px">
|
<td class="padding-t-16-px">
|
||||||
{{ 'Locales' | trans }}
|
<div class="margin-t-4-px">
|
||||||
|
{{ 'Locales' | trans }}
|
||||||
|
</div>
|
||||||
</td>
|
</td>
|
||||||
<td class="padding-t-16-px">
|
<td class="padding-t-16-px padding-b-8-px">
|
||||||
{% for locale in locales %}
|
{% for locale in locales %}
|
||||||
<div class="margin-t-8-px margin-b-4-px margin-r-8-px display-inline-block min-width-120-px">
|
<div class="margin-t-4-px margin-b-8-px margin-r-8-px display-inline-block min-width-120-px">
|
||||||
{% if locale in user.locales %}
|
{% if locale in user.locales %}
|
||||||
<input name="locales[]" id="{{ locale }}" type="checkbox" value="{{ locale }}" checked="checked" />
|
<input name="locales[]" id="{{ locale }}" type="checkbox" value="{{ locale }}" checked="checked" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<input name="locales[]" id="{{ locale }}" type="checkbox" value="{{ locale }}" />
|
<input name="locales[]" id="{{ locale }}" type="checkbox" value="{{ locale }}" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<label for="{{ locale }}">
|
<label class="margin-x-4-px" for="{{ locale }}">
|
||||||
{{ locale|locale_name(locale)|u.title }}
|
{{ locale | locale_name(locale) | u.title }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="padding-t-8-px">
|
<td class="padding-y-12-px">
|
||||||
{{ 'Hide sensitive' | trans }}
|
{{ 'Sensitive' | trans }}
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td class="padding-y-12-px border-top-default">
|
||||||
<div class="padding-t-8-px">
|
<div class="margin-r-8-px">
|
||||||
{% if user.sensitive %}
|
{% if user.sensitive %}
|
||||||
<input name="sensitive" type="checkbox" value="true" checked="checked" />
|
<input name="sensitive" id="sensitive" type="checkbox" value="true" checked="checked" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<input name="sensitive" type="checkbox" value="true" />
|
<input name="sensitive" id="sensitive" type="checkbox" value="true" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<label class="margin-x-4-px" for="sensitive">
|
||||||
|
{{ 'Hide' | trans }}
|
||||||
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -104,20 +109,22 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td colspan="2"></td>
|
<td colspan="2"></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
{% set i = 0 %}
|
||||||
{% for group, event in events %}
|
{% for group, event in events %}
|
||||||
|
{% set i = i + 1 %}
|
||||||
<tr>
|
<tr>
|
||||||
<td class="padding-t-8-px">
|
<td class="padding-y-12-px">
|
||||||
{{ group }}
|
{{ group }}
|
||||||
</td>
|
</td>
|
||||||
<td class="padding-t-8-px">
|
<td class="padding-t-8-px {% if i > 1 %}border-top-default{% endif %}">
|
||||||
{% for key, value in event %}
|
{% for key, value in event %}
|
||||||
<span class="margin-r-8-px">
|
<span class="margin-t-4-px margin-b-8-px margin-r-8-px display-inline-block min-width-120-px">
|
||||||
{% if value in user.events %}
|
{% if value in user.events %}
|
||||||
<input name="events[]" id="event-{{ value }}" type="checkbox" value="{{ value }}" checked="checked" />
|
<input name="events[]" id="event-{{ value }}" type="checkbox" value="{{ value }}" checked="checked" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<input name="events[]" id="event-{{ value }}" type="checkbox" value="{{ value }}" />
|
<input name="events[]" id="event-{{ value }}" type="checkbox" value="{{ value }}" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
<label for="event-{{ value }}">
|
<label class="margin-x-4-px" for="event-{{ value }}">
|
||||||
{{ key }}
|
{{ key }}
|
||||||
</label>
|
</label>
|
||||||
</span>
|
</span>
|
||||||
@ -136,10 +143,13 @@
|
|||||||
</td>
|
</td>
|
||||||
<td class="padding-y-16-px">
|
<td class="padding-y-16-px">
|
||||||
{% if user.yggdrasil %}
|
{% if user.yggdrasil %}
|
||||||
<input name="yggdrasil" type="checkbox" value="true" checked="checked" />
|
<input name="yggdrasil" id="yggdrasil" type="checkbox" value="true" checked="checked" />
|
||||||
{% else %}
|
{% else %}
|
||||||
<input name="yggdrasil" type="checkbox" value="true" />
|
<input name="yggdrasil" id="yggdrasil" type="checkbox" value="true" />
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<label class="margin-x-4-px" for="yggdrasil">
|
||||||
|
{{ 'Enabled' | trans }}
|
||||||
|
</label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Waiting for approve</target>
|
<target>Waiting for approve</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Content visible for non sensitive users only</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Size</target>
|
<target>Size</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Seeders wanted for torrent</target>
|
<target>Seeders wanted for torrent</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Hide sensitive</target>
|
<target>Hide</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>have disabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>have enabled torrent</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>disabled</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>На рассмотрении</target>
|
<target>На рассмотрении</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Содержимое видимо только для нечувствительных пользователей</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Размер</target>
|
<target>Размер</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Требуется раздача для торрента</target>
|
<target>Требуется раздача для торрента</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Скрывать чувствительное содержимое</target>
|
<target>Скрыть</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>отключил торрент</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>включил торрент</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>отключено</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
@ -169,10 +169,6 @@
|
|||||||
<source>Waiting for approve</source>
|
<source>Waiting for approve</source>
|
||||||
<target>Очікує на підтвердження</target>
|
<target>Очікує на підтвердження</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="uP0WnsM" resname="Content visible for non sensitive users only">
|
|
||||||
<source>Content visible for non sensitive users only</source>
|
|
||||||
<target>Контент видимий лише для нечутливих користувачів</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="GvhRkHM" resname="Size">
|
<trans-unit id="GvhRkHM" resname="Size">
|
||||||
<source>Size</source>
|
<source>Size</source>
|
||||||
<target>Розмір</target>
|
<target>Розмір</target>
|
||||||
@ -725,9 +721,21 @@
|
|||||||
<source>Seeders wanted for torrent</source>
|
<source>Seeders wanted for torrent</source>
|
||||||
<target>Розшукуються роздачі для торенту</target>
|
<target>Розшукуються роздачі для торенту</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="147HHy2" resname="Hide sensitive">
|
<trans-unit id="rCCle.3" resname="Hide">
|
||||||
<source>Hide sensitive</source>
|
<source>Hide</source>
|
||||||
<target>Приховувати чутливий вміст</target>
|
<target>Приховати</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="m11TRpU" resname="have disabled torrent">
|
||||||
|
<source>have disabled torrent</source>
|
||||||
|
<target>вимкнув торент</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="qfr4ljO" resname="have enabled torrent">
|
||||||
|
<source>have enabled torrent</source>
|
||||||
|
<target>увімкнув торент</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="F_s8AWj" resname="disabled">
|
||||||
|
<source>disabled</source>
|
||||||
|
<target>вимкнено</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user