Compare commits
14 commits
cb413fd404
...
c71578dff5
Author | SHA1 | Date | |
---|---|---|---|
|
c71578dff5 | ||
|
e3b837f1b7 | ||
|
b59bfadec7 | ||
|
c6fe2b6cd1 | ||
|
f6269dde2d | ||
|
06b9ca4768 | ||
|
1633288447 | ||
|
86195ac0f9 | ||
|
980b6e6f9e | ||
|
fabef37d71 | ||
|
bd77b30372 | ||
|
dc260ea9c8 | ||
|
b263906387 | ||
|
b4f3878845 |
|
@ -44,7 +44,7 @@
|
|||
<div id="posts"<!-- IF S_SPECIAL_RANK --> style="display: none;"<!-- ENDIF -->>
|
||||
<dl>
|
||||
<dt><label for="min_posts">{L_RANK_MINIMUM}{L_COLON}</label></dt>
|
||||
<dd><input name="min_posts" type="number" id="min_posts" min="0" max="9999999999" value="{MIN_POSTS}" /></dd>
|
||||
<dd><input name="min_posts" type="number" id="min_posts" min="0" max="16777215" value="{MIN_POSTS}" /></dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ $lang = array_merge($lang, array(
|
|||
<br><br>
|
||||
Our forums are powered by phpBB (hereinafter “they”, “them”, “their”, “phpBB software”, “www.phpbb.com”, “phpBB Limited”, “phpBB Teams”) which is a bulletin board solution released under the “<a href="http://opensource.org/licenses/gpl-2.0.php">GNU General Public License v2</a>” (hereinafter “GPL”) and can be downloaded from <a href="https://www.phpbb.com/">www.phpbb.com</a>. The phpBB software only facilitates internet based discussions; phpBB Limited is not responsible for what we allow and/or disallow as permissible content and/or conduct. For further information about phpBB, please see: <a href="https://www.phpbb.com/">https://www.phpbb.com/</a>.
|
||||
<br><br>
|
||||
You agree not to post any abusive, obscene, vulgar, slanderous, hateful, threatening, sexually-orientated or any other material that may violate any laws be it of your country, the country where “%1$s” is hosted or International Law. Doing so may lead to you being immediately and permanently banned, with notification of your Internet Service Provider if deemed required by us. The IP address of all posts are recorded to aid in enforcing these conditions. You agree that “%1$s” have the right to remove, edit, move or close any topic at any time should we see fit. As a user you agree to any information you have entered to being stored in a database. While this information will not be disclosed to any third party without your consent, neither “%1$s” nor phpBB shall be held responsible for any hacking attempt that may lead to the data being compromised.
|
||||
You agree not to post any abusive, obscene, vulgar, libellous, hateful, threatening, sexually-orientated or any other material that may violate any laws be it of your country, the country where “%1$s” is hosted or International Law. Doing so may lead to you being immediately and permanently banned, with notification of your Internet Service Provider if deemed required by us. The IP address of all posts are recorded to aid in enforcing these conditions. You agree that “%1$s” have the right to remove, edit, move or close any topic at any time should we see fit. As a user you agree to any information you have entered to being stored in a database. While this information will not be disclosed to any third party without your consent, neither “%1$s” nor phpBB shall be held responsible for any hacking attempt that may lead to the data being compromised.
|
||||
',
|
||||
|
||||
'PRIVACY_POLICY' => 'This policy explains in detail how “%1$s” along with its affiliated companies (hereinafter “we”, “us”, “our”, “%1$s”, “%2$s”) and phpBB (hereinafter “they”, “them”, “their”, “phpBB software”, “www.phpbb.com”, “phpBB Limited”, “phpBB Teams”) use any information collected during any session of usage by you (hereinafter “your information”).
|
||||
|
|
|
@ -15,6 +15,8 @@ namespace phpbb\db\doctrine;
|
|||
|
||||
use Doctrine\DBAL\Platforms\AbstractPlatform;
|
||||
use Doctrine\DBAL\Types\Type;
|
||||
use phpbb\db\middleware\oracle\platform as oracle_platform;
|
||||
use phpbb\db\middleware\postgresql\platform as postgresql_platform;
|
||||
|
||||
/**
|
||||
* Case-insensitive string type (only supported by Postgres).
|
||||
|
|
|
@ -13,12 +13,17 @@
|
|||
|
||||
namespace phpbb\db\doctrine;
|
||||
|
||||
use Doctrine\DBAL\Configuration;
|
||||
use Doctrine\DBAL\Connection;
|
||||
use Doctrine\DBAL\DriverManager;
|
||||
use Doctrine\DBAL\Exception;
|
||||
use Doctrine\DBAL\Types\Type;
|
||||
use InvalidArgumentException;
|
||||
use phpbb\config_php_file;
|
||||
use phpbb\db\middleware\mysql\middleware as mysql_middleware;
|
||||
use phpbb\db\middleware\oracle\middleware as oracle_middleware;
|
||||
use phpbb\db\middleware\postgresql\middleware as postgresql_middleware;
|
||||
use phpbb\db\middleware\sqlsrv\middleware as sqlsrv_middleware;
|
||||
use phpbb\exception\runtime_exception;
|
||||
|
||||
/**
|
||||
|
@ -94,9 +99,21 @@ class connection_factory
|
|||
$port
|
||||
);
|
||||
|
||||
$middleware = match($driver)
|
||||
{
|
||||
'pdo_mysql', 'mysqli' => [new mysql_middleware()],
|
||||
'pdo_oci', 'oci8' => [new oracle_middleware()],
|
||||
'pdo_pgsql', 'pgsql' => [new postgresql_middleware()],
|
||||
'pdo_sqlsrv', 'sqlsrv' => [new sqlsrv_middleware()],
|
||||
default => [],
|
||||
};
|
||||
|
||||
try
|
||||
{
|
||||
$connection = DriverManager::getConnection($params);
|
||||
$connection_config = new Configuration();
|
||||
$connection_config->setMiddlewares($middleware);
|
||||
|
||||
$connection = DriverManager::getConnection($params, $connection_config);
|
||||
if (!Type::hasType(case_insensitive_string::CASE_INSENSITIVE_STRING))
|
||||
{
|
||||
Type::addType(case_insensitive_string::CASE_INSENSITIVE_STRING, case_insensitive_string::class);
|
||||
|
|
|
@ -13,9 +13,6 @@
|
|||
|
||||
namespace phpbb\db\doctrine;
|
||||
|
||||
use InvalidArgumentException;
|
||||
use phpbb\db\doctrine\oci8\driver as oci8_driver;
|
||||
|
||||
/**
|
||||
* Helper class to generate Doctrine DBAL configuration.
|
||||
*/
|
||||
|
@ -33,7 +30,7 @@ class connection_parameter_factory
|
|||
*
|
||||
* @return array Doctrine DBAL connection parameters.
|
||||
*
|
||||
* @throws InvalidArgumentException If a required parameter is empty or null.
|
||||
* @throws \InvalidArgumentException If a required parameter is empty or null.
|
||||
*/
|
||||
public static function get_configuration(
|
||||
string $driver,
|
||||
|
@ -69,7 +66,7 @@ class connection_parameter_factory
|
|||
*
|
||||
* @return array Doctrine's DBAL configuration for SQLite.
|
||||
*
|
||||
* @throws InvalidArgumentException If a required parameter is empty or null.
|
||||
* @throws \InvalidArgumentException If a required parameter is empty or null.
|
||||
*/
|
||||
private static function build_connection_parameters(
|
||||
array $params,
|
||||
|
@ -88,7 +85,7 @@ class connection_parameter_factory
|
|||
|
||||
if (empty($user) || empty($name))
|
||||
{
|
||||
throw new InvalidArgumentException('Required database parameter is not set.');
|
||||
throw new \InvalidArgumentException('Required database parameter is not set.');
|
||||
}
|
||||
|
||||
$params = array_merge($params, [
|
||||
|
@ -146,37 +143,17 @@ class connection_parameter_factory
|
|||
*/
|
||||
private static function enrich_parameters(array $params) : array
|
||||
{
|
||||
$enrichment_tags = [
|
||||
'pdo_mysql' => [
|
||||
'charset' => 'UTF8',
|
||||
'platform' => new mysql_platform(),
|
||||
],
|
||||
'oci8' => [
|
||||
'charset' => 'UTF8',
|
||||
'platform' => new oracle_platform(),
|
||||
'driverClass' => oci8_driver::class,
|
||||
],
|
||||
'pdo_pgsql' => [
|
||||
'charset' => 'UTF8',
|
||||
'platform' => new postgresql_platform(),
|
||||
],
|
||||
'pdo_sqlsrv' => [
|
||||
'platform' => new sqlsrv_platform(),
|
||||
],
|
||||
];
|
||||
if (in_array($params['driver'], ['mysqli', 'pdo_mysql', 'pgsql', 'pdo_pgsql', 'oci8', 'pdo_oci']))
|
||||
{
|
||||
$params['charset'] = 'UTF8';
|
||||
}
|
||||
|
||||
if ($params['driver'] === 'pdo_mysql' && extension_loaded('pdo_mysql'))
|
||||
{
|
||||
$enrichment_tags['pdo_mysql'][\PDO::MYSQL_ATTR_FOUND_ROWS] = true;
|
||||
$params[\PDO::MYSQL_ATTR_FOUND_ROWS] = true;
|
||||
}
|
||||
|
||||
$driver = $params['driver'];
|
||||
if (!array_key_exists($driver, $enrichment_tags))
|
||||
{
|
||||
return $params;
|
||||
}
|
||||
|
||||
return array_merge($params, $enrichment_tags[$driver]);
|
||||
return $params;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -1,99 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine\oci8;
|
||||
|
||||
use Doctrine\DBAL\Driver\Connection as DriverConnection;
|
||||
use Doctrine\DBAL\Driver\Result as DriverResult;
|
||||
use Doctrine\DBAL\Driver\Statement as DriverStatement;
|
||||
use Doctrine\DBAL\ParameterType;
|
||||
|
||||
class connection implements DriverConnection
|
||||
{
|
||||
/**
|
||||
* @var DriverConnection
|
||||
*/
|
||||
private $wrapped;
|
||||
|
||||
/**
|
||||
* @param DriverConnection $wrapped
|
||||
*/
|
||||
public function __construct(DriverConnection $wrapped)
|
||||
{
|
||||
$this->wrapped = $wrapped;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function prepare(string $sql): DriverStatement
|
||||
{
|
||||
return new statement($this->wrapped->prepare($sql));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function query(string $sql): DriverResult
|
||||
{
|
||||
return new result($this->wrapped->query($sql));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function quote($value, $type = ParameterType::STRING)
|
||||
{
|
||||
return $this->wrapped->quote($value, $type);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function exec(string $sql): int
|
||||
{
|
||||
return $this->wrapped->exec($sql);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function lastInsertId($name = null)
|
||||
{
|
||||
return $this->wrapped->lastInsertId($name);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function beginTransaction(): bool
|
||||
{
|
||||
return $this->wrapped->beginTransaction();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function commit(): bool
|
||||
{
|
||||
return $this->wrapped->commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function rollBack(): bool
|
||||
{
|
||||
return $this->wrapped->rollBack();
|
||||
}
|
||||
}
|
|
@ -1,65 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine\oci8;
|
||||
|
||||
use Doctrine\DBAL\Connection as DoctrineConnection;
|
||||
use Doctrine\DBAL\Driver\API\ExceptionConverter;
|
||||
use Doctrine\DBAL\Platforms\AbstractPlatform;
|
||||
use Doctrine\DBAL\Driver as DoctrineDriver;
|
||||
use Doctrine\DBAL\Driver\OCI8\Driver as OCI8Driver;
|
||||
|
||||
class driver implements DoctrineDriver
|
||||
{
|
||||
/**
|
||||
* @var DoctrineDriver
|
||||
*/
|
||||
private $wrapped;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->wrapped = new OCI8Driver();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function connect(array $params)
|
||||
{
|
||||
return new connection($this->wrapped->connect($params));
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function getDatabasePlatform()
|
||||
{
|
||||
return $this->wrapped->getDatabasePlatform();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function getSchemaManager(DoctrineConnection $conn, AbstractPlatform $platform)
|
||||
{
|
||||
return new schema_manager($conn, $platform);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function getExceptionConverter(): ExceptionConverter
|
||||
{
|
||||
return $this->wrapped->getExceptionConverter();
|
||||
}
|
||||
}
|
|
@ -1,109 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine\oci8;
|
||||
|
||||
use Doctrine\DBAL\Driver\Result as DriverResult;
|
||||
|
||||
class result implements DriverResult
|
||||
{
|
||||
/**
|
||||
* @var DriverResult
|
||||
*/
|
||||
private $wrapped;
|
||||
|
||||
/**
|
||||
* @param DriverResult $wrapped
|
||||
*/
|
||||
public function __construct(DriverResult $wrapped)
|
||||
{
|
||||
$this->wrapped = $wrapped;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchNumeric()
|
||||
{
|
||||
return $this->wrapped->fetchNumeric();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchAssociative()
|
||||
{
|
||||
return array_change_key_case($this->wrapped->fetchAssociative(), CASE_LOWER);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchOne()
|
||||
{
|
||||
return $this->wrapped->fetchOne();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchAllNumeric(): array
|
||||
{
|
||||
return $this->wrapped->fetchAllNumeric();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchAllAssociative(): array
|
||||
{
|
||||
$rows = [];
|
||||
foreach ($this->wrapped->fetchAllAssociative() as $row)
|
||||
{
|
||||
$rows[] = array_change_key_case($row, CASE_LOWER);
|
||||
}
|
||||
return $rows;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function fetchFirstColumn(): array
|
||||
{
|
||||
return $this->wrapped->fetchFirstColumn();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function rowCount(): int
|
||||
{
|
||||
return $this->wrapped->rowCount();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function columnCount(): int
|
||||
{
|
||||
return $this->wrapped->columnCount();
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function free(): void
|
||||
{
|
||||
$this->wrapped->free();
|
||||
}
|
||||
}
|
|
@ -1,58 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine\oci8;
|
||||
|
||||
use Doctrine\DBAL\Driver\Result as DriverResult;
|
||||
use Doctrine\DBAL\Driver\Statement as DriverStatement;
|
||||
use Doctrine\DBAL\ParameterType;
|
||||
|
||||
class statement implements DriverStatement
|
||||
{
|
||||
/**
|
||||
* @var DriverStatement
|
||||
*/
|
||||
private $wrapped;
|
||||
|
||||
/**
|
||||
* @param DriverStatement $wrapped
|
||||
*/
|
||||
public function __construct(DriverStatement $wrapped)
|
||||
{
|
||||
$this->wrapped = $wrapped;
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function bindValue($param, $value, $type = ParameterType::STRING): bool
|
||||
{
|
||||
return $this->wrapped->bindValue($param, $value, $type);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function bindParam($param, &$variable, $type = ParameterType::STRING, $length = null): bool
|
||||
{
|
||||
return $this->wrapped->bindParam($param, $variable, $type, $length);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function execute($params = null): DriverResult
|
||||
{
|
||||
return new result($this->wrapped->execute($params));
|
||||
}
|
||||
}
|
31
phpBB/phpbb/db/middleware/mysql/driver.php
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\mysql;
|
||||
|
||||
use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware;
|
||||
|
||||
/**
|
||||
* MySQL Doctrine driver middleware.
|
||||
* Makes use of phpBB's MySQL specific platform.
|
||||
*/
|
||||
class driver extends AbstractDriverMiddleware
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function createDatabasePlatformForVersion($version)
|
||||
{
|
||||
return new platform();
|
||||
}
|
||||
}
|
29
phpBB/phpbb/db/middleware/mysql/middleware.php
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\mysql;
|
||||
|
||||
use Doctrine\DBAL\Driver;
|
||||
use phpbb\db\middleware\mysql\driver as mysql_driver;
|
||||
|
||||
/**
|
||||
* MySQL Doctrine middleware.
|
||||
* Makes use of phpBB's MySQL specific platform.
|
||||
*/
|
||||
class middleware implements Driver\Middleware
|
||||
{
|
||||
public function wrap(Driver $driver): Driver
|
||||
{
|
||||
return new mysql_driver($driver);
|
||||
}
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine;
|
||||
namespace phpbb\db\middleware\mysql;
|
||||
|
||||
use Doctrine\DBAL\Platforms\AbstractMySQLPlatform;
|
||||
use Doctrine\DBAL\Schema\TableDiff;
|
||||
|
@ -23,7 +23,7 @@ use Doctrine\DBAL\Schema\TableDiff;
|
|||
* If it's indexed as primary key, it should be declared as NOT NULL
|
||||
* because MySQL primary key columns cannot be NULL.
|
||||
*/
|
||||
class mysql_platform extends AbstractMySQLPlatform
|
||||
class platform extends AbstractMySQLPlatform
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
41
phpBB/phpbb/db/middleware/oracle/driver.php
Normal file
|
@ -0,0 +1,41 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\oracle;
|
||||
|
||||
use Doctrine\DBAL\Connection as DoctrineConnection;
|
||||
use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware;
|
||||
use Doctrine\DBAL\Platforms\AbstractPlatform;
|
||||
|
||||
/**
|
||||
* Oracle Doctrine driver middleware.
|
||||
* Makes use of phpBB's Oracle specific platform.
|
||||
*/
|
||||
class driver extends AbstractDriverMiddleware
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function getSchemaManager(DoctrineConnection $conn, AbstractPlatform $platform)
|
||||
{
|
||||
return new schema_manager($conn, $platform);
|
||||
}
|
||||
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function createDatabasePlatformForVersion($version)
|
||||
{
|
||||
return new platform();
|
||||
}
|
||||
}
|
29
phpBB/phpbb/db/middleware/oracle/middleware.php
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\oracle;
|
||||
|
||||
use Doctrine\DBAL\Driver;
|
||||
use phpbb\db\middleware\oracle\driver as oracle_driver;
|
||||
|
||||
/**
|
||||
* Oracle Doctrine middleware.
|
||||
* Makes use of phpBB's Oracle specific platform.
|
||||
*/
|
||||
class middleware implements Driver\Middleware
|
||||
{
|
||||
public function wrap(Driver $driver): Driver
|
||||
{
|
||||
return new oracle_driver($driver);
|
||||
}
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine;
|
||||
namespace phpbb\db\middleware\oracle;
|
||||
|
||||
use Doctrine\DBAL\Platforms\OraclePlatform;
|
||||
use Doctrine\DBAL\Schema\Identifier;
|
||||
|
@ -21,7 +21,7 @@ use Doctrine\DBAL\Schema\Table;
|
|||
/**
|
||||
* Oracle specific schema restrictions for BC.
|
||||
*/
|
||||
class oracle_platform extends OraclePlatform
|
||||
class platform extends OraclePlatform
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
|
@ -11,7 +11,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine\oci8;
|
||||
namespace phpbb\db\middleware\oracle;
|
||||
|
||||
use Doctrine\DBAL\Platforms\OraclePlatform;
|
||||
use Doctrine\DBAL\Schema\AbstractSchemaManager;
|
31
phpBB/phpbb/db/middleware/postgresql/driver.php
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\postgresql;
|
||||
|
||||
use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware;
|
||||
|
||||
/**
|
||||
* PostgreSQL Doctrine driver middleware.
|
||||
* Makes use of phpBB's PostgreSQL specific platform.
|
||||
*/
|
||||
class driver extends AbstractDriverMiddleware
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function createDatabasePlatformForVersion($version)
|
||||
{
|
||||
return new platform();
|
||||
}
|
||||
}
|
29
phpBB/phpbb/db/middleware/postgresql/middleware.php
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\postgresql;
|
||||
|
||||
use Doctrine\DBAL\Driver;
|
||||
use phpbb\db\middleware\postgresql\driver as postgresql_driver;
|
||||
|
||||
/**
|
||||
* PostgreSQL Doctrine middleware.
|
||||
* Makes use of phpBB's PostgreSQL specific platform.
|
||||
*/
|
||||
class middleware implements Driver\Middleware
|
||||
{
|
||||
public function wrap(Driver $driver): Driver
|
||||
{
|
||||
return new postgresql_driver($driver);
|
||||
}
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine;
|
||||
namespace phpbb\db\middleware\postgresql;
|
||||
|
||||
use Doctrine\DBAL\Platforms\AbstractPlatform;
|
||||
use Doctrine\DBAL\Platforms\PostgreSQLPlatform;
|
||||
|
@ -31,7 +31,7 @@ use Doctrine\DBAL\Types\Type;
|
|||
* to stay compatible with the existing DB we have to change its
|
||||
* naming and not ours.
|
||||
*/
|
||||
class postgresql_platform extends PostgreSQLPlatform
|
||||
class platform extends PostgreSQLPlatform
|
||||
{
|
||||
/**
|
||||
* {@inheritdoc}
|
31
phpBB/phpbb/db/middleware/sqlsrv/driver.php
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\sqlsrv;
|
||||
|
||||
use Doctrine\DBAL\Driver\Middleware\AbstractDriverMiddleware;
|
||||
|
||||
/**
|
||||
* Microsoft SQL server Doctrine driver middleware.
|
||||
* Makes use of phpBB's SQL Server specific platform.
|
||||
*/
|
||||
class driver extends AbstractDriverMiddleware
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
||||
*/
|
||||
public function createDatabasePlatformForVersion($version)
|
||||
{
|
||||
return new platform();
|
||||
}
|
||||
}
|
29
phpBB/phpbb/db/middleware/sqlsrv/middleware.php
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
/**
|
||||
*
|
||||
* This file is part of the phpBB Forum Software package.
|
||||
*
|
||||
* @copyright (c) phpBB Limited <https://www.phpbb.com>
|
||||
* @license GNU General Public License, version 2 (GPL-2.0)
|
||||
*
|
||||
* For full copyright and license information, please see
|
||||
* the docs/CREDITS.txt file.
|
||||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\middleware\sqlsrv;
|
||||
|
||||
use Doctrine\DBAL\Driver;
|
||||
use phpbb\db\middleware\sqlsrv\driver as sqlsrv_driver;
|
||||
|
||||
/**
|
||||
* Microsoft SQL server Doctrine middleware.
|
||||
* Makes use of phpBB's SQL Server specific platform.
|
||||
*/
|
||||
class middleware implements Driver\Middleware
|
||||
{
|
||||
public function wrap(Driver $driver): Driver
|
||||
{
|
||||
return new sqlsrv_driver($driver);
|
||||
}
|
||||
}
|
|
@ -11,7 +11,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
namespace phpbb\db\doctrine;
|
||||
namespace phpbb\db\middleware\sqlsrv;
|
||||
|
||||
use Doctrine\DBAL\Platforms\SQLServerPlatform;
|
||||
use Doctrine\DBAL\Schema\Identifier;
|
||||
|
@ -20,7 +20,7 @@ use Doctrine\DBAL\Schema\TableDiff;
|
|||
/**
|
||||
* SQLServer specific schema restrictions for BC.
|
||||
*/
|
||||
class sqlsrv_platform extends SQLServerPlatform
|
||||
class platform extends SQLServerPlatform
|
||||
{
|
||||
/**
|
||||
* {@inheritDoc}
|
25
phpBB/styles/prosilver2/composer.json
Normal file
|
@ -0,0 +1,25 @@
|
|||
{
|
||||
"name": "phpbb/phpbb-style-prosilver-2",
|
||||
"description": "phpBB Forum Software default style",
|
||||
"type": "phpbb-style",
|
||||
"version": "4.0.0-a1-dev",
|
||||
"homepage": "https://www.phpbb.com",
|
||||
"license": "GPL-2.0",
|
||||
"authors": [
|
||||
{
|
||||
"name": "phpBB Limited",
|
||||
"email": "operations@phpbb.com",
|
||||
"homepage": "https://www.phpbb.com/go/authors"
|
||||
}
|
||||
],
|
||||
"support": {
|
||||
"issues": "https://tracker.phpbb.com",
|
||||
"forum": "https://www.phpbb.com/community/",
|
||||
"irc": "irc://irc.freenode.org/phpbb"
|
||||
},
|
||||
"extra": {
|
||||
"display-name": "prosilver2",
|
||||
"phpbb-version": "4.0.0-a1-dev",
|
||||
"parent-style": ""
|
||||
}
|
||||
}
|
1
phpBB/styles/prosilver2/imgs/svg/arrow-right-bold.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M4 15V9h8V4.16L19.84 12L12 19.84V15z"/></svg>
|
After Width: | Height: | Size: 159 B |
1
phpBB/styles/prosilver2/imgs/svg/bullhorn.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M480 32c0-12.9-7.8-24.6-19.8-29.6s-25.7-2.2-34.9 6.9L381.7 53c-48 48-113.1 75-181 75H192 160 64c-35.3 0-64 28.7-64 64v96c0 35.3 28.7 64 64 64l0 128c0 17.7 14.3 32 32 32h64c17.7 0 32-14.3 32-32V352l8.7 0c67.9 0 133 27 181 75l43.6 43.6c9.2 9.2 22.9 11.9 34.9 6.9s19.8-16.6 19.8-29.6V300.4c18.6-8.8 32-32.5 32-60.4s-13.4-51.6-32-60.4V32zm-64 76.7V240 371.3C357.2 317.8 280.5 288 200.7 288H192V192h8.7c79.8 0 156.5-29.8 215.3-83.3z"/></svg>
|
After Width: | Height: | Size: 659 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M9 22a1 1 0 0 1-1-1v-3H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6.1l-3.7 3.71c-.2.19-.45.29-.7.29zm1-6v3.08L13.08 16H20V4H4v12zM6 7h12v2H6zm0 4h9v2H6z"/></svg>
|
After Width: | Height: | Size: 299 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M16 15H9v-2h7zm3-4H9V9h10zm0-4H9V5h10zM3 5v16h16v2H3a2 2 0 0 1-2-2V5zm18-4a2 2 0 0 1 2 2v14c0 1.11-.89 2-2 2H7a2 2 0 0 1-2-2V3c0-1.11.89-2 2-2zM7 3v14h14V3z"/></svg>
|
After Width: | Height: | Size: 279 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M5 3c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V5c0-1.11-.89-2-2-2zm0 2h14v14H5zm2 2v2h10V7zm0 4v2h10v-2zm0 4v2h7v-2z"/></svg>
|
After Width: | Height: | Size: 254 B |
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M6 2a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8l-6-6zm0 2h7v5h5v11H6zm2 8v2h8v-2zm0 4v2h5v-2z"/></svg>
|
After Width: | Height: | Size: 224 B |
1
phpBB/styles/prosilver2/imgs/svg/fire.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M17.66 11.2c-.23-.3-.51-.56-.77-.82c-.67-.6-1.43-1.03-2.07-1.66C13.33 7.26 13 4.85 13.95 3c-.95.23-1.78.75-2.49 1.32c-2.59 2.08-3.61 5.75-2.39 8.9c.04.1.08.2.08.33c0 .22-.15.42-.35.5c-.23.1-.47.04-.66-.12a.58.58 0 0 1-.14-.17c-1.13-1.43-1.31-3.48-.55-5.12C5.78 10 4.87 12.3 5 14.47c.06.5.12 1 .29 1.5c.14.6.41 1.2.71 1.73c1.08 1.73 2.95 2.97 4.96 3.22c2.14.27 4.43-.12 6.07-1.6c1.83-1.66 2.47-4.32 1.53-6.6l-.13-.26c-.21-.46-.77-1.26-.77-1.26m-3.16 6.3c-.28.24-.74.5-1.1.6c-1.12.4-2.24-.16-2.9-.82c1.19-.28 1.9-1.16 2.11-2.05c.17-.8-.15-1.46-.28-2.23c-.12-.74-.1-1.37.17-2.06c.19.38.39.76.63 1.06c.77 1 1.98 1.44 2.24 2.8c.04.14.06.28.06.43c.03.82-.33 1.72-.93 2.27"/></svg>
|
After Width: | Height: | Size: 788 B |
1
phpBB/styles/prosilver2/imgs/svg/globe.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M352 256c0 22.2-1.2 43.6-3.3 64H163.3c-2.2-20.4-3.3-41.8-3.3-64s1.2-43.6 3.3-64H348.7c2.2 20.4 3.3 41.8 3.3 64zm28.8-64H503.9c5.3 20.5 8.1 41.9 8.1 64s-2.8 43.5-8.1 64H380.8c2.1-20.6 3.2-42 3.2-64s-1.1-43.4-3.2-64zm112.6-32H376.7c-10-63.9-29.8-117.4-55.3-151.6c78.3 20.7 142 77.5 171.9 151.6zm-149.1 0H167.7c6.1-36.4 15.5-68.6 27-94.7c10.5-23.6 22.2-40.7 33.5-51.5C239.4 3.2 248.7 0 256 0s16.6 3.2 27.8 13.8c11.3 10.8 23 27.9 33.5 51.5c11.6 26 20.9 58.2 27 94.7zm-209 0H18.6C48.6 85.9 112.2 29.1 190.6 8.4C165.1 42.6 145.3 96.1 135.3 160zM8.1 192H131.2c-2.1 20.6-3.2 42-3.2 64s1.1 43.4 3.2 64H8.1C2.8 299.5 0 278.1 0 256s2.8-43.5 8.1-64zM194.7 446.6c-11.6-26-20.9-58.2-27-94.6H344.3c-6.1 36.4-15.5 68.6-27 94.6c-10.5 23.6-22.2 40.7-33.5 51.5C272.6 508.8 263.3 512 256 512s-16.6-3.2-27.8-13.8c-11.3-10.8-23-27.9-33.5-51.5zM135.3 352c10 63.9 29.8 117.4 55.3 151.6C112.2 482.9 48.6 426.1 18.6 352H135.3zm358.1 0c-30 74.1-93.6 130.9-171.9 151.6c25.5-34.2 45.2-87.7 55.3-151.6H493.4z"/></svg>
|
After Width: | Height: | Size: 1.2 KiB |
1
phpBB/styles/prosilver2/imgs/svg/info-variant.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M13.5 4A1.5 1.5 0 0 0 12 5.5A1.5 1.5 0 0 0 13.5 7A1.5 1.5 0 0 0 15 5.5A1.5 1.5 0 0 0 13.5 4m-.36 4.77c-1.19.1-4.44 2.69-4.44 2.69c-.2.15-.14.14.02.42c.16.27.14.29.33.16c.2-.13.53-.34 1.08-.68c2.12-1.36.34 1.78-.57 7.07c-.36 2.62 2 1.27 2.61.87c.6-.39 2.21-1.5 2.37-1.61c.22-.15.06-.27-.11-.52c-.12-.17-.24-.05-.24-.05c-.65.43-1.84 1.33-2 .76c-.19-.57 1.03-4.48 1.7-7.17c.11-.64.41-2.04-.75-1.94"/></svg>
|
After Width: | Height: | Size: 517 B |
1
phpBB/styles/prosilver2/imgs/svg/link-variant.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M10.59 13.41c.41.39.41 1.03 0 1.42c-.39.39-1.03.39-1.42 0a5.003 5.003 0 0 1 0-7.07l3.54-3.54a5.003 5.003 0 0 1 7.07 0a5.003 5.003 0 0 1 0 7.07l-1.49 1.49c.01-.82-.12-1.64-.4-2.42l.47-.48a2.982 2.982 0 0 0 0-4.24a2.982 2.982 0 0 0-4.24 0l-3.53 3.53a2.982 2.982 0 0 0 0 4.24m2.82-4.24c.39-.39 1.03-.39 1.42 0a5.003 5.003 0 0 1 0 7.07l-3.54 3.54a5.003 5.003 0 0 1-7.07 0a5.003 5.003 0 0 1 0-7.07l1.49-1.49c-.01.82.12 1.64.4 2.43l-.47.47a2.982 2.982 0 0 0 0 4.24a2.982 2.982 0 0 0 4.24 0l3.53-3.53a2.982 2.982 0 0 0 0-4.24a.973.973 0 0 1 0-1.42"/></svg>
|
After Width: | Height: | Size: 663 B |
1
phpBB/styles/prosilver2/imgs/svg/lock.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M12 17a2 2 0 0 0 2-2a2 2 0 0 0-2-2a2 2 0 0 0-2 2a2 2 0 0 0 2 2m6-9a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V10a2 2 0 0 1 2-2h1V6a5 5 0 0 1 5-5a5 5 0 0 1 5 5v2zm-6-5a3 3 0 0 0-3 3v2h6V6a3 3 0 0 0-3-3"/></svg>
|
After Width: | Height: | Size: 327 B |
1
phpBB/styles/prosilver2/imgs/svg/star.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><path fill="currentColor" d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.62L12 2L9.19 8.62L2 9.24l5.45 4.73L5.82 21z"/></svg>
|
After Width: | Height: | Size: 211 B |
1
phpBB/styles/prosilver2/imgs/svg/thumbtack.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M32 32C32 14.3 46.3 0 64 0H320c17.7 0 32 14.3 32 32s-14.3 32-32 32H290.5l11.4 148.2c36.7 19.9 65.7 53.2 79.5 94.7l1 3c3.3 9.8 1.6 20.5-4.4 28.8s-15.7 13.3-26 13.3H32c-10.3 0-19.9-4.9-26-13.3s-7.7-19.1-4.4-28.8l1-3c13.8-41.5 42.8-74.8 79.5-94.7L93.5 64H64C46.3 64 32 49.7 32 32zM160 384h64v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V384z"/></svg>
|
After Width: | Height: | Size: 564 B |
1
phpBB/styles/prosilver2/imgs/svg/toggle-off.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32"><path fill="currentColor" d="M9 7c-.621 0-1.227.066-1.813.188a9.238 9.238 0 0 0-.875.218A9.073 9.073 0 0 0 .72 12.5c-.114.27-.227.531-.313.813A8.848 8.848 0 0 0 0 16c0 .93.145 1.813.406 2.656c.004.008-.004.024 0 .032A9.073 9.073 0 0 0 5.5 24.28c.27.114.531.227.813.313A8.83 8.83 0 0 0 9 24.999h14c4.957 0 9-4.043 9-9s-4.043-9-9-9zm0 2c3.879 0 7 3.121 7 7s-3.121 7-7 7s-7-3.121-7-7c0-.242.008-.484.031-.719A6.985 6.985 0 0 1 9 9m5.625 0H23c3.879 0 7 3.121 7 7s-3.121 7-7 7h-8.375C16.675 21.348 18 18.828 18 16c0-2.828-1.324-5.348-3.375-7"/></svg>
|
After Width: | Height: | Size: 630 B |
1
phpBB/styles/prosilver2/imgs/svg/toggle-on.svg
Normal file
|
@ -0,0 +1 @@
|
|||
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32"><path fill="currentColor" d="M9 7c-4.96 0-9 4.035-9 9s4.04 9 9 9h14c4.957 0 9-4.043 9-9s-4.043-9-9-9zm14 2c3.879 0 7 3.121 7 7s-3.121 7-7 7s-7-3.121-7-7s3.121-7 7-7"/></svg>
|
After Width: | Height: | Size: 258 B |
405
phpBB/styles/prosilver2/template/ajax.js
Normal file
|
@ -0,0 +1,405 @@
|
|||
/* global phpbb */
|
||||
|
||||
(function($) { // Avoid conflicts with other libraries
|
||||
|
||||
'use strict';
|
||||
|
||||
// This callback will mark all forum icons read
|
||||
phpbb.addAjaxCallback('mark_forums_read', function(res) {
|
||||
var readTitle = res.NO_UNREAD_POSTS;
|
||||
var unreadTitle = res.UNREAD_POSTS;
|
||||
var iconsArray = {
|
||||
forum_unread: 'forum_read',
|
||||
forum_unread_subforum: 'forum_read_subforum',
|
||||
forum_unread_locked: 'forum_read_locked'
|
||||
};
|
||||
|
||||
$('li.row').find('dl[class*="forum_unread"]').each(function() {
|
||||
var $this = $(this);
|
||||
|
||||
$.each(iconsArray, function(unreadClass, readClass) {
|
||||
if ($this.hasClass(unreadClass)) {
|
||||
$this.removeClass(unreadClass).addClass(readClass);
|
||||
}
|
||||
});
|
||||
$this.children('dt[title="' + unreadTitle + '"]').attr('title', readTitle);
|
||||
});
|
||||
|
||||
// Mark subforums read
|
||||
$('a.subforum[class*="unread"]').removeClass('unread').addClass('read').children('.icon.icon-red').removeClass('icon-red').addClass('icon-blue');
|
||||
|
||||
// Mark topics read if we are watching a category and showing active topics
|
||||
if ($('#active_topics').length) {
|
||||
phpbb.ajaxCallbacks.mark_topics_read.call(this, res, false);
|
||||
}
|
||||
|
||||
// Update mark forums read links
|
||||
$('[data-ajax="mark_forums_read"]').attr('href', res.U_MARK_FORUMS);
|
||||
|
||||
phpbb.closeDarkenWrapper(3000);
|
||||
});
|
||||
|
||||
/**
|
||||
* This callback will mark all topic icons read
|
||||
*
|
||||
* @param {bool} [update_topic_links=true] Whether "Mark topics read" links
|
||||
* should be updated. Defaults to true.
|
||||
*/
|
||||
phpbb.addAjaxCallback('mark_topics_read', function(res, updateTopicLinks) {
|
||||
var readTitle = res.NO_UNREAD_POSTS;
|
||||
var unreadTitle = res.UNREAD_POSTS;
|
||||
var iconsArray = {
|
||||
global_unread: 'global_read',
|
||||
announce_unread: 'announce_read',
|
||||
sticky_unread: 'sticky_read',
|
||||
topic_unread: 'topic_read'
|
||||
};
|
||||
var iconsState = ['', '_hot', '_hot_mine', '_locked', '_locked_mine', '_mine'];
|
||||
var unreadClassSelectors;
|
||||
var classMap = {};
|
||||
var classNames = [];
|
||||
|
||||
if (typeof updateTopicLinks === 'undefined') {
|
||||
updateTopicLinks = true;
|
||||
}
|
||||
|
||||
$.each(iconsArray, function(unreadClass, readClass) {
|
||||
$.each(iconsState, function(key, value) {
|
||||
// Only topics can be hot
|
||||
if ((value === '_hot' || value === '_hot_mine') && unreadClass !== 'topic_unread') {
|
||||
return true;
|
||||
}
|
||||
classMap[unreadClass + value] = readClass + value;
|
||||
classNames.push(unreadClass + value);
|
||||
});
|
||||
});
|
||||
|
||||
unreadClassSelectors = '.' + classNames.join(',.');
|
||||
|
||||
$('li.row').find(unreadClassSelectors).each(function() {
|
||||
var $this = $(this);
|
||||
$.each(classMap, function(unreadClass, readClass) {
|
||||
if ($this.hasClass(unreadClass)) {
|
||||
$this.removeClass(unreadClass).addClass(readClass);
|
||||
}
|
||||
});
|
||||
$this.children('dt[title="' + unreadTitle + '"]').attr('title', readTitle);
|
||||
});
|
||||
|
||||
// Remove link to first unread post
|
||||
$('a.unread').has('.icon-red').remove();
|
||||
|
||||
// Update mark topics read links
|
||||
if (updateTopicLinks) {
|
||||
$('[data-ajax="mark_topics_read"]').attr('href', res.U_MARK_TOPICS);
|
||||
}
|
||||
|
||||
phpbb.closeDarkenWrapper(3000);
|
||||
});
|
||||
|
||||
// This callback will mark all notifications read
|
||||
phpbb.addAjaxCallback('notification.mark_all_read', function(res) {
|
||||
if (typeof res.success !== 'undefined') {
|
||||
phpbb.markNotifications($('[data-notification-unread="true"]'), 0);
|
||||
phpbb.toggleDropdown.call($('#notification-button'));
|
||||
phpbb.closeDarkenWrapper(3000);
|
||||
}
|
||||
});
|
||||
|
||||
// This callback will mark a notification read
|
||||
phpbb.addAjaxCallback('notification.mark_read', function(res) {
|
||||
if (typeof res.success !== 'undefined') {
|
||||
var unreadCount = Number($('#notification-button strong').html()) - 1;
|
||||
phpbb.markNotifications($(this).parent('[data-notification-unread="true"]'), unreadCount);
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Mark notification popup rows as read.
|
||||
*
|
||||
* @param {jQuery} $popup jQuery object(s) to mark read.
|
||||
* @param {int} unreadCount The new unread notifications count.
|
||||
*/
|
||||
phpbb.markNotifications = function($popup, unreadCount) {
|
||||
// Remove the unread status.
|
||||
$popup.removeClass('bg2');
|
||||
$popup.find('a.mark_read').remove();
|
||||
|
||||
// Update the notification link to the real URL.
|
||||
$popup.each(function() {
|
||||
var link = $(this).find('a');
|
||||
link.attr('href', link.attr('data-real-url'));
|
||||
});
|
||||
|
||||
// Update the unread count.
|
||||
$('strong', '#notification-button').html(unreadCount);
|
||||
// Remove the Mark all read link and hide notification count if there are no unread notifications.
|
||||
if (!unreadCount) {
|
||||
$('#mark_all_notifications').remove();
|
||||
$('#notification-button > strong').addClass('hidden');
|
||||
}
|
||||
|
||||
// Update page title
|
||||
var $title = $('title');
|
||||
var originalTitle = $title.text().replace(/(\((\d+)\))/, '');
|
||||
$title.text((unreadCount ? '(' + unreadCount + ')' : '') + originalTitle);
|
||||
};
|
||||
|
||||
// This callback finds the post from the delete link, and removes it.
|
||||
phpbb.addAjaxCallback('post_delete', function() {
|
||||
var $this = $(this),
|
||||
postId;
|
||||
|
||||
if ($this.attr('data-refresh') === undefined) {
|
||||
postId = $this[0].href.split('&p=')[1];
|
||||
var post = $this.parents('#p' + postId).css('pointer-events', 'none');
|
||||
if (post.hasClass('bg1') || post.hasClass('bg2')) {
|
||||
var posts1 = post.nextAll('.bg1');
|
||||
post.nextAll('.bg2').removeClass('bg2').addClass('bg1');
|
||||
posts1.removeClass('bg1').addClass('bg2');
|
||||
}
|
||||
post.fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// This callback removes the approve / disapprove div or link.
|
||||
phpbb.addAjaxCallback('post_visibility', function(res) {
|
||||
var remove = (res.visible) ? $(this) : $(this).parents('.post');
|
||||
$(remove).css('pointer-events', 'none').fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
|
||||
if (res.visible) {
|
||||
// Remove the "Deleted by" message from the post on restoring.
|
||||
remove.parents('.post').find('.post_deleted_msg').css('pointer-events', 'none').fadeOut(function() {
|
||||
$(this).remove();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// This removes the parent row of the link or form that fired the callback.
|
||||
phpbb.addAjaxCallback('row_delete', function() {
|
||||
$(this).parents('tr').remove();
|
||||
});
|
||||
|
||||
// This handles friend / foe additions removals.
|
||||
phpbb.addAjaxCallback('zebra', function(res) {
|
||||
var zebra;
|
||||
|
||||
if (res.success) {
|
||||
zebra = $('.zebra');
|
||||
zebra.first().html(res.MESSAGE_TEXT);
|
||||
zebra.not(':first').html(' ').prev().html(' ');
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* This callback updates the poll results after voting.
|
||||
*/
|
||||
phpbb.addAjaxCallback('vote_poll', function(res) {
|
||||
if (typeof res.success !== 'undefined') {
|
||||
var poll = $(this).closest('.topic_poll');
|
||||
var panel = poll.find('.panel');
|
||||
var resultsVisible = poll.find('dl:first-child .resultbar').is(':visible');
|
||||
var mostVotes = 0;
|
||||
|
||||
// Set min-height to prevent the page from jumping when the content changes
|
||||
var updatePanelHeight = function (height) {
|
||||
height = (typeof height === 'undefined') ? panel.find('.inner').outerHeight() : height;
|
||||
panel.css('min-height', height);
|
||||
};
|
||||
updatePanelHeight();
|
||||
|
||||
// Remove the View results link
|
||||
if (!resultsVisible) {
|
||||
poll.find('.poll_view_results').hide(500);
|
||||
}
|
||||
|
||||
if (!res.can_vote) {
|
||||
poll.find('.polls, .poll_max_votes, .poll_vote, .poll_option_select').fadeOut(500, function () {
|
||||
poll.find('.resultbar, .poll_option_percent, .poll_total_votes').show();
|
||||
});
|
||||
} else {
|
||||
// If the user can still vote, simply slide down the results
|
||||
poll.find('.resultbar, .poll_option_percent, .poll_total_votes').show(500);
|
||||
}
|
||||
|
||||
// Get the votes count of the highest poll option
|
||||
poll.find('[data-poll-option-id]').each(function() {
|
||||
var option = $(this);
|
||||
var optionId = option.attr('data-poll-option-id');
|
||||
mostVotes = (res.vote_counts[optionId] >= mostVotes) ? res.vote_counts[optionId] : mostVotes;
|
||||
});
|
||||
|
||||
// Update the total votes count
|
||||
poll.find('.poll_total_vote_cnt').html(res.total_votes);
|
||||
|
||||
// Update each option
|
||||
poll.find('[data-poll-option-id]').each(function() {
|
||||
var $this = $(this);
|
||||
var optionId = $this.attr('data-poll-option-id');
|
||||
var voted = (typeof res.user_votes[optionId] !== 'undefined');
|
||||
var mostVoted = (res.vote_counts[optionId] === mostVotes);
|
||||
var percent = (!res.total_votes) ? 0 : Math.round((res.vote_counts[optionId] / res.total_votes) * 100);
|
||||
var percentRel = (mostVotes === 0) ? 0 : Math.round((res.vote_counts[optionId] / mostVotes) * 100);
|
||||
var altText;
|
||||
|
||||
altText = $this.attr('data-alt-text');
|
||||
if (voted) {
|
||||
$this.attr('title', $.trim(altText));
|
||||
} else {
|
||||
$this.attr('title', '');
|
||||
};
|
||||
$this.toggleClass('voted', voted);
|
||||
$this.toggleClass('most-votes', mostVoted);
|
||||
|
||||
// Update the bars
|
||||
var bar = $this.find('.resultbar div');
|
||||
var barTimeLapse = (res.can_vote) ? 500 : 1500;
|
||||
var newBarClass = (percent === 100) ? 'pollbar5' : 'pollbar' + (Math.floor(percent / 20) + 1);
|
||||
|
||||
setTimeout(function () {
|
||||
bar.animate({ width: percentRel + '%' }, 500)
|
||||
.removeClass('pollbar1 pollbar2 pollbar3 pollbar4 pollbar5')
|
||||
.addClass(newBarClass)
|
||||
.html(res.vote_counts[optionId]);
|
||||
|
||||
var percentText = percent ? percent + '%' : res.NO_VOTES;
|
||||
$this.find('.poll_option_percent').html(percentText);
|
||||
}, barTimeLapse);
|
||||
});
|
||||
|
||||
if (!res.can_vote) {
|
||||
poll.find('.polls').delay(400).fadeIn(500);
|
||||
}
|
||||
|
||||
// Display "Your vote has been cast." message. Disappears after 5 seconds.
|
||||
var confirmationDelay = (res.can_vote) ? 300 : 900;
|
||||
poll.find('.vote-submitted').delay(confirmationDelay).slideDown(200, function() {
|
||||
if (resultsVisible) {
|
||||
updatePanelHeight();
|
||||
}
|
||||
|
||||
$(this).delay(5000).fadeOut(500, function() {
|
||||
resizePanel(300);
|
||||
});
|
||||
});
|
||||
|
||||
// Remove the gap resulting from removing options
|
||||
setTimeout(function() {
|
||||
resizePanel(500);
|
||||
}, 1500);
|
||||
|
||||
var resizePanel = function (time) {
|
||||
var panelHeight = panel.height();
|
||||
var innerHeight = panel.find('.inner').outerHeight();
|
||||
|
||||
if (panelHeight !== innerHeight) {
|
||||
panel.css({ minHeight: '', height: panelHeight })
|
||||
.animate({ height: innerHeight }, time, function () {
|
||||
panel.css({ minHeight: innerHeight, height: '' });
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Show poll results when clicking View results link.
|
||||
*/
|
||||
$('.poll_view_results a').click(function(e) {
|
||||
// Do not follow the link
|
||||
e.preventDefault();
|
||||
|
||||
var $poll = $(this).parents('.topic_poll');
|
||||
|
||||
$poll.find('.resultbar, .poll_option_percent, .poll_total_votes').show(500);
|
||||
$poll.find('.poll_view_results').hide(500);
|
||||
});
|
||||
|
||||
$('[data-ajax]').each(function() {
|
||||
var $this = $(this);
|
||||
var ajax = $this.attr('data-ajax');
|
||||
var filter = $this.attr('data-filter');
|
||||
|
||||
if (ajax !== 'false') {
|
||||
var fn = (ajax !== 'true') ? ajax : null;
|
||||
filter = (filter !== undefined) ? phpbb.getFunctionByName(filter) : null;
|
||||
|
||||
phpbb.ajaxify({
|
||||
selector: this,
|
||||
refresh: $this.attr('data-refresh') !== undefined,
|
||||
filter: filter,
|
||||
callback: fn
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* This simply appends #preview to the action of the
|
||||
* QR action when you click the Full Editor & Preview button
|
||||
*/
|
||||
$('#qr_full_editor').click(function() {
|
||||
$('#qr_postform').attr('action', function(i, val) {
|
||||
return val + '#preview';
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
/**
|
||||
* Make the display post links to use JS
|
||||
*/
|
||||
$('.display_post').click(function(e) {
|
||||
// Do not follow the link
|
||||
e.preventDefault();
|
||||
|
||||
var postId = $(this).attr('data-post-id');
|
||||
$('#post_content' + postId).show();
|
||||
$('#profile' + postId).show();
|
||||
$('#post_hidden' + postId).hide();
|
||||
});
|
||||
|
||||
/**
|
||||
* Display hidden post on post review page
|
||||
*/
|
||||
$('.display_post_review').on('click', function(e) {
|
||||
e.preventDefault();
|
||||
|
||||
let $displayPostLink = $(this);
|
||||
$displayPostLink.closest('.post-ignore').removeClass('post-ignore');
|
||||
$displayPostLink.hide();
|
||||
});
|
||||
|
||||
/**
|
||||
* Toggle the member search panel in memberlist.php.
|
||||
*
|
||||
* If user returns to search page after viewing results the search panel is automatically displayed.
|
||||
* In any case the link will toggle the display status of the search panel and link text will be
|
||||
* appropriately changed based on the status of the search panel.
|
||||
*/
|
||||
$('#member_search').click(function () {
|
||||
var $memberlistSearch = $('#memberlist_search');
|
||||
|
||||
$memberlistSearch.slideToggle('fast');
|
||||
phpbb.ajaxCallbacks.alt_text.call(this);
|
||||
|
||||
// Focus on the username textbox if it's available and displayed
|
||||
if ($memberlistSearch.is(':visible')) {
|
||||
$('#username').focus();
|
||||
}
|
||||
return false;
|
||||
});
|
||||
|
||||
/**
|
||||
* Automatically resize textarea
|
||||
*/
|
||||
$(function() {
|
||||
var $textarea = $('textarea:not(#message-box textarea, .no-auto-resize)');
|
||||
phpbb.resizeTextArea($textarea, { minHeight: 75, maxHeight: 250 });
|
||||
phpbb.resizeTextArea($('textarea', '#message-box'));
|
||||
});
|
||||
|
||||
|
||||
})(jQuery); // Avoid conflicts with other libraries
|
75
phpBB/styles/prosilver2/template/attachment.html
Normal file
|
@ -0,0 +1,75 @@
|
|||
<!-- EVENT attachment_file_before -->
|
||||
|
||||
<!-- BEGIN _file -->
|
||||
<!-- IF _file.S_DENIED -->
|
||||
<p>[{_file.DENIED_MESSAGE}]</p>
|
||||
<!-- ELSE -->
|
||||
<!-- EVENT attachment_file_prepend -->
|
||||
|
||||
<!-- IF _file.S_THUMBNAIL -->
|
||||
<dl class="thumbnail">
|
||||
<dt><a href="{_file.U_DOWNLOAD_LINK}"><img src="{_file.THUMB_IMAGE}" class="postimage" alt="{% if _file.COMMENT %}{{ _file.COMMENT|e('html') }}{% else %}{{ _file.DOWNLOAD_NAME }}{% endif %}" title="{_file.DOWNLOAD_NAME} ({_file.FILESIZE} {_file.SIZE_LANG}) {_file.L_DOWNLOAD_COUNT}" /></a></dt>
|
||||
<!-- IF _file.COMMENT --><dd> {_file.COMMENT}</dd><!-- ENDIF -->
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF _file.S_IMAGE -->
|
||||
<dl class="file">
|
||||
<dt class="attach-image"><img src="{_file.U_INLINE_LINK}" class="postimage" alt="{% if _file.COMMENT %}{{ _file.COMMENT|e('html') }}{% else %}{{ _file.DOWNLOAD_NAME }}{% endif %}" onclick="viewableArea(this);" /></dt>
|
||||
<!-- IF _file.COMMENT --><dd><em>{_file.COMMENT}</em></dd><!-- ENDIF -->
|
||||
<dd>{_file.DOWNLOAD_NAME} ({_file.FILESIZE} {_file.SIZE_LANG}) {_file.L_DOWNLOAD_COUNT}</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF _file.S_FILE -->
|
||||
<dl class="file">
|
||||
<dt><!-- IF _file.UPLOAD_ICON -->{_file.UPLOAD_ICON} <!-- ENDIF --><a class="postlink" href="{_file.U_DOWNLOAD_LINK}">{_file.DOWNLOAD_NAME}</a></dt>
|
||||
<!-- IF _file.COMMENT --><dd><em>{_file.COMMENT}</em></dd><!-- ENDIF -->
|
||||
<dd>({_file.FILESIZE} {_file.SIZE_LANG}) {_file.L_DOWNLOAD_COUNT}</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% if _file.S_AUDIO_FILE %}
|
||||
<dl class="file">
|
||||
<dt class="c-file-header">
|
||||
<audio class="c-file-audio-controls" controls="controls" preload="metadata">
|
||||
<source class="c-file-audio-source" src="{{ _file.U_DOWNLOAD_LINK }}" type="{{ _file.MIMETYPE }}">
|
||||
</audio>
|
||||
</dt>
|
||||
{% if _file.COMMENT %}
|
||||
<dd class="c-file-comment">{{ _file.COMMENT }}</dd>
|
||||
{% endif %}
|
||||
<dd class="c-file-actions">
|
||||
{% if _file.UPLOAD_ICON %}
|
||||
<span class="o-icon c-file-icon">{{ _file.UPLOAD_ICON }}</span>
|
||||
{% endif %}
|
||||
<a class="c-file-actions-link postlink" href="{{ _file.U_DOWNLOAD_LINK }}" download>{{ _file.DOWNLOAD_NAME }}</a>
|
||||
<span class="c-file-actions-meta">({{ _file.FILESIZE }} {{ _file.SIZE_LANG }}) {{ _file.L_DOWNLOAD_COUNT }}</span>
|
||||
</dd>
|
||||
</dl>
|
||||
{% endif %}
|
||||
|
||||
{% if _file.S_VIDEO_FILE %}
|
||||
<dl class="file">
|
||||
<dt class="c-file-header">
|
||||
<video class="c-file-video-controls" controls="controls" preload="metadata">
|
||||
<source class="c-file-video-source" src="{{ _file.U_DOWNLOAD_LINK }}" type="{{ _file.MIMETYPE }}">
|
||||
</video>
|
||||
</dt>
|
||||
{% if _file.COMMENT %}
|
||||
<dd class="c-file-comment">{{ _file.COMMENT }}</dd>
|
||||
{% endif %}
|
||||
<dd class="c-file-actions">
|
||||
{% if _file.UPLOAD_ICON %}
|
||||
<span class="o-icon c-file-icon">{{ _file.UPLOAD_ICON }}</span>
|
||||
{% endif %}
|
||||
<a class="c-file-actions-link postlink" href="{{ _file.U_DOWNLOAD_LINK }}" download>{{ _file.DOWNLOAD_NAME }}</a>
|
||||
<span class="c-file-actions-meta">({{ _file.FILESIZE }} {{ _file.SIZE_LANG }}) {{ _file.L_DOWNLOAD_COUNT }}</span>
|
||||
</dd>
|
||||
</dl>
|
||||
{% endif %}
|
||||
|
||||
<!-- EVENT attachment_file_append -->
|
||||
<!-- ENDIF -->
|
||||
<!-- END _file -->
|
||||
<!-- EVENT attachment_file_after -->
|
93
phpBB/styles/prosilver2/template/bbcode.html
Normal file
|
@ -0,0 +1,93 @@
|
|||
<!-- BEGIN ulist_open --><ul style="list-style-type: {LIST_TYPE}"><!-- END ulist_open -->
|
||||
<!-- BEGIN ulist_open_default --><ul><!-- END ulist_open_default -->
|
||||
<!-- BEGIN ulist_close --></ul><!-- END ulist_close -->
|
||||
|
||||
<!-- BEGIN olist_open --><ol style="list-style-type: {LIST_TYPE}"><!-- END olist_open -->
|
||||
<!-- BEGIN olist_close --></ol><!-- END olist_close -->
|
||||
|
||||
<!-- BEGIN listitem --><li><!-- END listitem -->
|
||||
<!-- BEGIN listitem_close --></li><!-- END listitem_close -->
|
||||
|
||||
<!-- BEGIN quote_username_open --><blockquote><div><cite>{USERNAME} {L_WROTE}{L_COLON}</cite><!-- END quote_username_open -->
|
||||
<!-- BEGIN quote_open --><blockquote class="uncited"><div><!-- END quote_open -->
|
||||
<!-- BEGIN quote_close --></div></blockquote><!-- END quote_close -->
|
||||
<!-- BEGIN quote_extended -->
|
||||
<blockquote>
|
||||
<xsl:if test="@post_url">
|
||||
<xsl:attribute name="cite"><xsl:value-of select="@post_url"/></xsl:attribute>
|
||||
</xsl:if>
|
||||
<xsl:if test="not(@author)">
|
||||
<xsl:attribute name="class">uncited</xsl:attribute>
|
||||
</xsl:if>
|
||||
<div>
|
||||
<xsl:if test="@author">
|
||||
<cite>
|
||||
<xsl:choose>
|
||||
<xsl:when test="@url">
|
||||
<a href="{@url}" class="postlink"><xsl:value-of select="@author"/></a>
|
||||
</xsl:when>
|
||||
<xsl:when test="@profile_url">
|
||||
<a href="{@profile_url}"><xsl:value-of select="@author"/></a>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="@author"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="$L_WROTE"/>
|
||||
<xsl:value-of select="$L_COLON"/>
|
||||
<xsl:if test="@post_url">
|
||||
<xsl:text> </xsl:text>
|
||||
<a href="{@post_url}" aria-label="{L_VIEW_QUOTED_POST}" data-post-id="{@post_id}" onclick="if(document.getElementById(hash.substr(1)))href=hash"><i class="icon fa-arrow-circle-up fa-fw" aria-hidden="true"></i></a>
|
||||
</xsl:if>
|
||||
<xsl:if test="@msg_url">
|
||||
<xsl:text> </xsl:text>
|
||||
<a href="{@msg_url}" aria-label="{L_VIEW_QUOTED_POST}" data-msg-id="{@msg_id}"><i class="icon fa-arrow-circle-up fa-fw" aria-hidden="true"></i></a>
|
||||
</xsl:if>
|
||||
<xsl:if test="@date">
|
||||
<span class="responsive-hide"><xsl:value-of select="@date"/></span>
|
||||
</xsl:if>
|
||||
</cite>
|
||||
</xsl:if>
|
||||
<xsl:apply-templates/>
|
||||
</div>
|
||||
</blockquote>
|
||||
<!-- END quote_extended -->
|
||||
|
||||
<!-- BEGIN code_open --><div class="codebox"><p>{L_CODE}{L_COLON} <a href="#" onclick="selectCode(this); return false;">{L_SELECT_ALL_CODE}</a></p><pre><code><!-- END code_open -->
|
||||
<!-- BEGIN code_close --></code></pre></div><!-- END code_close -->
|
||||
|
||||
<!-- BEGIN inline_attachment_open --><div class="inline-attachment"><!-- END inline_attachment_open -->
|
||||
<!-- BEGIN inline_attachment_close --></div><!-- END inline_attachment_close -->
|
||||
|
||||
<!-- BEGIN b_open --><strong class="text-strong"><!-- END b_open -->
|
||||
<!-- BEGIN b_close --></strong><!-- END b_close -->
|
||||
|
||||
<!-- BEGIN u_open --><span style="text-decoration: underline"><!-- END u_open -->
|
||||
<!-- BEGIN u_close --></span><!-- END u_close -->
|
||||
|
||||
<!-- BEGIN i_open --><em class="text-italics"><!-- END i_open -->
|
||||
<!-- BEGIN i_close --></em><!-- END i_close -->
|
||||
|
||||
<!-- BEGIN color --><span style="color: {COLOR}">{TEXT}</span><!-- END color -->
|
||||
|
||||
<!-- BEGIN size --><span style="font-size: {SIZE}%; line-height: 116%;">{TEXT}</span><!-- END size -->
|
||||
|
||||
<!-- BEGIN img --><img src="{URL}" class="postimage" alt="{L_IMAGE}" /><!-- END img -->
|
||||
|
||||
<!-- BEGIN url --><a href="{URL}" class="postlink">{DESCRIPTION}</a><!-- END url -->
|
||||
|
||||
<!-- BEGIN email -->
|
||||
<a>
|
||||
<xsl:attribute name="href">
|
||||
<xsl:text>mailto:</xsl:text>
|
||||
<xsl:value-of select="@email"/>
|
||||
<xsl:if test="@subject or @body">
|
||||
<xsl:text>?</xsl:text>
|
||||
<xsl:if test="@subject">subject=<xsl:value-of select="@subject"/></xsl:if>
|
||||
<xsl:if test="@body"><xsl:if test="@subject">&</xsl:if>body=<xsl:value-of select="@body"/></xsl:if>
|
||||
</xsl:if>
|
||||
</xsl:attribute>
|
||||
<xsl:apply-templates/>
|
||||
</a>
|
||||
<!-- END email -->
|
24
phpBB/styles/prosilver2/template/captcha_default.html
Normal file
|
@ -0,0 +1,24 @@
|
|||
<!-- IF S_TYPE == 1 -->
|
||||
<div class="panel captcha-panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3 class="captcha-title">{L_CONFIRMATION}</h3>
|
||||
<p>{L_CONFIRM_EXPLAIN}</p>
|
||||
|
||||
<fieldset class="fields2">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl>
|
||||
<dt><label for="confirm_code">{L_CONFIRM_CODE}{L_COLON}</label></dt>
|
||||
<dd class="captcha captcha-image"><img src="{CONFIRM_IMAGE_LINK}" alt="{L_CONFIRM_CODE}" /></dd>
|
||||
<dd><input type="text" name="confirm_code" id="confirm_code" size="8" maxlength="8" tabindex="{$CAPTCHA_TAB_INDEX}" class="inputbox narrow" title="{L_CONFIRM_CODE}" />
|
||||
<!-- IF S_CONFIRM_REFRESH --><input type="submit" name="refresh_vc" id="refresh_vc" class="button1 button button-form-bold" value="{L_VC_REFRESH}" /><!-- ENDIF -->
|
||||
<input type="hidden" name="confirm_id" id="confirm_id" value="{CONFIRM_ID}" /></dd>
|
||||
<dd>{L_CONFIRM_CODE_EXPLAIN}</dd>
|
||||
</dl>
|
||||
|
||||
<!-- IF S_TYPE == 1 -->
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
7
phpBB/styles/prosilver2/template/captcha_incomplete.html
Normal file
|
@ -0,0 +1,7 @@
|
|||
<div class="panel captcha-panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3 class="captcha-title">{{ lang('CONFIRM_CODE') }}</h3>
|
||||
<p class="error">{{ lang(CONFIRM_LANG, '<a href="' ~ CONTACT_LINK ~ '">', '</a>') }}</p>
|
||||
</div>
|
||||
</div>
|
21
phpBB/styles/prosilver2/template/captcha_qa.html
Normal file
|
@ -0,0 +1,21 @@
|
|||
<!-- IF S_TYPE == 1 -->
|
||||
<div class="panel captcha-panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3 class="captcha-title">{L_CONFIRMATION}</h3>
|
||||
<fieldset class="fields2">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl>
|
||||
<dt><label>{QA_CONFIRM_QUESTION}{L_COLON}</label><br /><span>{L_CONFIRM_QUESTION_EXPLAIN}</span></dt>
|
||||
<dd class="captcha">
|
||||
<input type="text" tabindex="{$CAPTCHA_TAB_INDEX}" name="qa_answer" id="answer" size="45" class="inputbox autowidth" title="{L_ANSWER}" />
|
||||
<input type="hidden" name="qa_confirm_id" id="qa_confirm_id" value="{QA_CONFIRM_ID}" />
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
<!-- IF S_TYPE == 1 -->
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
10
phpBB/styles/prosilver2/template/captcha_recaptcha.html
Normal file
|
@ -0,0 +1,10 @@
|
|||
<!-- IF S_RECAPTCHA_AVAILABLE -->
|
||||
<noscript>
|
||||
<div>{L_RECAPTCHA_NOSCRIPT}</div>
|
||||
</noscript>
|
||||
{% INCLUDEJS RECAPTCHA_SERVER ~ '.js?onload=phpbbRecaptchaOnLoad&hl=' ~ lang('RECAPTCHA_LANG') %}
|
||||
{# The g-recaptcha class is used in JavaScript #}
|
||||
<div class="g-recaptcha" data-sitekey="{RECAPTCHA_PUBKEY}" data-callback="phpbbRecaptchaOnSubmit" data-size="invisible" data-tabindex="<!-- IF $CAPTCHA_TAB_INDEX -->{$CAPTCHA_TAB_INDEX}<!-- ELSE -->10<!-- ENDIF -->"></div>
|
||||
<!-- ELSE -->
|
||||
{L_RECAPTCHA_NOT_AVAILABLE}
|
||||
<!-- ENDIF -->
|
13
phpBB/styles/prosilver2/template/captcha_recaptcha_v3.html
Normal file
|
@ -0,0 +1,13 @@
|
|||
{% if S_RECAPTCHA_AVAILABLE %}
|
||||
<noscript>
|
||||
<div>{{ lang('RECAPTCHA_NOSCRIPT') }}</div>
|
||||
</noscript>
|
||||
|
||||
<script src="{{ U_RECAPTCHA_SCRIPT }}" async defer></script>
|
||||
|
||||
{# The g-recaptcha class is used in JavaScript #}
|
||||
<input class="g-recaptcha" type="hidden" name="recaptcha_action" value="{{ RECAPTCHA_ACTION }}" data-recaptcha-v3="{{ RECAPTCHA_KEY }}">
|
||||
<input type="hidden" name="recaptcha_token" value="">
|
||||
{% else %}
|
||||
{{ lang('RECAPTCHA_NOT_AVAILABLE') }}
|
||||
{% endif %}
|
23
phpBB/styles/prosilver2/template/captcha_turnstile.html
Normal file
|
@ -0,0 +1,23 @@
|
|||
{% if CONFIRM_TYPE_REGISTRATION %}
|
||||
<div class="panel captcha-panel">
|
||||
<div class="inner">
|
||||
<h3 class="captcha-title">{{ lang('CONFIRMATION') }}</h3>
|
||||
<fieldset class="fields2">
|
||||
{% endif %}
|
||||
{% if S_TURNSTILE_AVAILABLE %}
|
||||
<noscript>
|
||||
<div>{{ lang('CAPTCHA_TURNSTILE_NOSCRIPT') }}</div>
|
||||
</noscript>
|
||||
|
||||
<script src="{{ U_TURNSTILE_SCRIPT }}" async defer></script>
|
||||
|
||||
{# The cf-turnstile class is used in JavaScript #}
|
||||
<div class="cf-turnstile" data-language="{{ lang('TURNSTILE_LANG') }}" data-sitekey="{{ TURNSTILE_SITEKEY }}"{% if TURNSTILE_THEME %} data-theme="{{ TURNSTILE_THEME }}"{% endif %}></div>
|
||||
{% else %}
|
||||
{{ lang('CAPTCHA_TURNSTILE_NOT_AVAILABLE') }}
|
||||
{% endif %}
|
||||
{% if CONFIRM_TYPE_REGISTRATION %}
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
35
phpBB/styles/prosilver2/template/confirm_body.html
Normal file
|
@ -0,0 +1,35 @@
|
|||
<!-- IF S_AJAX_REQUEST -->
|
||||
<form action="{S_CONFIRM_ACTION}" method="post">
|
||||
<h3>{MESSAGE_TITLE}</h3>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="button" name="confirm" value="{L_YES}" class="button1 button button-form-bold" />
|
||||
<input type="button" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- ELSE -->
|
||||
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<form id="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input type="submit" name="confirm" value="{L_YES}" class="button1 button button-form-bold" />
|
||||
<input type="submit" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
|
||||
<!-- ENDIF -->
|
72
phpBB/styles/prosilver2/template/confirm_delete_body.html
Normal file
|
@ -0,0 +1,72 @@
|
|||
<!-- IF S_AJAX_REQUEST -->
|
||||
<form action="{S_CONFIRM_ACTION}" method="post">
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<!-- IF not S_SHADOW_TOPICS -->
|
||||
<!-- IF not S_SOFTDELETED and S_ALLOWED_DELETE and S_ALLOWED_SOFTDELETE -->
|
||||
<label>
|
||||
<strong>{L_DELETE_PERMANENTLY}{L_COLON}</strong>
|
||||
<input id="delete_permanent" name="delete_permanent" type="checkbox" value="1" {S_CHECKED_PERMANENT} />
|
||||
<!-- IF S_TOPIC_MODE -->{DELETE_TOPIC_PERMANENTLY_EXPLAIN}<!-- ELSE -->{DELETE_POST_PERMANENTLY_EXPLAIN}<!-- ENDIF -->
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<label for="delete_reason">
|
||||
<strong>{L_DELETE_REASON}{L_COLON}</strong><br /><span>{L_DELETE_REASON_EXPLAIN}</span><br />
|
||||
<input type="text" name="delete_reason" value="" class="inputbox autowidth" maxlength="120" size="45" />
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="button" name="confirm" value="{L_YES}" class="button1 button button-form" />
|
||||
<input type="button" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- ELSE -->
|
||||
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<form id="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<!-- IF not S_SHADOW_TOPICS -->
|
||||
<fieldset class="fields1">
|
||||
<!-- IF not S_SOFTDELETED and S_ALLOWED_DELETE and S_ALLOWED_SOFTDELETE -->
|
||||
<dl>
|
||||
<dt><label for="delete_permanent">{L_DELETE_PERMANENTLY}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
<label for="delete_permanent">
|
||||
<input id="delete_permanent" name="delete_permanent" type="checkbox" value="1" {S_CHECKED_PERMANENT} />
|
||||
<!-- IF S_TOPIC_MODE -->{DELETE_TOPIC_PERMANENTLY_EXPLAIN}<!-- ELSE -->{DELETE_POST_PERMANENTLY_EXPLAIN}<!-- ENDIF -->
|
||||
</label>
|
||||
</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% EVENT confirm_delete_body_delete_reason_before %}
|
||||
|
||||
<dl>
|
||||
<dt><label for="delete_reason">{L_DELETE_REASON}{L_COLON}</label><br /><span>{L_DELETE_REASON_EXPLAIN}</span></dt>
|
||||
<dd><input type="text" name="delete_reason" id="delete_reason" value="" class="inputbox autowidth" maxlength="120" size="45" /></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input type="submit" name="confirm" value="{L_YES}" class="button1 button button-form" />
|
||||
<input type="submit" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
<!-- ENDIF -->
|
29
phpBB/styles/prosilver2/template/display_options.html
Normal file
|
@ -0,0 +1,29 @@
|
|||
<div class="dropdown-container dropdown-container-left dropdown-button-control sort-tools">
|
||||
<span title="{L_SORT_OPTIONS}" class="button button-secondary dropdown-trigger dropdown-select">
|
||||
{{ Icon('font', 'arrow-down-short-wide', '', true, 'fas c-button-icon') }}
|
||||
<span class="caret">
|
||||
{{ Icon('font', 'caret-down', '', true, 'fas c-button-icon') }}
|
||||
</span>
|
||||
</span>
|
||||
<div class="dropdown hidden">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<div class="dropdown-contents">
|
||||
<fieldset class="display-options">
|
||||
<!-- IF S_SORT_OPTIONS -->
|
||||
<label>{L_SORT_BY}{L_COLON} <select name="sk" id="sk">{S_SORT_OPTIONS}</select></label>
|
||||
<label>{L_SORT_DIRECTION}{L_COLON} <select name="sd" id="sd">{S_ORDER_SELECT}</select></label>
|
||||
<hr class="dashed" />
|
||||
<input type="submit" class="button1 button button-form-bold" name="sort" value="{L_SORT}" />
|
||||
<!-- ELSE -->
|
||||
<label>{L_DISPLAY}{L_COLON} {S_SELECT_SORT_DAYS}</label>
|
||||
<!-- IF S_SELECT_SORT_KEY -->
|
||||
<label>{L_SORT_BY}{L_COLON} {S_SELECT_SORT_KEY}</label>
|
||||
<label>{L_SORT_DIRECTION}{L_COLON} {S_SELECT_SORT_DIR}</label>
|
||||
<!-- ENDIF -->
|
||||
<hr class="dashed" />
|
||||
<input type="submit" class="button1 button button-form-bold" name="sort" value="{L_GO}" />
|
||||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
49
phpBB/styles/prosilver2/template/drafts.html
Normal file
|
@ -0,0 +1,49 @@
|
|||
|
||||
|
||||
<!-- IF .draftrow -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3 class="draft-title">{L_LOAD_DRAFT}</h3>
|
||||
<p>{L_LOAD_DRAFT_EXPLAIN}</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="<!-- IF not S_PRIVMSGS -->forumbg<!-- ELSE -->panel<!-- ENDIF -->">
|
||||
<div class="inner">
|
||||
|
||||
<ul class="topiclist two-long-columns">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt>{L_LOAD_DRAFT}</dt>
|
||||
<dd class="info">{L_SAVE_DATE}</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist two-long-columns<!-- IF not S_PRIVMSGS --> topics<!-- ELSE --> cplist<!-- ENDIF -->">
|
||||
|
||||
<!-- BEGIN draftrow -->
|
||||
<li class="row<!-- IF draftrow.S_ROW_COUNT is even --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{draftrow.U_INSERT}" title="{L_LOAD_DRAFT}" class="topictitle">{draftrow.DRAFT_SUBJECT}</a><br />
|
||||
<!-- IF not S_PRIVMSGS --><!-- IF draftrow.S_LINK_TOPIC -->{L_TOPIC}{L_COLON} <a href="{draftrow.U_VIEW}">{draftrow.TITLE}</a>
|
||||
<!-- ELSEIF draftrow.S_LINK_FORUM -->{L_FORUM}{L_COLON} <a href="{draftrow.U_VIEW}">{draftrow.TITLE}</a>
|
||||
<!-- ELSE -->{L_NO_TOPIC_FORUM}<!-- ENDIF --><!-- ENDIF -->
|
||||
<div class="responsive-show" style="display: none;">
|
||||
{L_SAVE_DATE}{L_COLON} <strong>{draftrow.DATE}</strong>
|
||||
</div>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="info"><span>{draftrow.DATE}</span></dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END draftrow -->
|
||||
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
50
phpBB/styles/prosilver2/template/faq_body.html
Normal file
|
@ -0,0 +1,50 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<h2 class="faq-title">{L_FAQ_TITLE}</h2>
|
||||
|
||||
|
||||
<div class="panel bg1" id="faqlinks">
|
||||
<div class="inner">
|
||||
<div class="column1">
|
||||
<!-- BEGIN faq_block -->
|
||||
<!-- IF faq_block.SWITCH_COLUMN or (SWITCH_COLUMN_MANUALLY and faq_block.S_ROW_COUNT == 4) -->
|
||||
</div>
|
||||
|
||||
<div class="column2">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl class="faq">
|
||||
<dt><strong>{faq_block.BLOCK_TITLE}</strong></dt>
|
||||
<!-- BEGIN faq_row -->
|
||||
<dd><a href="#f{faq_block.S_ROW_COUNT}r{faq_block.faq_row.S_ROW_COUNT}">{faq_block.faq_row.FAQ_QUESTION}</a></dd>
|
||||
<!-- END faq_row -->
|
||||
</dl>
|
||||
<!-- END faq_block -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- BEGIN faq_block -->
|
||||
<div class="panel <!-- IF faq_block.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<h2 class="faq-title">{faq_block.BLOCK_TITLE}</h2>
|
||||
<!-- BEGIN faq_row -->
|
||||
<dl class="faq">
|
||||
<dt id="f{faq_block.S_ROW_COUNT}r{faq_block.faq_row.S_ROW_COUNT}"><strong>{faq_block.faq_row.FAQ_QUESTION}</strong></dt>
|
||||
<dd>{faq_block.faq_row.FAQ_ANSWER}</dd>
|
||||
</dl>
|
||||
<a href="#faqlinks" class="top">
|
||||
{{ Icon('font', 'circle-chevron-up', lang('BACK_TO_TOP'), false) }}
|
||||
</a>
|
||||
<!-- IF not faq_block.faq_row.S_LAST_ROW --><hr class="dashed" /><!-- ENDIF -->
|
||||
<!-- END faq_row -->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- END faq_block -->
|
||||
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
<!-- INCLUDE overall_footer.html -->
|
752
phpBB/styles/prosilver2/template/forum_fn.js
Normal file
|
@ -0,0 +1,752 @@
|
|||
/* global phpbb */
|
||||
|
||||
/**
|
||||
* phpBB3 forum functions
|
||||
*/
|
||||
|
||||
/**
|
||||
* Find a member
|
||||
*/
|
||||
function find_username(url) {
|
||||
'use strict';
|
||||
|
||||
popup(url, 760, 570, '_usersearch');
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Window popup
|
||||
*/
|
||||
function popup(url, width, height, name) {
|
||||
'use strict';
|
||||
|
||||
if (!name) {
|
||||
name = '_popup';
|
||||
}
|
||||
|
||||
window.open(url.replace(/&/g, '&'), name, 'height=' + height + ',resizable=yes,scrollbars=yes, width=' + width);
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Jump to page
|
||||
*/
|
||||
function pageJump(item) {
|
||||
'use strict';
|
||||
|
||||
var page = parseInt(item.val(), 10),
|
||||
perPage = item.attr('data-per-page'),
|
||||
baseUrl = item.attr('data-base-url'),
|
||||
startName = item.attr('data-start-name');
|
||||
|
||||
if (page !== null && !isNaN(page) && page === Math.floor(page) && page > 0) {
|
||||
if (baseUrl.indexOf('?') === -1) {
|
||||
document.location.href = baseUrl + '?' + startName + '=' + ((page - 1) * perPage);
|
||||
} else {
|
||||
document.location.href = baseUrl.replace(/&/g, '&') + '&' + startName + '=' + ((page - 1) * perPage);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Mark/unmark checklist
|
||||
* id = ID of parent container, name = name prefix, state = state [true/false]
|
||||
*/
|
||||
function marklist(id, name, state) {
|
||||
'use strict';
|
||||
|
||||
jQuery('#' + id + ' input[type=checkbox][name]').each(function() {
|
||||
var $this = jQuery(this);
|
||||
if ($this.attr('name').substr(0, name.length) === name && !$this.prop('disabled')) {
|
||||
$this.prop('checked', state);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Resize viewable area for attached image or topic review panel (possibly others to come)
|
||||
* e = element
|
||||
*/
|
||||
function viewableArea(e, itself) {
|
||||
'use strict';
|
||||
|
||||
if (!e) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!itself) {
|
||||
e = e.parentNode;
|
||||
}
|
||||
|
||||
if (!e.vaHeight) {
|
||||
// Store viewable area height before changing style to auto
|
||||
e.vaHeight = e.offsetHeight;
|
||||
e.vaMaxHeight = e.style.maxHeight;
|
||||
e.style.height = 'auto';
|
||||
e.style.maxHeight = 'none';
|
||||
e.style.overflow = 'visible';
|
||||
} else {
|
||||
// Restore viewable area height to the default
|
||||
e.style.height = e.vaHeight + 'px';
|
||||
e.style.overflow = 'auto';
|
||||
e.style.maxHeight = e.vaMaxHeight;
|
||||
e.vaHeight = false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Alternate display of subPanels
|
||||
*/
|
||||
jQuery(function($) {
|
||||
'use strict';
|
||||
|
||||
$('.sub-panels').each(function() {
|
||||
|
||||
var $childNodes = $('a[data-subpanel]', this),
|
||||
panels = $childNodes.map(function () {
|
||||
return this.getAttribute('data-subpanel');
|
||||
}),
|
||||
showPanel = this.getAttribute('data-show-panel');
|
||||
|
||||
if (panels.length) {
|
||||
activateSubPanel(showPanel, panels);
|
||||
$childNodes.click(function () {
|
||||
activateSubPanel(this.getAttribute('data-subpanel'), panels);
|
||||
return false;
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Activate specific subPanel
|
||||
*/
|
||||
function activateSubPanel(p, panels) {
|
||||
'use strict';
|
||||
|
||||
var i, showPanel;
|
||||
|
||||
if (typeof p === 'string') {
|
||||
showPanel = p;
|
||||
}
|
||||
$('input[name="show_panel"]').val(showPanel);
|
||||
|
||||
if (typeof panels === 'undefined') {
|
||||
panels = jQuery('.sub-panels a[data-subpanel]').map(function() {
|
||||
return this.getAttribute('data-subpanel');
|
||||
});
|
||||
}
|
||||
|
||||
for (i = 0; i < panels.length; i++) {
|
||||
jQuery('#' + panels[i]).css('display', panels[i] === showPanel ? 'block' : 'none');
|
||||
jQuery('#' + panels[i] + '-tab').toggleClass('activetab', panels[i] === showPanel);
|
||||
}
|
||||
}
|
||||
|
||||
function selectCode(a) {
|
||||
'use strict';
|
||||
|
||||
// Get ID of code block
|
||||
var e = a.parentNode.parentNode.getElementsByTagName('CODE')[0];
|
||||
var s, r;
|
||||
|
||||
// Not IE and IE9+
|
||||
if (window.getSelection) {
|
||||
s = window.getSelection();
|
||||
// Safari and Chrome
|
||||
if (s.setBaseAndExtent) {
|
||||
var l = (e.innerText.length > 1) ? e.innerText.length - 1 : 1;
|
||||
try {
|
||||
s.setBaseAndExtent(e, 0, e, l);
|
||||
} catch (error) {
|
||||
r = document.createRange();
|
||||
r.selectNodeContents(e);
|
||||
s.removeAllRanges();
|
||||
s.addRange(r);
|
||||
}
|
||||
}
|
||||
// Firefox and Opera
|
||||
else {
|
||||
// workaround for bug # 42885
|
||||
if (window.opera && e.innerHTML.substring(e.innerHTML.length - 4) === '<BR>') {
|
||||
e.innerHTML = e.innerHTML + ' ';
|
||||
}
|
||||
|
||||
r = document.createRange();
|
||||
r.selectNodeContents(e);
|
||||
s.removeAllRanges();
|
||||
s.addRange(r);
|
||||
}
|
||||
}
|
||||
// Some older browsers
|
||||
else if (document.getSelection) {
|
||||
s = document.getSelection();
|
||||
r = document.createRange();
|
||||
r.selectNodeContents(e);
|
||||
s.removeAllRanges();
|
||||
s.addRange(r);
|
||||
}
|
||||
// IE
|
||||
else if (document.selection) {
|
||||
r = document.body.createTextRange();
|
||||
r.moveToElementText(e);
|
||||
r.select();
|
||||
}
|
||||
}
|
||||
|
||||
var inAutocomplete = false;
|
||||
var lastKeyEntered = '';
|
||||
|
||||
/**
|
||||
* Check event key
|
||||
*/
|
||||
function phpbbCheckKey(event) {
|
||||
'use strict';
|
||||
|
||||
// Keycode is array down or up?
|
||||
if (event.keyCode && (event.keyCode === 40 || event.keyCode === 38)) {
|
||||
inAutocomplete = true;
|
||||
}
|
||||
|
||||
// Make sure we are not within an "autocompletion" field
|
||||
if (inAutocomplete) {
|
||||
// If return pressed and key changed we reset the autocompletion
|
||||
if (!lastKeyEntered || lastKeyEntered === event.which) {
|
||||
inAutocomplete = false;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// Keycode is not return, then return. ;)
|
||||
if (event.which !== 13) {
|
||||
lastKeyEntered = event.which;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Apply onkeypress event for forcing default submit button on ENTER key press
|
||||
*/
|
||||
jQuery(function($) {
|
||||
'use strict';
|
||||
|
||||
$('form input[type=text], form input[type=password]').on('keypress', function (e) {
|
||||
var defaultButton = $(this).parents('form').find('input[type=submit].default-submit-action');
|
||||
|
||||
if (!defaultButton || defaultButton.length <= 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (phpbbCheckKey(e)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if ((e.which && e.which === 13) || (e.keyCode && e.keyCode === 13)) {
|
||||
defaultButton.click();
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Functions for user search popup
|
||||
*/
|
||||
function insertUser(formId, value) {
|
||||
'use strict';
|
||||
|
||||
var $form = jQuery(formId),
|
||||
formName = $form.attr('data-form-name'),
|
||||
fieldName = $form.attr('data-field-name'),
|
||||
item = opener.document.forms[formName][fieldName];
|
||||
|
||||
if (item.value.length && item.type === 'textarea') {
|
||||
value = item.value + '\n' + value;
|
||||
}
|
||||
|
||||
item.value = value;
|
||||
}
|
||||
|
||||
function insert_marked_users(formId, users) {
|
||||
'use strict';
|
||||
|
||||
$(users).filter(':checked').each(function() {
|
||||
insertUser(formId, this.value);
|
||||
});
|
||||
|
||||
window.close();
|
||||
}
|
||||
|
||||
function insert_single_user(formId, user) {
|
||||
'use strict';
|
||||
|
||||
insertUser(formId, user);
|
||||
window.close();
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse document block
|
||||
*/
|
||||
function parseDocument($container) {
|
||||
'use strict';
|
||||
|
||||
var test = document.createElement('div'),
|
||||
oldBrowser = (typeof test.style.borderRadius === 'undefined'),
|
||||
$body = $('body');
|
||||
|
||||
/**
|
||||
* Reset avatar dimensions when changing URL or EMAIL
|
||||
*/
|
||||
$container.find('input[data-reset-on-edit]').on('keyup', function() {
|
||||
$(this.getAttribute('data-reset-on-edit')).val('');
|
||||
});
|
||||
|
||||
/**
|
||||
* Pagination
|
||||
*/
|
||||
$container.find('.pagination .page-jump-form :button').click(function() {
|
||||
var $input = $(this).siblings('input.inputbox');
|
||||
pageJump($input);
|
||||
});
|
||||
|
||||
$container.find('.pagination .page-jump-form input.inputbox').on('keypress', function(event) {
|
||||
if (event.which === 13 || event.keyCode === 13) {
|
||||
event.preventDefault();
|
||||
pageJump($(this));
|
||||
}
|
||||
});
|
||||
|
||||
$container.find('.pagination .dropdown-trigger').click(function() {
|
||||
var $dropdownContainer = $(this).parent();
|
||||
// Wait a little bit to make sure the dropdown has activated
|
||||
setTimeout(function() {
|
||||
if ($dropdownContainer.hasClass('dropdown-visible')) {
|
||||
$dropdownContainer.find('input.inputbox').focus();
|
||||
}
|
||||
}, 100);
|
||||
});
|
||||
|
||||
/**
|
||||
* Resize navigation (breadcrumbs) block to keep all links on same line
|
||||
*/
|
||||
$container.find('.navlinks').each(function() {
|
||||
var $this = $(this),
|
||||
$left = $this.children().not('.rightside'),
|
||||
$right = $this.children('.rightside');
|
||||
|
||||
if ($left.length !== 1 || !$right.length) {
|
||||
return;
|
||||
}
|
||||
|
||||
function resize() {
|
||||
var width = 0,
|
||||
diff = $left.outerWidth(true) - $left.width(),
|
||||
minWidth = Math.max($this.width() / 3, 240),
|
||||
maxWidth;
|
||||
|
||||
$right.each(function() {
|
||||
var $this = $(this);
|
||||
if ($this.is(':visible')) {
|
||||
width += $this.outerWidth(true);
|
||||
}
|
||||
});
|
||||
|
||||
maxWidth = $this.width() - width - diff;
|
||||
$left.css('max-width', Math.floor(Math.max(maxWidth, minWidth)) + 'px');
|
||||
}
|
||||
|
||||
resize();
|
||||
$(window).resize(resize);
|
||||
});
|
||||
|
||||
/**
|
||||
* Makes breadcrumbs responsive
|
||||
*/
|
||||
$container.find('.breadcrumbs:not([data-skip-responsive])').each(function() {
|
||||
var $this = $(this),
|
||||
$links = $this.find('.crumb'),
|
||||
length = $links.length,
|
||||
classes = ['wrapped-max', 'wrapped-wide', 'wrapped-medium', 'wrapped-small', 'wrapped-tiny'],
|
||||
classesLength = classes.length,
|
||||
maxHeight = 0,
|
||||
lastWidth = false,
|
||||
wrapped = false;
|
||||
|
||||
// Set tooltips
|
||||
$this.find('a').each(function() {
|
||||
var $link = $(this);
|
||||
$link.attr('title', $link.text());
|
||||
});
|
||||
|
||||
// Function that checks breadcrumbs
|
||||
function check() {
|
||||
var height = $this.height(),
|
||||
width;
|
||||
|
||||
// Test max-width set in code for .navlinks above
|
||||
width = parseInt($this.css('max-width'), 10);
|
||||
if (!width) {
|
||||
width = $body.width();
|
||||
}
|
||||
|
||||
maxHeight = parseInt($this.css('line-height'), 10);
|
||||
$links.each(function() {
|
||||
if ($(this).height() > 0) {
|
||||
maxHeight = Math.max(maxHeight, $(this).outerHeight(true));
|
||||
}
|
||||
});
|
||||
|
||||
if (height <= maxHeight) {
|
||||
if (!wrapped || lastWidth === false || lastWidth >= width) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
lastWidth = width;
|
||||
|
||||
if (wrapped) {
|
||||
$this.removeClass('wrapped').find('.crumb.wrapped').removeClass('wrapped ' + classes.join(' '));
|
||||
if ($this.height() <= maxHeight) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
wrapped = true;
|
||||
$this.addClass('wrapped');
|
||||
if ($this.height() <= maxHeight) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (var i = 0; i < classesLength; i++) {
|
||||
for (var j = length - 1; j >= 0; j--) {
|
||||
$links.eq(j).addClass('wrapped ' + classes[i]);
|
||||
if ($this.height() <= maxHeight) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Run function and set event
|
||||
check();
|
||||
$(window).resize(check);
|
||||
});
|
||||
|
||||
/**
|
||||
* Do not run functions below for old browsers
|
||||
*/
|
||||
if (oldBrowser) {
|
||||
return;
|
||||
}
|
||||
|
||||
/**
|
||||
* Adjust topiclist lists with check boxes
|
||||
*/
|
||||
$container.find('ul.topiclist dd.mark').siblings('dt').children('.list-inner').addClass('with-mark');
|
||||
|
||||
/**
|
||||
* Appends contents of all extra columns to first column in
|
||||
* .topiclist lists for mobile devices. Copies contents as is.
|
||||
*
|
||||
* To add that functionality to .topiclist list simply add
|
||||
* responsive-show-all to list of classes
|
||||
*/
|
||||
$container.find('.topiclist.responsive-show-all > li > dl').each(function() {
|
||||
var $this = $(this),
|
||||
$block = $this.find('dt .responsive-show:last-child'),
|
||||
first = true;
|
||||
|
||||
// Create block that is visible only on mobile devices
|
||||
if (!$block.length) {
|
||||
$this.find('dt > .list-inner').append('<div class="responsive-show" style="display:none;" />');
|
||||
$block = $this.find('dt .responsive-show:last-child');
|
||||
} else {
|
||||
first = ($.trim($block.text()).length === 0);
|
||||
}
|
||||
|
||||
// Copy contents of each column
|
||||
$this.find('dd').not('.mark').each(function() {
|
||||
var column = $(this),
|
||||
$children = column.children(),
|
||||
html = column.html();
|
||||
|
||||
if ($children.length === 1 && $children.text() === column.text()) {
|
||||
html = $children.html();
|
||||
}
|
||||
|
||||
$block.append((first ? '' : '<br />') + html);
|
||||
|
||||
first = false;
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Same as above, but prepends text from header to each
|
||||
* column before contents of that column.
|
||||
*
|
||||
* To add that functionality to .topiclist list simply add
|
||||
* responsive-show-columns to list of classes
|
||||
*/
|
||||
$container.find('.topiclist.responsive-show-columns').each(function() {
|
||||
var $list = $(this),
|
||||
headers = [],
|
||||
headersLength = 0;
|
||||
|
||||
// Find all headers, get contents
|
||||
$list.prev('.topiclist').find('li.header dd').not('.mark').each(function() {
|
||||
headers.push($(this).text());
|
||||
headersLength++;
|
||||
});
|
||||
|
||||
if (!headersLength) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Parse each row
|
||||
$list.find('dl').each(function() {
|
||||
var $this = $(this),
|
||||
$block = $this.find('dt .responsive-show:last-child'),
|
||||
first = true;
|
||||
|
||||
// Create block that is visible only on mobile devices
|
||||
if (!$block.length) {
|
||||
$this.find('dt > .list-inner').append('<div class="responsive-show" style="display:none;" />');
|
||||
$block = $this.find('dt .responsive-show:last-child');
|
||||
} else {
|
||||
first = ($.trim($block.text()).length === 0);
|
||||
}
|
||||
|
||||
// Copy contents of each column
|
||||
$this.find('dd').not('.mark').each(function(i) {
|
||||
var column = $(this),
|
||||
children = column.children(),
|
||||
html = column.html();
|
||||
|
||||
if (children.length === 1 && children.text() === column.text()) {
|
||||
html = children.html();
|
||||
}
|
||||
|
||||
// Prepend contents of matching header before contents of column
|
||||
if (i < headersLength) {
|
||||
html = headers[i] + ': <strong>' + html + '</strong>';
|
||||
}
|
||||
|
||||
$block.append((first ? '' : '<br />') + html);
|
||||
|
||||
first = false;
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Responsive tables
|
||||
*/
|
||||
$container.find('table.table1').not('.not-responsive').each(function() {
|
||||
var $this = $(this),
|
||||
$th = $this.find('thead > tr > th'),
|
||||
headers = [],
|
||||
totalHeaders = 0,
|
||||
i, headersLength;
|
||||
|
||||
// Find each header
|
||||
$th.each(function(column) {
|
||||
var cell = $(this),
|
||||
colspan = parseInt(cell.attr('colspan'), 10),
|
||||
dfn = cell.attr('data-dfn'),
|
||||
text = dfn ? dfn : cell.text();
|
||||
|
||||
colspan = isNaN(colspan) || colspan < 1 ? 1 : colspan;
|
||||
|
||||
for (i = 0; i < colspan; i++) {
|
||||
headers.push(text);
|
||||
}
|
||||
totalHeaders++;
|
||||
|
||||
if (dfn && !column) {
|
||||
$this.addClass('show-header');
|
||||
}
|
||||
});
|
||||
|
||||
headersLength = headers.length;
|
||||
|
||||
// Add header text to each cell as <dfn>
|
||||
$this.addClass('responsive');
|
||||
|
||||
if (totalHeaders < 2) {
|
||||
$this.addClass('show-header');
|
||||
return;
|
||||
}
|
||||
|
||||
$this.find('tbody > tr').each(function() {
|
||||
var row = $(this),
|
||||
cells = row.children('td'),
|
||||
column = 0;
|
||||
|
||||
if (cells.length === 1) {
|
||||
row.addClass('big-column');
|
||||
return;
|
||||
}
|
||||
|
||||
cells.each(function() {
|
||||
var cell = $(this),
|
||||
colspan = parseInt(cell.attr('colspan'), 10),
|
||||
text = $.trim(cell.text());
|
||||
|
||||
if (headersLength <= column) {
|
||||
return;
|
||||
}
|
||||
|
||||
if ((text.length && text !== '-') || cell.children().length) {
|
||||
cell.prepend('<dfn style="display: none;">' + headers[column] + '</dfn>');
|
||||
} else {
|
||||
cell.addClass('empty');
|
||||
}
|
||||
|
||||
colspan = isNaN(colspan) || colspan < 1 ? 1 : colspan;
|
||||
column += colspan;
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
/**
|
||||
* Hide empty responsive tables
|
||||
*/
|
||||
$container.find('table.responsive > tbody').not('.responsive-skip-empty').each(function() {
|
||||
var $items = $(this).children('tr');
|
||||
if (!$items.length) {
|
||||
$(this).parent('table:first').addClass('responsive-hide');
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Responsive tabs
|
||||
*/
|
||||
$container.find('#tabs, #minitabs').not('[data-skip-responsive]').each(function() {
|
||||
var $this = $(this),
|
||||
$ul = $this.children(),
|
||||
$tabs = $ul.children().not('[data-skip-responsive]'),
|
||||
$links = $tabs.children('a'),
|
||||
$item = $ul.append('<li class="tab responsive-tab" style="display:none;"><a href="javascript:void(0);" class="responsive-tab-link"> </a><div class="dropdown tab-dropdown" style="display: none;"><div class="pointer"><div class="pointer-inner"></div></div><ul class="dropdown-contents" /></div></li>').find('li.responsive-tab'),
|
||||
$menu = $item.find('.dropdown-contents'),
|
||||
maxHeight = 0,
|
||||
lastWidth = false,
|
||||
responsive = false;
|
||||
|
||||
$links.each(function() {
|
||||
var $this = $(this);
|
||||
maxHeight = Math.max(maxHeight, Math.max($this.outerHeight(true), $this.parent().outerHeight(true)));
|
||||
});
|
||||
|
||||
function check() {
|
||||
var width = $body.width(),
|
||||
height = $this.height();
|
||||
|
||||
if (!arguments.length && (!responsive || width <= lastWidth) && height <= maxHeight) {
|
||||
return;
|
||||
}
|
||||
|
||||
$tabs.show();
|
||||
$item.hide();
|
||||
|
||||
lastWidth = width;
|
||||
height = $this.height();
|
||||
if (height <= maxHeight) {
|
||||
if ($item.hasClass('dropdown-visible')) {
|
||||
phpbb.toggleDropdown.call($item.find('a.responsive-tab-link').get(0));
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
responsive = true;
|
||||
$item.show();
|
||||
$menu.html('');
|
||||
|
||||
var $availableTabs = $tabs.filter(':not(.activetab, .responsive-tab)'),
|
||||
total = $availableTabs.length,
|
||||
i, $tab;
|
||||
|
||||
for (i = total - 1; i >= 0; i--) {
|
||||
$tab = $availableTabs.eq(i);
|
||||
$menu.prepend($tab.clone(true).removeClass('tab'));
|
||||
$tab.hide();
|
||||
if ($this.height() <= maxHeight) {
|
||||
$menu.find('a').click(function() {
|
||||
check(true);
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
$menu.find('a').click(function() {
|
||||
check(true);
|
||||
});
|
||||
}
|
||||
|
||||
var $tabLink = $item.find('a.responsive-tab-link');
|
||||
phpbb.registerDropdown($tabLink, $item.find('.dropdown'), {
|
||||
visibleClass: 'activetab'
|
||||
});
|
||||
|
||||
check(true);
|
||||
$(window).resize(check);
|
||||
});
|
||||
|
||||
/**
|
||||
* Hide UCP/MCP navigation if there is only 1 item
|
||||
*/
|
||||
$container.find('#navigation').each(function() {
|
||||
var $items = $(this).children('ol, ul').children('li');
|
||||
if ($items.length === 1) {
|
||||
$(this).addClass('responsive-hide');
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Replace responsive text
|
||||
*/
|
||||
$container.find('[data-responsive-text]').each(function() {
|
||||
var $this = $(this),
|
||||
fullText = $this.text(),
|
||||
responsiveText = $this.attr('data-responsive-text'),
|
||||
responsive = false;
|
||||
|
||||
function check() {
|
||||
if ($(window).width() > 700) {
|
||||
if (!responsive) {
|
||||
return;
|
||||
}
|
||||
$this.text(fullText);
|
||||
responsive = false;
|
||||
return;
|
||||
}
|
||||
if (responsive) {
|
||||
return;
|
||||
}
|
||||
$this.text(responsiveText);
|
||||
responsive = true;
|
||||
}
|
||||
|
||||
check();
|
||||
$(window).resize(check);
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Run onload functions
|
||||
*/
|
||||
jQuery(function($) {
|
||||
'use strict';
|
||||
|
||||
// Swap .nojs and .hasjs
|
||||
$('#phpbb.nojs').toggleClass('nojs hasjs');
|
||||
$('#phpbb').toggleClass('hastouch', phpbb.isTouch);
|
||||
$('#phpbb.hastouch').removeClass('notouch');
|
||||
|
||||
// Focus forms
|
||||
$('form[data-focus]:first').each(function() {
|
||||
$('#' + this.getAttribute('data-focus')).focus();
|
||||
});
|
||||
|
||||
parseDocument($('body'));
|
||||
});
|
153
phpBB/styles/prosilver2/template/forumlist_body.html
Normal file
|
@ -0,0 +1,153 @@
|
|||
|
||||
<!-- BEGIN forumrow -->
|
||||
<!-- IF (forumrow.S_IS_CAT and not forumrow.S_FIRST_ROW) or forumrow.S_NO_CAT -->
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT forumlist_body_category_header_before -->
|
||||
<!-- IF forumrow.S_IS_CAT or forumrow.S_FIRST_ROW or forumrow.S_NO_CAT -->
|
||||
<div class="forabg">
|
||||
<div class="inner">
|
||||
<ul class="topiclist">
|
||||
<li class="header">
|
||||
<!-- EVENT forumlist_body_category_header_row_prepend -->
|
||||
<dl class="row-item">
|
||||
<dt><div class="list-inner"><!-- IF forumrow.S_IS_CAT --><a href="{forumrow.U_VIEWFORUM}">{forumrow.FORUM_NAME}</a><!-- ELSE -->{L_FORUM}<!-- ENDIF --></div></dt>
|
||||
<dd class="topics">{L_TOPICS}</dd>
|
||||
<dd class="posts">{L_POSTS}</dd>
|
||||
<dd class="lastpost"><span>{L_LAST_POST}</span></dd>
|
||||
</dl>
|
||||
<!-- EVENT forumlist_body_category_header_row_append -->
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist forums">
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT forumlist_body_category_header_after -->
|
||||
|
||||
<!-- IF not forumrow.S_IS_CAT -->
|
||||
<!-- EVENT forumlist_body_forum_row_before -->
|
||||
<li class="row">
|
||||
<!-- EVENT forumlist_body_forum_row_prepend -->
|
||||
<dl class="row-item">
|
||||
<dt title="{% if forumrow.S_IS_LINK %}{{ lang('FORUM_LINK') }}{% else %}{{ forumrow.FORUM_FOLDER_IMG_ALT }}{% endif %}">
|
||||
<a class="row-item-link{% if forumrow.S_UNREAD_FORUM %} unread{% else %} read{% endif %}" href="{forumrow.U_VIEWFORUM}">
|
||||
{{ Icon('svg', {
|
||||
'link-variant' : forumrow.S_IS_LINK,
|
||||
'lock' : forumrow.S_LOCKED_FORUM,
|
||||
'file-document-box-multiple-outline' : forumrow.S_SUBFORUMS,
|
||||
'file-document-box-outline' : true,
|
||||
}, '', true, 'c-forum-row-icon') }}
|
||||
</a>
|
||||
<div class="list-inner">
|
||||
<!-- IF S_ENABLE_FEEDS and forumrow.S_FEED_ENABLED -->
|
||||
<!--
|
||||
<a class="feed-icon-forum" title="{L_FEED} - {forumrow.FORUM_NAME}" href="{U_FEED}?f={forumrow.FORUM_ID}">
|
||||
{{ Icon('font', 'square-rss', '', true, 'fas c-feed-icon') }}<span class="sr-only">{L_FEED} - {forumrow.FORUM_NAME}</span>
|
||||
</a>
|
||||
-->
|
||||
<!-- ENDIF -->
|
||||
<!-- IF forumrow.FORUM_IMAGE -->
|
||||
<!-- EVENT forumlist_body_forum_image_before -->
|
||||
<span class="forum-image"><!-- EVENT forumlist_body_forum_image_prepend -->{forumrow.FORUM_IMAGE}<!-- EVENT forumlist_body_forum_image_append --></span>
|
||||
<!-- EVENT forumlist_body_forum_image_after -->
|
||||
<!-- ENDIF -->
|
||||
<a href="{forumrow.U_VIEWFORUM}" class="forumtitle">{forumrow.FORUM_NAME}</a>
|
||||
<!-- IF forumrow.FORUM_DESC --><span class="forum-desc">{forumrow.FORUM_DESC}</span><!-- ENDIF -->
|
||||
<!-- IF forumrow.MODERATORS -->
|
||||
<span class="forum-mods"><strong>{forumrow.L_MODERATOR_STR}{L_COLON}</strong> {forumrow.MODERATORS}</span>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF .forumrow.subforum and forumrow.S_LIST_SUBFORUMS -->
|
||||
<!-- EVENT forumlist_body_subforums_before -->
|
||||
<span class="forum-subs">
|
||||
<strong>{forumrow.L_SUBFORUM_STR}{L_COLON}</strong>
|
||||
<!-- BEGIN subforum -->
|
||||
<!-- EVENT forumlist_body_subforum_link_prepend -->
|
||||
<a href="{forumrow.subforum.U_SUBFORUM}" class="subforum<!-- IF forumrow.subforum.S_UNREAD --> unread<!-- ELSE --> read<!-- ENDIF -->" title="{% if forumrow.subforum.IS_LINK %}{{ lang('FORUM_LINK') }}{% elseif forumrow.subforum.S_UNREAD %}{{ lang('UNREAD_POSTS') }}{% else %}{{ lang('NO_UNREAD_POSTS') }}{% endif %}">
|
||||
{% if forumrow.subforum.IS_LINK %}
|
||||
{{ Icon('font', 'arrow-up-right-from-square', forumrow.subforum.SUBFORUM_NAME, false, 'fas c-subforum-icon') }}
|
||||
{% else %}
|
||||
{{ Icon('font', 'file', forumrow.subforum.SUBFORUM_NAME, false, 'far c-subforum-icon') }}
|
||||
{% endif %}
|
||||
</a>{% if not forumrow.subforum.S_LAST_ROW %}{L_COMMA_SEPARATOR}{% endif %}
|
||||
<!-- EVENT forumlist_body_subforum_link_append -->
|
||||
<!-- END subforum -->
|
||||
</span>
|
||||
<!-- EVENT forumlist_body_subforums_after -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_IS_BOT -->
|
||||
<div class="responsive-show" style="display: none;">
|
||||
<!-- IF forumrow.CLICKS -->
|
||||
{L_REDIRECTS}{L_COLON} <strong>{forumrow.CLICKS}</strong>
|
||||
<!-- ELSEIF not forumrow.S_IS_LINK and forumrow.TOPICS -->
|
||||
{L_TOPICS}{L_COLON} <strong>{forumrow.TOPICS}</strong>
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</dt>
|
||||
<!-- IF forumrow.CLICKS -->
|
||||
<dd class="redirect"><span>{L_REDIRECTS}{L_COLON} {forumrow.CLICKS}</span></dd>
|
||||
<!-- ELSEIF not forumrow.S_IS_LINK -->
|
||||
<dd class="topics">{forumrow.TOPICS} <dfn>{L_TOPICS}</dfn></dd>
|
||||
<dd class="posts">{forumrow.POSTS} <dfn>{L_POSTS}</dfn></dd>
|
||||
<dd class="lastpost">
|
||||
<span>
|
||||
<!-- IF forumrow.U_UNAPPROVED_TOPICS -->
|
||||
<a href="{forumrow.U_UNAPPROVED_TOPICS}" title="{L_TOPICS_UNAPPROVED}">
|
||||
{{ Icon('font', 'circle-question', lang('TOPICS_UNAPPROVED'), true, 'fas c-unapproved-icon') }}
|
||||
</a>
|
||||
<!-- ELSEIF forumrow.U_UNAPPROVED_POSTS -->
|
||||
<a href="{forumrow.U_UNAPPROVED_POSTS}" title="{L_POSTS_UNAPPROVED_FORUM}">
|
||||
{{ Icon('font', 'circle-question', lang('POSTS_UNAPPROVED_FORUM'), true, 'fas c-unapproved-icon') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF forumrow.LAST_POST_TIME_RFC3339 -->
|
||||
<dfn>{L_LAST_POST}</dfn>
|
||||
<!-- IF forumrow.S_DISPLAY_SUBJECT -->
|
||||
<!-- EVENT forumlist_body_last_post_title_prepend -->
|
||||
<a href="{forumrow.U_LAST_POST}" title="{forumrow.LAST_POST_SUBJECT}" class="lastsubject">{forumrow.LAST_POST_SUBJECT_TRUNCATED}</a> <br />
|
||||
<!-- ENDIF -->
|
||||
{L_POST_BY_AUTHOR} <!-- EVENT forumlist_body_last_poster_username_prepend -->{forumrow.LAST_POSTER_FULL}<!-- EVENT forumlist_body_last_poster_username_append -->
|
||||
<!-- IF not S_IS_BOT -->
|
||||
<a href="{forumrow.U_LAST_POST}" title="{L_VIEW_LATEST_POST}">
|
||||
{{ Icon('font', 'arrow-up-right-from-square', lang('VIEW_LATEST_POST'), true, 'fas c-last-post-icon') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
<br /><time datetime="{forumrow.LAST_POST_TIME_RFC3339}">{forumrow.LAST_POST_TIME}</time>
|
||||
<!-- ELSE -->
|
||||
{% if forumrow.U_UNAPPROVED_TOPICS %}
|
||||
{{ lang('TOPIC_UNAPPROVED_FORUM', forumrow.TOPICS) }}
|
||||
{% else %}
|
||||
{{ lang('NO_POSTS') }}
|
||||
{% endif %}
|
||||
<!-- ENDIF -->
|
||||
</span>
|
||||
</dd>
|
||||
<!-- ELSE -->
|
||||
<dd> </dd>
|
||||
<!-- ENDIF -->
|
||||
</dl>
|
||||
<!-- EVENT forumlist_body_forum_row_append -->
|
||||
</li>
|
||||
<!-- EVENT forumlist_body_forum_row_after -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF forumrow.S_LAST_ROW -->
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- EVENT forumlist_body_last_row_after -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- BEGINELSE -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<strong>{L_NO_FORUMS}</strong>
|
||||
</div>
|
||||
</div>
|
||||
<!-- END forumrow -->
|
0
phpBB/styles/prosilver2/template/index.htm
Normal file
94
phpBB/styles/prosilver2/template/index_body.html
Normal file
|
@ -0,0 +1,94 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<p class="{S_CONTENT_FLOW_END} responsive-center time<!-- IF S_USER_LOGGED_IN --> rightside<!-- ENDIF -->"><!-- IF S_USER_LOGGED_IN -->{LAST_VISIT_DATE}<!-- ELSE -->{CURRENT_TIME}<!-- ENDIF --></p>
|
||||
<!-- IF S_USER_LOGGED_IN --><p class="responsive-center time">{CURRENT_TIME}</p><!-- ENDIF -->
|
||||
|
||||
<!-- EVENT index_body_markforums_before -->
|
||||
<!-- IF U_MARK_FORUMS -->
|
||||
<div class="action-bar compact">
|
||||
<a href="{U_MARK_FORUMS}" class="mark-read rightside" accesskey="m" data-ajax="mark_forums_read">{L_MARK_FORUMS_READ}</a>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT index_body_markforums_after -->
|
||||
|
||||
<!-- INCLUDE forumlist_body.html -->
|
||||
|
||||
<!-- EVENT index_body_forumlist_body_after -->
|
||||
|
||||
<!-- IF not S_USER_LOGGED_IN and not S_IS_BOT -->
|
||||
<form method="post" action="{S_LOGIN_ACTION}" class="headerspace">
|
||||
<h3><a href="{U_LOGIN_LOGOUT}">{L_LOGIN_LOGOUT}</a><!-- IF S_REGISTER_ENABLED --> • <a href="{U_REGISTER}">{L_REGISTER}</a><!-- ENDIF --></h3>
|
||||
<fieldset class="quick-login">
|
||||
<label for="username"><span>{L_USERNAME}{L_COLON}</span> <input type="text" tabindex="1" name="username" id="username" size="10" class="inputbox" title="{L_USERNAME}" autocomplete="username" /></label>
|
||||
<label for="password"><span>{L_PASSWORD}{L_COLON}</span> <input type="password" tabindex="2" name="password" id="password" size="10" class="inputbox" title="{L_PASSWORD}" autocomplete="current-password" /></label>
|
||||
<!-- IF U_SEND_PASSWORD -->
|
||||
<a href="{U_SEND_PASSWORD}">{L_FORGOT_PASS}</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_AUTOLOGIN_ENABLED -->
|
||||
<span class="responsive-hide">|</span> <label for="autologin">{L_LOG_ME_IN} <input type="checkbox" tabindex="4" name="autologin" id="autologin" checked /></label>
|
||||
<!-- ENDIF -->
|
||||
<input type="submit" tabindex="5" name="login" value="{L_LOGIN}" class="button1 button button-form-bold" />
|
||||
{S_LOGIN_REDIRECT}
|
||||
{S_FORM_TOKEN_LOGIN}
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT index_body_stat_blocks_before -->
|
||||
|
||||
<!-- IF S_DISPLAY_ONLINE_LIST -->
|
||||
<div class="stat-block online-list">
|
||||
<!-- IF U_VIEWONLINE --><h3><a href="{U_VIEWONLINE}">{L_WHO_IS_ONLINE}</a></h3><!-- ELSE --><h3>{L_WHO_IS_ONLINE}</h3><!-- ENDIF -->
|
||||
<p>
|
||||
<!-- EVENT index_body_block_online_prepend -->
|
||||
{TOTAL_USERS_ONLINE} ({L_ONLINE_EXPLAIN})<br />{RECORD_USERS}<br />
|
||||
<!-- IF U_VIEWONLINE -->
|
||||
<br />{LOGGED_IN_USER_LIST}
|
||||
{% if LEGEND|length > 0 %}
|
||||
{% apply spaceless %}
|
||||
<br>
|
||||
<em>
|
||||
{{ lang('LEGEND') ~ lang('COLON') }}
|
||||
{% for group in LEGEND %}
|
||||
{% if group.GROUP_URL %}
|
||||
<a style="color:#{{ group.GROUP_COLOR }}" href="{{ group.GROUP_URL }}" alt="{{ group.GROUP_NAME }}">{{ group.GROUP_NAME }}</a>{% if not loop.last %}, {% endif %}
|
||||
{% else %}
|
||||
<span style="color:#{{ group.GROUP_COLOR }}">{{ group.GROUP_NAME }}</span>{% if not loop.last %}, {% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</em>
|
||||
{% endapply %}
|
||||
{% endif %}
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT index_body_block_online_append -->
|
||||
</p>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT index_body_birthday_block_before -->
|
||||
|
||||
<!-- IF S_DISPLAY_BIRTHDAY_LIST -->
|
||||
<div class="stat-block birthday-list">
|
||||
<h3>{L_BIRTHDAYS}</h3>
|
||||
<p>
|
||||
<!-- EVENT index_body_block_birthday_prepend -->
|
||||
<!-- IF .birthdays -->{L_CONGRATULATIONS}{L_COLON} <strong><!-- BEGIN birthdays -->{birthdays.USERNAME}<!-- IF birthdays.AGE !== '' --> ({birthdays.AGE})<!-- ENDIF --><!-- IF not birthdays.S_LAST_ROW -->, <!-- ENDIF --><!-- END birthdays --></strong><!-- ELSE -->{L_NO_BIRTHDAYS}<!-- ENDIF -->
|
||||
<!-- EVENT index_body_block_birthday_append -->
|
||||
</p>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF NEWEST_USER -->
|
||||
<div class="stat-block statistics">
|
||||
<h3>{L_STATISTICS}</h3>
|
||||
<p>
|
||||
<!-- EVENT index_body_block_stats_prepend -->
|
||||
{TOTAL_POSTS} • {TOTAL_TOPICS} • {TOTAL_USERS} • {NEWEST_USER}
|
||||
<!-- EVENT index_body_block_stats_append -->
|
||||
</p>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT index_body_stat_blocks_after -->
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
50
phpBB/styles/prosilver2/template/jumpbox.html
Normal file
|
@ -0,0 +1,50 @@
|
|||
|
||||
<div class="action-bar actions-jump">
|
||||
<!-- IF S_VIEWTOPIC -->
|
||||
<p class="jumpbox-return">
|
||||
<a href="{U_VIEW_FORUM}" class="left-box arrow-{S_CONTENT_FLOW_BEGIN}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('RETURN_TO_FORUM'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<!-- ELSEIF S_VIEWFORUM -->
|
||||
<p class="jumpbox-return">
|
||||
<a href="{U_INDEX}" class="left-box arrow-{S_CONTENT_FLOW_BEGIN}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('RETURN_TO_INDEX'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<!-- ELSEIF SEARCH_TOPIC -->
|
||||
<p class="jumpbox-return">
|
||||
<a class="left-box arrow-{S_CONTENT_FLOW_BEGIN}" href="{U_SEARCH_TOPIC}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('RETURN_TO_TOPIC'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<!-- ELSEIF S_SEARCH_ACTION -->
|
||||
<p class="jumpbox-return">
|
||||
<a class="left-box arrow-{S_CONTENT_FLOW_BEGIN}" href="{U_SEARCH}" title="{L_SEARCH_ADV}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('GO_TO_SEARCH_ADV'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_DISPLAY_JUMPBOX -->
|
||||
<div class="jumpbox dropdown-container dropdown-container-right<!-- IF not S_IN_MCP --> dropdown-up<!-- ENDIF --> dropdown-{S_CONTENT_FLOW_BEGIN} dropdown-button-control" id="jumpbox">
|
||||
<span title="<!-- IF S_IN_MCP and S_MERGE_SELECT -->{L_SELECT_TOPICS_FROM}<!-- ELSEIF S_IN_MCP -->{L_MODERATE_FORUM}<!-- ELSE -->{L_JUMP_TO}<!-- ENDIF -->" class="button button-secondary dropdown-trigger dropdown-select">
|
||||
<span><!-- IF S_IN_MCP and S_MERGE_SELECT -->{L_SELECT_TOPICS_FROM}<!-- ELSEIF S_IN_MCP -->{L_MODERATE_FORUM}<!-- ELSE -->{L_JUMP_TO}<!-- ENDIF --></span>
|
||||
<span class="caret">{{ Icon('font', 'caret-down', '', true) }}</span>
|
||||
</span>
|
||||
<div class="dropdown">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<ul class="dropdown-contents">
|
||||
<!-- BEGIN jumpbox_forums -->
|
||||
<!-- IF jumpbox_forums.FORUM_ID neq -1 -->
|
||||
<li><a href="{jumpbox_forums.LINK}" class="<!-- IF jumpbox_forums.level -->jumpbox-sub-link<!-- ELSEIF jumpbox_forums.S_IS_CAT -->jumpbox-cat-link<!-- ELSE -->jumpbox-forum-link<!-- ENDIF -->"><!-- BEGIN level --><span class="spacer"></span><!-- END level --> <span><!-- IF jumpbox_forums.level --><!-- IF S_CONTENT_DIRECTION eq 'rtl' -->↲<!-- ELSE -->↳<!-- ENDIF --> <!-- ENDIF --> {jumpbox_forums.FORUM_NAME}</span></a></li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END jumpbox_forums -->
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ELSE -->
|
||||
<br /><br />
|
||||
<!-- ENDIF -->
|
||||
</div>
|
70
phpBB/styles/prosilver2/template/login_body.html
Normal file
|
@ -0,0 +1,70 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<form action="{S_LOGIN_ACTION}" method="post" id="login" data-focus="<!-- IF S_ADMIN_AUTH -->{PASSWORD_CREDENTIAL}<!-- ELSE -->{USERNAME_CREDENTIAL}<!-- ENDIF -->">
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<h2 class="login-title"><!-- IF LOGIN_EXPLAIN -->{LOGIN_EXPLAIN}<!-- ELSE -->{L_LOGIN}<!-- ENDIF --></h2>
|
||||
|
||||
<fieldset <!-- IF not S_CONFIRM_CODE -->class="fields1"<!-- ELSE -->class="fields2"<!-- ENDIF -->>
|
||||
<!-- IF LOGIN_ERROR --><div class="error">{LOGIN_ERROR}</div><!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="{USERNAME_CREDENTIAL}">{L_USERNAME}{L_COLON}</label></dt>
|
||||
<dd><input type="text" tabindex="1" name="{USERNAME_CREDENTIAL}" id="{USERNAME_CREDENTIAL}" size="25" value="{USERNAME}" class="inputbox autowidth" autocomplete="username" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="{PASSWORD_CREDENTIAL}">{L_PASSWORD}{L_COLON}</label></dt>
|
||||
<dd><input type="password" tabindex="2" id="{PASSWORD_CREDENTIAL}" name="{PASSWORD_CREDENTIAL}" size="25" class="inputbox autowidth" autocomplete="current-password" /></dd>
|
||||
<!-- IF S_DISPLAY_FULL_LOGIN and (U_SEND_PASSWORD or U_RESEND_ACTIVATION) -->
|
||||
<!-- IF U_SEND_PASSWORD --><dd><a href="{U_SEND_PASSWORD}">{L_FORGOT_PASS}</a></dd><!-- ENDIF -->
|
||||
<!-- IF U_RESEND_ACTIVATION --><dd><a href="{U_RESEND_ACTIVATION}">{L_RESEND_ACTIVATION}</a></dd><!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
</dl>
|
||||
<!-- IF CAPTCHA_TEMPLATE and S_CONFIRM_CODE -->
|
||||
<!-- DEFINE $CAPTCHA_TAB_INDEX = 3 -->
|
||||
<!-- INCLUDE {CAPTCHA_TEMPLATE} -->
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_DISPLAY_FULL_LOGIN -->
|
||||
<dl>
|
||||
<dt> </dt>
|
||||
<!-- IF S_AUTOLOGIN_ENABLED --><dd><label for="autologin"><input type="checkbox" name="autologin" id="autologin" tabindex="4" checked /> {L_LOG_ME_IN}</label></dd><!-- ENDIF -->
|
||||
<dd><label for="viewonline"><input type="checkbox" name="viewonline" id="viewonline" tabindex="5" /> {L_HIDE_ME}</label></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{S_LOGIN_REDIRECT}
|
||||
{S_FORM_TOKEN_LOGIN}
|
||||
<dl>
|
||||
<dt> </dt>
|
||||
<dd>{S_HIDDEN_FIELDS}<input type="submit" name="login" tabindex="6" value="{L_LOGIN}" class="button1 button button-form" /></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
<!-- IF not S_ADMIN_AUTH and PROVIDER_TEMPLATE_FILE -->
|
||||
<!-- INCLUDE {PROVIDER_TEMPLATE_FILE} -->
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- IF not S_ADMIN_AUTH and S_REGISTER_ENABLED -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<h3>{L_REGISTER}</h3>
|
||||
<p>{L_LOGIN_INFO}</p>
|
||||
<p><strong><a href="{U_TERMS_USE}">{L_TERMS_USE}</a> | <a href="{U_PRIVACY}">{L_PRIVACY}</a></strong></p>
|
||||
<hr class="dashed" />
|
||||
<p><a href="{U_REGISTER}" class="button1 button button-form-bold">{L_REGISTER}</a></p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
6
phpBB/styles/prosilver2/template/login_body_oauth.html
Normal file
|
@ -0,0 +1,6 @@
|
|||
<br>
|
||||
<div class="content">
|
||||
{% for oauth in oauth %}
|
||||
<a href="{{ oauth.REDIRECT_URL }}" class="button1 button button-form-bold">{{ oauth.SERVICE_NAME }}</a>
|
||||
{% endfor %}
|
||||
</div>
|
42
phpBB/styles/prosilver2/template/login_forum.html
Normal file
|
@ -0,0 +1,42 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<!-- IF FORUM_NAME --><h2 class="forum-title"><a href="{U_VIEW_FORUM}">{FORUM_NAME}</a></h2><!-- ENDIF -->
|
||||
|
||||
<form id="login_forum" method="post" action="{S_LOGIN_ACTION}">
|
||||
{S_FORM_TOKEN}
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<h2 class="login-title">{L_LOGIN}</h2>
|
||||
|
||||
<p>{L_LOGIN_FORUM}</p>
|
||||
|
||||
<fieldset class="fields1">
|
||||
<!-- IF LOGIN_ERROR -->
|
||||
<dl>
|
||||
<dt> </dt>
|
||||
<dd class="error">{LOGIN_ERROR}</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl>
|
||||
<dt><label for="password">{L_PASSWORD}{L_COLON}</label></dt>
|
||||
<dd><input type="password" tabindex="1" id="password" name="password" size="25" class="inputbox narrow" autocomplete="off" /></dd>
|
||||
</dl>
|
||||
{S_LOGIN_REDIRECT}
|
||||
{S_FORM_TOKEN_LOGIN}
|
||||
<dl>
|
||||
<dt> </dt>
|
||||
<dd>{S_HIDDEN_FIELDS}<input type="submit" name="login" id="login" class="button1 button button-form" value="{L_LOGIN}" tabindex="2" /></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
<!-- INCLUDE overall_footer.html -->
|
81
phpBB/styles/prosilver2/template/mcp_approve.html
Normal file
|
@ -0,0 +1,81 @@
|
|||
<!-- IF S_AJAX_REQUEST -->
|
||||
|
||||
<h3>{MESSAGE_TITLE}</h3>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<!-- IF S_NOTIFY_POSTER -->
|
||||
<label><input type="checkbox" name="notify_poster" checked="checked" /> <!-- IF S_APPROVE -->{L_NOTIFY_POSTER_APPROVAL}<!-- ELSE -->{L_NOTIFY_POSTER_DISAPPROVAL}<!-- ENDIF --></label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_APPROVE and not S_RESTORE and .reason -->
|
||||
<label><strong>{L_DISAPPROVE_REASON}{L_COLON}</strong>
|
||||
<select name="reason_id">
|
||||
<!-- BEGIN reason --><option value="{reason.ID}"<!-- IF reason.S_SELECTED --> selected="selected"<!-- ENDIF -->>{reason.DESCRIPTION}</option><!-- END reason -->
|
||||
</select></label>
|
||||
|
||||
<label><strong>{L_MORE_INFO}{L_COLON}</strong><br /><span>{L_CAN_LEAVE_BLANK}</span>
|
||||
<textarea class="inputbox" name="reason" id="reason" rows="4" cols="40">{REASON}</textarea>
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="button" name="confirm" value="{YES_VALUE}" class="button1 button button-form" />
|
||||
<input type="button" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
|
||||
<!-- ELSE -->
|
||||
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<form id="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||
<div class="panel">
|
||||
{S_FORM_TOKEN}
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
<!-- IF ADDITIONAL_MSG --><p class="error">{ADDITIONAL_MSG}</p><!-- ENDIF -->
|
||||
|
||||
<fieldset>
|
||||
<!-- IF S_NOTIFY_POSTER -->
|
||||
<dl class="fields2 nobg">
|
||||
<dt> </dt>
|
||||
<dd><label><input type="checkbox" name="notify_poster" checked="checked" /> <!-- IF S_APPROVE -->{L_NOTIFY_POSTER_APPROVAL}<!-- ELSE -->{L_NOTIFY_POSTER_DISAPPROVAL}<!-- ENDIF --></label></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_APPROVE and not S_RESTORE and .reason -->
|
||||
<dl class="fields2 nobg">
|
||||
<dt><label>{L_DISAPPROVE_REASON}{L_COLON}</label></dt>
|
||||
<dd><select name="reason_id">
|
||||
<!-- BEGIN reason --><option value="{reason.ID}"<!-- IF reason.S_SELECTED --> selected="selected"<!-- ENDIF -->>{reason.DESCRIPTION}</option><!-- END reason -->
|
||||
</select>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="fields2 nobg">
|
||||
<dt><label for="reason">{L_MORE_INFO}{L_COLON}</label><br /><span>{L_CAN_LEAVE_BLANK}</span></dt>
|
||||
<dd><textarea class="inputbox" name="reason" id="reason" rows="4" cols="40">{REASON}</textarea></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl class="fields2 nobg">
|
||||
<dt> </dt>
|
||||
<dd><strong>{MESSAGE_TEXT}</strong></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}<input type="submit" name="confirm" value="{YES_VALUE}" class="button1 button button-form" />
|
||||
<input type="submit" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
<!-- ENDIF -->
|
128
phpBB/styles/prosilver2/template/mcp_ban.html
Normal file
|
@ -0,0 +1,128 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<script>
|
||||
var ban_length = new Array();
|
||||
ban_length[-1] = '';
|
||||
var ban_reason = new Array();
|
||||
ban_reason[-1] = '';
|
||||
var ban_give_reason = new Array();
|
||||
ban_give_reason[-1] = '';
|
||||
|
||||
<!-- BEGIN bans -->
|
||||
ban_length['{bans.BAN_ID}'] = '{{ bans.A_LENGTH }}';
|
||||
<!-- IF bans.A_REASON -->
|
||||
ban_reason['{bans.BAN_ID}'] = '{{ bans.REASON | e('js') }}';
|
||||
<!-- ENDIF -->
|
||||
<!-- IF bans.A_GIVE_REASON -->
|
||||
ban_give_reason['{bans.BAN_ID}'] = '{{ bans.GIVE_REASON | e('js') }}';
|
||||
<!-- ENDIF -->
|
||||
<!-- END bans -->
|
||||
|
||||
function display_details(option)
|
||||
{
|
||||
document.getElementById('unbanlength').innerHTML = ban_length[option];
|
||||
if (option in ban_reason) {
|
||||
document.getElementById('unbanreason').innerHTML = ban_reason[option];
|
||||
} else {
|
||||
document.getElementById('unbanreason').innerHTML = '';
|
||||
}
|
||||
if (option in ban_give_reason) {
|
||||
document.getElementById('unbangivereason').innerHTML = ban_give_reason[option];
|
||||
} else {
|
||||
document.getElementById('unbangivereason').innerHTML = '';
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<form id="mcp_ban" method="post" action="{U_ACTION}">
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_TITLE}</h3>
|
||||
<p>{L_EXPLAIN}</p>
|
||||
|
||||
<fieldset>
|
||||
<!-- EVENT mcp_ban_fields_before -->
|
||||
<dl>
|
||||
<dt><label for="ban">{L_BAN_CELL}{L_COLON}</label></dt>
|
||||
<dd><label for="ban"><textarea name="ban" id="ban" class="inputbox" cols="40" rows="3">{BAN_QUANTIFIER}</textarea></label></dd>
|
||||
<!-- IF S_USERNAME_BAN --><dd><strong><a href="{U_FIND_USERNAME}" onclick="find_username(this.href); return false;">{L_FIND_USERNAME}</a></strong></dd><!-- ENDIF -->
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="banlength">{L_BAN_LENGTH}{L_COLON}</label></dt>
|
||||
<dd><label for="banlength"><select name="banlength" id="banlength" onchange="if(this.value==-1){document.getElementById('banlengthother').style.display = 'block';}else{document.getElementById('banlengthother').style.display='none';}">{S_BAN_END_OPTIONS}</select></label></dd>
|
||||
<dd id="banlengthother" style="display: none;"><label><input type="text" name="banlengthother" class="inputbox" /><br /><span>{L_YEAR_MONTH_DAY}</span></label></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="banreason">{L_BAN_REASON}{L_COLON}</label></dt>
|
||||
<dd><input name="banreason" id="banreason" type="text" class="inputbox" maxlength="255" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="bangivereason">{L_BAN_GIVE_REASON}{L_COLON}</label></dt>
|
||||
<dd><input name="bangivereason" id="bangivereason" type="text" class="inputbox" maxlength="255" /></dd>
|
||||
</dl>
|
||||
|
||||
<hr />
|
||||
|
||||
<!-- EVENT mcp_ban_fields_after -->
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input type="submit" name="bansubmit" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_UNBAN_TITLE}</h3>
|
||||
<p>{L_UNBAN_EXPLAIN}</p>
|
||||
|
||||
<!-- IF S_BANNED_OPTIONS -->
|
||||
<fieldset>
|
||||
<!-- EVENT mcp_ban_unban_before -->
|
||||
<dl>
|
||||
<dt><label for="unban">{L_BAN_CELL}{L_COLON}</label></dt>
|
||||
<dd><select name="unban[]" id="unban" multiple="multiple" size="5" onchange="if (this.selectedIndex != -1) {display_details(this.options[this.selectedIndex].value);}">{BANNED_OPTIONS}</select></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>{L_BAN_LENGTH}{L_COLON}</dt>
|
||||
<dd><strong id="unbanlength"></strong></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>{L_BAN_REASON}{L_COLON}</dt>
|
||||
<dd><strong id="unbanreason"></strong></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt>{L_BAN_GIVE_REASON}{L_COLON}</dt>
|
||||
<dd><strong id="unbangivereason"></strong></dd>
|
||||
</dl>
|
||||
<!-- EVENT mcp_ban_unban_after -->
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input type="submit" name="unbansubmit" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
</fieldset>
|
||||
|
||||
<!-- ELSE -->
|
||||
|
||||
<p><strong>{L_NO_BAN_CELL}</strong></p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
8
phpBB/styles/prosilver2/template/mcp_footer.html
Normal file
|
@ -0,0 +1,8 @@
|
|||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
174
phpBB/styles/prosilver2/template/mcp_forum.html
Normal file
|
@ -0,0 +1,174 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<!-- DEFINE $CUSTOM_FIELDSET_CLASS = 'forum-selection2' -->
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
|
||||
<h2><a href="{U_VIEW_FORUM}">{L_FORUM}{L_COLON} {FORUM_NAME}</a></h2>
|
||||
|
||||
<form method="post" id="mcp" action="{S_MCP_ACTION}">
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="action-bar bar-top">
|
||||
<div class="pagination">
|
||||
{TOTAL_TOPICS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF .topicrow -->
|
||||
<ul class="topiclist<!-- IF S_MERGE_SELECT --> missing-column<!-- ENDIF -->">
|
||||
<li class="header">
|
||||
<dl class="row-item">
|
||||
<dt><div class="list-inner">{L_TOPICS}</div></dt>
|
||||
<dd class="posts">{L_REPLIES}</dd>
|
||||
<dd class="lastpost"><span>{L_LAST_POST}</span></dd>
|
||||
<!-- IF not S_MERGE_SELECT --><dd class="mark">{L_MARK}</dd><!-- ENDIF -->
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist<!-- IF S_MERGE_SELECT --> missing-column<!-- ENDIF -->">
|
||||
|
||||
<!-- BEGIN topicrow -->
|
||||
<li class="row<!-- IF topicrow.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF --><!-- IF topicrow.S_TOPIC_REPORTED --> reported<!-- ENDIF -->">
|
||||
<dl class="row-item">
|
||||
<dt>
|
||||
<a class="row-item-link{% if topicrow.S_UNREAD_TOPIC %} unread{% else %} read{% endif %}" href="{topicrow.U_VIEW_TOPIC}" title="{topicrow.TOPIC_FOLDER_IMG_ALT}">
|
||||
{{ Icon('svg', {
|
||||
'globe' : topicrow.S_POST_GLOBAL,
|
||||
'bullhorn' : topicrow.S_POST_ANNOUNCE,
|
||||
'thumbtack' : topicrow.S_POST_STICKY,
|
||||
'lock' : topicrow.S_TOPIC_LOCKED,
|
||||
'arrow-right-bold' : topicrow.S_TOPIC_MOVED,
|
||||
'fire' : topicrow.S_TOPIC_HOT,
|
||||
'file-document-outline' : true,
|
||||
}, '', true, 'c-forum-row-icon') }}
|
||||
</a>
|
||||
{% if lang(topicrow.TOPIC_AUTHOR) == S_USERNAME %}
|
||||
<span class="row-item-link-mine"></span>
|
||||
{% endif%}
|
||||
{% if topicrow.TOPIC_ICON_IMG and S_TOPIC_ICONS %}
|
||||
<img class="row-item-sub" src="{T_ICONS_PATH}{topicrow.TOPIC_ICON_IMG}" alt="">
|
||||
{% endif %}
|
||||
<div class="list-inner">
|
||||
<!-- EVENT topiclist_row_prepend -->
|
||||
<!-- IF topicrow.S_SELECT_TOPIC --><a href="{topicrow.U_SELECT_TOPIC}" class="topictitle">[ {L_SELECT_MERGE} ]</a> <!-- ENDIF -->
|
||||
<!-- EVENT mcp_forum_topic_title_before -->
|
||||
<a href="{topicrow.U_VIEW_TOPIC}" class="topictitle">{topicrow.TOPIC_TITLE}</a>
|
||||
<!-- EVENT mcp_forum_topic_title_after -->
|
||||
<!-- IF topicrow.S_TOPIC_UNAPPROVED or topicrow.S_POSTS_UNAPPROVED -->
|
||||
<a href="{topicrow.U_MCP_QUEUE}" title="{L_TOPIC_UNAPPROVED}">
|
||||
{{ Icon('font', 'circle-question', lang('TOPIC_UNAPPROVED'), true, 'fas c-unapproved-icon o-icon-baseline') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF topicrow.S_TOPIC_DELETED or topicrow.S_POSTS_DELETED -->
|
||||
<a href="{topicrow.U_MCP_QUEUE}" title="{L_TOPIC_DELETED}">
|
||||
{{ Icon('font', 'recycle', lang('TOPIC_DELETED'), true, 'fas c-topic-deleted-icon o-icon-baseline') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF topicrow.S_TOPIC_REPORTED -->
|
||||
<a href="{topicrow.U_MCP_REPORT}" title="{L_TOPIC_REPORTED}">
|
||||
{{ Icon('font', 'triangle-exclamation', lang('TOPIC_REPORTED'), true, 'fas c-topic-reported-icon o-icon-baseline') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF topicrow.S_MOVED_TOPIC and S_CAN_DELETE --> <a href="{topicrow.U_DELETE_TOPIC}" class="topictitle">[ {L_DELETE_SHADOW_TOPIC} ]</a><!-- ENDIF -->
|
||||
<br />
|
||||
<!-- EVENT topiclist_row_topic_title_after -->
|
||||
<div class="responsive-show" style="display: none;">
|
||||
{% if topicrow.ATTACH_ICON_IMG %}{{ Icon('font', 'paperclip', '', true) }} {% endif %}
|
||||
{L_LAST_POST} {L_POST_BY_AUTHOR} {% EVENT mcp_forum_last_post_author_username_prepend %}{topicrow.LAST_POST_AUTHOR_FULL}{% EVENT mcp_forum_last_post_author_username_append %} « {topicrow.LAST_POST_TIME}<br />
|
||||
</div>
|
||||
<span class="responsive-show left-box" style="display: none;">{L_REPLIES}{L_COLON} <strong>{topicrow.REPLIES}</strong></span>
|
||||
|
||||
<!-- IF .topicrow.pagination -->
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
<!-- BEGIN pagination -->
|
||||
<!-- IF topicrow.pagination.S_IS_PREV -->
|
||||
<!-- ELSEIF topicrow.pagination.S_IS_CURRENT -->
|
||||
<li class="active"><span>{{ topicrow.pagination.PAGE_NUMBER }}</span></li>
|
||||
<!-- ELSEIF topicrow.pagination.S_IS_ELLIPSIS -->
|
||||
<li class="ellipsis"><span>{{ lang('ELLIPSIS') }}</span></li>
|
||||
<!-- ELSEIF topicrow.pagination.S_IS_NEXT -->
|
||||
<!-- ELSE -->
|
||||
<li><a class="button" href="{{ topicrow.pagination.PAGE_URL }}" role="button">{{ topicrow.pagination.PAGE_NUMBER }}</a></li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END pagination -->
|
||||
</ul>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="responsive-hide">
|
||||
{% if topicrow.ATTACH_ICON_IMG %}{{ Icon('font', 'paperclip', '', true) }} {% endif %}
|
||||
{% EVENT topiclist_row_topic_by_author_before %}
|
||||
{L_POST_BY_AUTHOR} {% EVENT mcp_forum_topic_author_username_prepend %}{topicrow.TOPIC_AUTHOR_FULL}{% EVENT mcp_forum_topic_author_username_append %} » {topicrow.FIRST_POST_TIME}
|
||||
{% EVENT topiclist_row_topic_by_author_after %}
|
||||
</div>
|
||||
<!-- EVENT topiclist_row_append -->
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="posts">{topicrow.REPLIES} <dfn>{L_REPLIES}</dfn></dd>
|
||||
<dd class="lastpost"><span><dfn>{L_LAST_POST} </dfn>{L_POST_BY_AUTHOR} {% EVENT mcp_forum_last_post_author_username_prepend %}{topicrow.LAST_POST_AUTHOR_FULL}{% EVENT mcp_forum_last_post_author_username_append %}<br />{topicrow.LAST_POST_TIME}</span></dd>
|
||||
<!-- IF not S_MERGE_SELECT -->
|
||||
<dd class="mark">
|
||||
<!-- IF not topicrow.S_MOVED_TOPIC --><input type="checkbox" name="topic_id_list[]" value="{topicrow.TOPIC_ID}"<!-- IF topicrow.S_TOPIC_CHECKED --> checked="checked"<!-- ENDIF --> /><!-- ELSE --> <!-- ENDIF -->
|
||||
</dd>
|
||||
<!-- ENDIF -->
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END topicrow -->
|
||||
</ul>
|
||||
<!-- ELSE -->
|
||||
<ul class="topiclist">
|
||||
<li><p class="notopics">{L_NO_TOPICS}</p></li>
|
||||
</ul>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL_TOPICS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT mcp_forum_actions_before -->
|
||||
<fieldset class="display-actions">
|
||||
<!-- IF not S_MERGE_SELECT -->
|
||||
<select name="action">
|
||||
<option value="" selected="selected">{L_SELECT_ACTION}</option>
|
||||
<!-- IF S_CAN_DELETE --><option value="delete_topic">{L_DELETE}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_RESTORE --><option value="restore_topic">{L_RESTORE}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MERGE --><option value="merge_topics">{L_MERGE}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MOVE --><option value="move">{L_MOVE}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_FORK --><option value="fork">{L_FORK}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_LOCK --><option value="lock">{L_LOCK}</option><option value="unlock">{L_UNLOCK}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_SYNC --><option value="resync">{L_RESYNC}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MAKE_NORMAL --><option value="make_normal">{L_MAKE_NORMAL}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MAKE_STICKY --><option value="make_sticky">{L_MAKE_STICKY}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MAKE_ANNOUNCE --><option value="make_announce">{L_MAKE_ANNOUNCE}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MAKE_ANNOUNCE_GLOBAL --><option value="make_global">{L_MAKE_GLOBAL}</option><!-- ENDIF -->
|
||||
<!-- EVENT mcp_forum_actions_append -->
|
||||
</select>
|
||||
<input class="button1 button button-form-bold" type="submit" value="{L_SUBMIT}" />
|
||||
<div><a href="#" onclick="marklist('mcp', 'topic_id_list', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'topic_id_list', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
<!-- ENDIF -->
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
<!-- EVENT mcp_forum_actions_after -->
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
194
phpBB/styles/prosilver2/template/mcp_front.html
Normal file
|
@ -0,0 +1,194 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<h2>{PAGE_TITLE}</h2>
|
||||
|
||||
<!-- EVENT mcp_front_latest_unapproved_before -->
|
||||
|
||||
<!-- IF S_SHOW_UNAPPROVED -->
|
||||
|
||||
<form id="mcp_queue" method="post" action="{S_MCP_QUEUE_ACTION}">
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_LATEST_UNAPPROVED}</h3>
|
||||
<p>{L_UNAPPROVED_TOTAL}</p>
|
||||
|
||||
<!-- IF .unapproved -->
|
||||
<ul class="topiclist missing-column">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt><div class="list-inner">{L_VIEW_DETAILS}</div></dt>
|
||||
<dd class="moderation"><span>{L_TOPIC} & {L_FORUM}</span></dd>
|
||||
<dd class="mark">{{ lang('MARK') }}</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist missing-column responsive-show-all">
|
||||
|
||||
<!-- BEGIN unapproved -->
|
||||
<li class="row<!-- IF unapproved.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{unapproved.U_POST_DETAILS}" class="topictitle">{unapproved.SUBJECT}</a> <!-- IF unapproved.ATTACH_ICON_IMG -->{{ Icon('font', 'paperclip', '', true) }}<!-- ENDIF --> <br />
|
||||
{L_POSTED} {L_POST_BY_AUTHOR} {unapproved.AUTHOR_FULL} » {unapproved.POST_TIME}
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation"><span>
|
||||
{L_TOPIC}{L_COLON} <a href="{unapproved.U_TOPIC}">{unapproved.TOPIC_TITLE}</a> [<a href="{unapproved.U_MCP_TOPIC}">{L_MODERATE}</a>]<br />
|
||||
{L_FORUM}{L_COLON} <!-- IF unapproved.U_FORUM --><a href="{unapproved.U_FORUM}">{unapproved.FORUM_NAME}</a><!-- ELSE -->{unapproved.FORUM_NAME}<!-- ENDIF --><!-- IF unapproved.U_MCP_FORUM --> [<a href="{unapproved.U_MCP_FORUM}">{L_MODERATE}</a>]<!-- ENDIF --></span>
|
||||
</dd>
|
||||
|
||||
<dd class="mark"><input type="checkbox" name="post_id_list[]" value="{unapproved.POST_ID}" /></dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END unapproved -->
|
||||
</ul>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
|
||||
<!-- IF .unapproved -->
|
||||
<fieldset class="display-actions">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[disapprove]" value="{L_DISAPPROVE}" />
|
||||
<input class="button1 button button-form" type="submit" name="action[approve]" value="{L_APPROVE}" />
|
||||
<div><a href="#" onclick="marklist('mcp_queue', 'post_id_list', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp_queue', 'post_id_list', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_front_latest_reported_before -->
|
||||
|
||||
<!-- IF S_SHOW_REPORTS -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_LATEST_REPORTED}</h3>
|
||||
<p>{L_REPORTS_TOTAL}</p>
|
||||
|
||||
<!-- IF .report -->
|
||||
<ul class="topiclist two-long-columns">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt><div class="list-inner">{L_VIEW_DETAILS}</div></dt>
|
||||
<dd class="moderation"><span>{L_REPORTER} & {L_FORUM}</span></dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist two-long-columns responsive-show-all">
|
||||
|
||||
<!-- BEGIN report -->
|
||||
<li class="row<!-- IF report.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{report.U_POST_DETAILS}#reports" class="topictitle">{report.SUBJECT}</a> <!-- IF report.ATTACH_ICON_IMG -->{{ Icon('font', 'paperclip', '', true) }}<!-- ENDIF --> <br />
|
||||
<span>{L_POSTED} {L_POST_BY_AUTHOR} {report.AUTHOR_FULL} » {report.POST_TIME}</span>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation">
|
||||
<span>{L_REPORTED} {L_POST_BY_AUTHOR} {report.REPORTER_FULL} {L_REPORTED_ON_DATE} {{ report.REPORT_TIME }}<br />
|
||||
{L_FORUM}{L_COLON} <a href="{report.U_FORUM}">{report.FORUM_NAME}</a></span>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END report -->
|
||||
</ul>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_front_latest_reported_pms_before -->
|
||||
|
||||
<!-- IF S_SHOW_PM_REPORTS -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_LATEST_REPORTED_PMS}</h3>
|
||||
<p>{L_PM_REPORTS_TOTAL}</p>
|
||||
|
||||
<!-- IF .pm_report -->
|
||||
<ul class="topiclist two-long-columns">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt><div class="list-inner">{L_VIEW_DETAILS}</div></dt>
|
||||
<dd class="moderation"><span>{L_REPORTER}</span></dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist two-long-columns responsive-show-all">
|
||||
|
||||
<!-- BEGIN pm_report -->
|
||||
<li class="row<!-- IF pm_report.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{pm_report.U_PM_DETAILS}" class="topictitle">{pm_report.PM_SUBJECT}</a> <!-- IF pm_report.ATTACH_ICON_IMG -->{{ Icon('font', 'paperclip', '', true) }}<!-- ENDIF --> <br />
|
||||
<span>{L_MESSAGE_BY_AUTHOR} {pm_report.PM_AUTHOR_FULL} » {pm_report.PM_TIME}</span><br />
|
||||
<span>{L_MESSAGE_TO} {pm_report.RECIPIENTS}</span>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation">
|
||||
<span>{L_REPORTED} {L_POST_BY_AUTHOR} {pm_report.REPORTER_FULL} {L_REPORTED_ON_DATE} {pm_report.REPORT_TIME}</span>
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END pm_report -->
|
||||
</ul>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_front_latest_logs_before -->
|
||||
|
||||
<!-- IF S_SHOW_LOGS -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_LATEST_LOGS}</h3>
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_ACTION}</th>
|
||||
<th class="name">{L_USERNAME}</th>
|
||||
<th class="name">{L_IP}</th>
|
||||
<th class="name">{L_VIEW_TOPIC}</th>
|
||||
<th class="name">{L_VIEW_TOPIC_LOGS}</th>
|
||||
<th class="name">{L_TIME}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN log -->
|
||||
<tr class="<!-- IF log.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td>{log.ACTION}</td>
|
||||
<td><span>{log.USERNAME}</span></td>
|
||||
<td><span>{log.IP}</span></td>
|
||||
<td><span><!-- IF log.U_VIEW_TOPIC --><a href="{log.U_VIEW_TOPIC}" title="{L_VIEW_TOPIC}">{L_VIEW_TOPIC}</a><!-- ENDIF --> </span></td>
|
||||
<td><span><!-- IF log.U_VIEWLOGS --><a href="{log.U_VIEWLOGS}">{L_VIEW_TOPIC_LOGS}</a><!-- ENDIF --> </span></td>
|
||||
<td><span>{log.TIME}</span></td>
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr>
|
||||
<td colspan="6">{L_NO_ENTRIES}</td>
|
||||
</tr>
|
||||
<!-- END log -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_front_latest_logs_after -->
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
49
phpBB/styles/prosilver2/template/mcp_header.html
Normal file
|
@ -0,0 +1,49 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<h2>{L_MCP}</h2>
|
||||
|
||||
<!-- IF U_MCP -->
|
||||
<p class="linkmcp responsive-center">
|
||||
[<!-- IF U_ACP --> <a href="{U_ACP}" title="{L_ACP}" data-responsive-text="{L_ACP_SHORT}">{L_ACP}</a> |<!-- ENDIF --> <a href="{U_MCP}" title="{L_MCP}" data-responsive-text="{L_MCP_SHORT}">{L_MCP}</a><!-- IF U_MCP_FORUM --> | <a href="{U_MCP_FORUM}">{L_MODERATE_FORUM}</a><!-- ENDIF --><!-- IF U_MCP_TOPIC --> | <a href="{U_MCP_TOPIC}">{L_MODERATE_TOPIC}</a><!-- ENDIF --><!-- IF U_MCP_POST --> | <a href="{U_MCP_POST}">{L_MODERATE_POST}</a><!-- ENDIF --> ]
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div id="tabs" class="tabs">
|
||||
<ul>
|
||||
<!-- BEGIN l_block1 -->
|
||||
<li class="tab<!-- IF l_block1.S_SELECTED --> activetab<!-- ENDIF -->"><a href="{l_block1.U_TITLE}">{l_block1.L_TITLE}</a></li>
|
||||
<!-- END l_block1 -->
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="panel bg3">
|
||||
<div class="inner">
|
||||
|
||||
<div style="width: 100%;">
|
||||
|
||||
<div id="cp-menu" class="cp-menu">
|
||||
<div id="navigation" class="navigation" role="navigation">
|
||||
<ul>
|
||||
<!-- BEGIN l_block1 -->
|
||||
<!-- IF l_block1.S_SELECTED -->
|
||||
<!-- BEGIN l_block2 -->
|
||||
<!-- IF l_block1.l_block2.S_SELECTED -->
|
||||
<li id="active-subsection" class="active-subsection"><a href="{l_block1.l_block2.U_TITLE}"><span>{l_block1.l_block2.L_TITLE}<!-- IF l_block1.l_block2.ADD_ITEM --> ({l_block1.l_block2.ADD_ITEM})<!-- ENDIF --></span></a></li>
|
||||
<!-- ELSE -->
|
||||
<li><a href="{l_block1.l_block2.U_TITLE}"><span>{l_block1.l_block2.L_TITLE}<!-- IF l_block1.l_block2.ADD_ITEM --> ({l_block1.l_block2.ADD_ITEM})<!-- ENDIF --></span></a></li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END l_block2 -->
|
||||
<!-- ENDIF -->
|
||||
<!-- END l_block1 -->
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="cp-main" class="cp-main mcp-main panel-container">
|
||||
<!-- IF MESSAGE -->
|
||||
<div class="content">
|
||||
<h2 class="message-title">{L_MESSAGE}</h2>
|
||||
<p class="error">{MESSAGE}</p>
|
||||
<p><!-- BEGIN return_links -->{return_links.MESSAGE_LINK}<br /><br /><!-- END return_links --></p>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
88
phpBB/styles/prosilver2/template/mcp_logs.html
Normal file
|
@ -0,0 +1,88 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="action-bar bar-top">
|
||||
{L_SEARCH_KEYWORDS}{L_COLON} <input type="search" class="inputbox autowidth" name="keywords" value="{S_KEYWORDS}" /> <input type="submit" class="button1 button button-form-bold" name="filter" value="{L_SEARCH}" />
|
||||
<div class="pagination">
|
||||
{TOTAL}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_USERNAME}</th>
|
||||
<th class="center">{L_IP}</th>
|
||||
<th class="center">{L_TIME}</th>
|
||||
<th class="name">{L_ACTION}</th>
|
||||
<!-- IF S_CLEAR_ALLOWED --><th>{L_MARK}</th><!-- ENDIF -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- IF S_LOGS -->
|
||||
<!-- BEGIN log -->
|
||||
<!-- IF log.S_ROW_COUNT is even --><tr class="bg1"><!-- ELSE --><tr class="bg2"><!-- ENDIF -->
|
||||
<td>{log.USERNAME}</td>
|
||||
<td class="center">{log.IP}</td>
|
||||
<td class="center">{log.DATE}</td>
|
||||
<td>{log.ACTION}<br />
|
||||
{log.DATA}
|
||||
</td>
|
||||
<!-- IF S_CLEAR_ALLOWED --><td style="width: 5%" align="center"><input type="checkbox" name="mark[]" value="{log.ID}" /></td><!-- ENDIF -->
|
||||
</tr>
|
||||
<!-- END log -->
|
||||
<!-- ELSE -->
|
||||
<tr>
|
||||
<td class="bg1" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
||||
</tr>
|
||||
<!-- ENDIF -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<!-- IF .log -->
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_CLEAR_ALLOWED -->
|
||||
<fieldset class="display-actions">
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" />
|
||||
<input class="button1 button button-form" type="submit" value="{L_DELETE_MARKED}" name="action[del_marked]" />
|
||||
|
||||
<div><a href="#" onclick="marklist('mcp', 'mark', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'mark', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
<!-- ELSE -->
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
|
||||
<br />
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
8
phpBB/styles/prosilver2/template/mcp_message.html
Normal file
|
@ -0,0 +1,8 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<div class="content">
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
</div>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
73
phpBB/styles/prosilver2/template/mcp_move.html
Normal file
|
@ -0,0 +1,73 @@
|
|||
<!-- IF S_AJAX_REQUEST -->
|
||||
|
||||
<h3>{MESSAGE_TITLE}</h3>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
|
||||
<!-- IF ADDITIONAL_MSG --><p>{ADDITIONAL_MSG}</p><!-- ENDIF -->
|
||||
|
||||
<label>
|
||||
<strong>{L_SELECT_DESTINATION_FORUM}{L_COLON}</strong>
|
||||
<select name="to_forum_id">{S_FORUM_SELECT}</select>
|
||||
</label>
|
||||
|
||||
<!-- IF S_CAN_LEAVE_SHADOW -->
|
||||
<label for="move_leave_shadow">
|
||||
<input type="checkbox" name="move_leave_shadow" id="move_leave_shadow" />{L_LEAVE_SHADOW}
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_CAN_LOCK_TOPIC -->
|
||||
<label for="move_lock_topics">
|
||||
<input type="checkbox" name="move_lock_topics" id="move_lock_topics" />{L_LOCK_TOPIC}
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="button" name="confirm" value="{YES_VALUE}" class="button1 button button-form" />
|
||||
<input type="button" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
|
||||
<!-- ELSE -->
|
||||
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<!-- EVENT mcp_move_before -->
|
||||
|
||||
<form id="confirm" action="{S_CONFIRM_ACTION}" method="post">
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="content">
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
<!-- IF ADDITIONAL_MSG --><p>{ADDITIONAL_MSG}</p><!-- ENDIF -->
|
||||
|
||||
<fieldset>
|
||||
{% EVENT mcp_move_destination_forum_before %}
|
||||
<dl class="fields2">
|
||||
<dt><label>{L_SELECT_DESTINATION_FORUM}{L_COLON}</label></dt>
|
||||
<dd><select name="to_forum_id">{S_FORUM_SELECT}</select></dd>
|
||||
<!-- IF S_CAN_LEAVE_SHADOW --><dd><label for="move_leave_shadow"><input type="checkbox" name="move_leave_shadow" id="move_leave_shadow" />{L_LEAVE_SHADOW}</label></dd><!-- ENDIF -->
|
||||
<!-- IF S_CAN_LOCK_TOPIC --><dd><label for="move_lock_topics"><input type="checkbox" name="move_lock_topics" id="move_lock_topics" />{L_LOCK_TOPIC}</label></dd><!-- ENDIF -->
|
||||
</dl>
|
||||
{% EVENT mcp_move_destination_forum_after %}
|
||||
<dl class="fields2">
|
||||
<dt> </dt>
|
||||
<dd><strong>{MESSAGE_TEXT}</strong></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}<input type="submit" name="confirm" value="{YES_VALUE}" class="button1 button button-form" />
|
||||
<input type="submit" name="cancel" value="{L_NO}" class="button1 button button-form-bold" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
<!-- ENDIF -->
|
27
phpBB/styles/prosilver2/template/mcp_notes_front.html
Normal file
|
@ -0,0 +1,27 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<fieldset>
|
||||
<dl>
|
||||
<dt><label for="username">{L_SELECT_USER}{L_COLON}</label></dt>
|
||||
<dd><input name="username" id="username" type="text" class="inputbox" /></dd>
|
||||
<dd><strong><a href="{U_FIND_USERNAME}" onclick="find_username(this.href); return false;">{L_FIND_USERNAME}</a></strong></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" name="submituser" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
121
phpBB/styles/prosilver2/template/mcp_notes_user.html
Normal file
|
@ -0,0 +1,121 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{USERNAME_FULL}</h3>
|
||||
|
||||
<div>
|
||||
<div class="column1">
|
||||
<!-- IF AVATAR_HTML --><div>{AVATAR_HTML}</div><!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<div class="column2">
|
||||
<dl class="details">
|
||||
<!-- IF RANK_TITLE --><dt>{L_RANK}{L_COLON}</dt><dd>{RANK_TITLE}</dd><!-- ENDIF -->
|
||||
{% if RANK_IMG %}<dt>{% if RANK_TITLE %} {% else %}{{ lang('RANK') ~ lang('COLON') }}{% endif %}</dt><dd class="rank-img">{{ RANK_IMG }}</dd>{% endif %}
|
||||
<dt>{L_JOINED}{L_COLON}</dt><dd>{JOINED}</dd>
|
||||
<dt>{L_TOTAL_POSTS}{L_COLON}</dt><dd>{POSTS}</dd>
|
||||
<dt>{L_WARNINGS}{L_COLON} </dt><dd>{WARNINGS}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_ADD_FEEDBACK}</h3>
|
||||
<p>{L_ADD_FEEDBACK_EXPLAIN}</p>
|
||||
|
||||
<fieldset>
|
||||
<textarea name="usernote" id="usernote" class="inputbox" cols="40" rows="3"></textarea>
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_FIELDS}
|
||||
<input type="submit" name="action[add_feedback]" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="action-bar bar-top">
|
||||
{L_SEARCH_KEYWORDS}{L_COLON} <input type="search" class="inputbox autowidth" name="keywords" value="{S_KEYWORDS}" /> <input type="submit" class="button1 button button-form-bold" name="filter" value="{L_SEARCH}" />
|
||||
<div class="pagination">
|
||||
{TOTAL_REPORTS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name reportby">{L_REPORT_BY}</th>
|
||||
<th class="center">{L_IP}</th>
|
||||
<th class="center">{L_TIME}</th>
|
||||
<th>{L_ACTION_NOTE}</th>
|
||||
<!-- IF S_CLEAR_ALLOWED --><th>{L_MARK}</th><!-- ENDIF -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN usernotes -->
|
||||
<!-- IF usernotes.S_ROW_COUNT is even --><tr class="bg1"><!-- ELSE --><tr class="bg2"><!-- ENDIF -->
|
||||
<td>{usernotes.REPORT_BY}</td>
|
||||
<td class="center">{usernotes.IP}</td>
|
||||
<td class="center">{usernotes.REPORT_AT}</td>
|
||||
<td>{usernotes.ACTION}</td>
|
||||
|
||||
<!-- IF S_CLEAR_ALLOWED --><td class="center" style="width: 5%;"><input type="checkbox" name="marknote[]" id="note-{usernotes.ID}" value="{usernotes.ID}" /></td><!-- ENDIF -->
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr>
|
||||
<td class="bg1" colspan="<!-- IF S_CLEAR_ALLOWED -->5<!-- ELSE -->4<!-- ENDIF -->" align="center"><span class="gen">{L_NO_ENTRIES}</span></td>
|
||||
</tr>
|
||||
<!-- END usernotes -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL_REPORTS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_CLEAR_ALLOWED -->
|
||||
<fieldset class="display-actions">
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" />
|
||||
<input class="button1 button button-form" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" />
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="display-actions">
|
||||
<div><a href="#" onclick="marklist('mcp', 'marknote', true); return false;">{L_MARK_ALL}</a> • <a href="#" onclick="marklist('mcp', 'marknote', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
367
phpBB/styles/prosilver2/template/mcp_post.html
Normal file
|
@ -0,0 +1,367 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<!-- IF S_MCP_REPORT -->
|
||||
<!-- IF S_PM -->
|
||||
<h2>{L_PM_REPORT_DETAILS}</h2>
|
||||
<!-- ELSE -->
|
||||
<h2>{L_REPORT_DETAILS}</h2>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div id="report" class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="postbody">
|
||||
<h3>{L_REPORT_REASON}{L_COLON} {REPORT_REASON_TITLE}</h3>
|
||||
<p class="author">{L_REPORTED} {L_POST_BY_AUTHOR} {REPORTER_FULL} « {REPORT_DATE}</p>
|
||||
<!-- IF S_REPORT_CLOSED -->
|
||||
<p class="post-notice reported">{{ Icon('font', 'exclamation', '', true, 'fas c-topic-reported-icon') }}{L_REPORT_CLOSED}</p>
|
||||
<!-- ENDIF -->
|
||||
<div class="content">
|
||||
<!-- IF REPORT_TEXT -->
|
||||
{REPORT_TEXT}
|
||||
<!-- ELSE -->
|
||||
{REPORT_REASON_DESCRIPTION}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form method="post" id="mcp_report" action="{S_CLOSE_ACTION}">
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
{% EVENT mcp_post_report_buttons_top_before %}
|
||||
<!-- IF not S_REPORT_CLOSED -->
|
||||
<input class="button1 button button-form" type="submit" value="{L_CLOSE_REPORT}" name="action[close]" />
|
||||
<!-- ENDIF -->
|
||||
<input class="button1 button button-form-bold" type="submit" value="{L_DELETE_REPORT}" name="action[delete]" />
|
||||
{% EVENT mcp_post_report_buttons_top_after %}
|
||||
<input type="hidden" name="report_id_list[]" value="{REPORT_ID}" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- ELSE -->
|
||||
<h2>{L_POST_DETAILS}</h2>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<div class="postbody">
|
||||
<h3><a href="{U_VIEW_POST}">{POST_SUBJECT}</a></h3>
|
||||
|
||||
<ul class="post-buttons">
|
||||
<li id="expand">
|
||||
<a href="#post_details" onclick="viewableArea(getElementById('post_details'), true); var rev_text = getElementById('expand').getElementsByTagName('a').item(0).firstChild; if (rev_text.data.trim() == '{LA_EXPAND_VIEW}'){rev_text.data = '{LA_COLLAPSE_VIEW}'; } else if (rev_text.data.trim() == '{LA_COLLAPSE_VIEW}'){rev_text.data = '{LA_EXPAND_VIEW}';} return false;">
|
||||
{L_EXPAND_VIEW}
|
||||
</a>
|
||||
</li>
|
||||
<!-- IF U_EDIT -->
|
||||
<li>
|
||||
<a href="{U_EDIT}" title="{L_EDIT_POST}" class="button">
|
||||
{{ Icon('font', 'pencil', lang('EDIT_POST'), true, 'fas c-button-icon') }}
|
||||
</a>
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
</ul>
|
||||
|
||||
<!-- IF S_PM -->
|
||||
<p class="author">
|
||||
<strong>{L_SENT_AT}{L_COLON}</strong> {POST_DATE}
|
||||
<br /><strong>{L_PM_FROM}{L_COLON}</strong> {POST_AUTHOR_FULL}
|
||||
<!-- IF S_TO_RECIPIENT --><br /><strong>{L_TO}{L_COLON}</strong> <!-- BEGIN to_recipient --><!-- IF to_recipient.NAME_FULL -->{to_recipient.NAME_FULL}<!-- ELSE --><a href="{to_recipient.U_VIEW}"<!-- IF to_recipient.COLOUR --> style="color:{to_recipient.COLOUR};"<!-- ENDIF -->><strong>{to_recipient.NAME}</strong></a><!-- ENDIF --> <!-- END to_recipient --><!-- ENDIF -->
|
||||
<!-- IF S_BCC_RECIPIENT --><br /><strong>{L_BCC}{L_COLON}</strong> <!-- BEGIN bcc_recipient --><!-- IF bcc_recipient.NAME_FULL -->{bcc_recipient.NAME_FULL}<!-- ELSE --><a href="{bcc_recipient.U_VIEW}"<!-- IF bcc_recipient.COLOUR --> style="color:{bcc_recipient.COLOUR};"<!-- ENDIF -->><strong>{bcc_recipient.NAME}</strong></a><!-- ENDIF --> <!-- END bcc_recipient --><!-- ENDIF -->
|
||||
</p>
|
||||
<!-- ELSE -->
|
||||
<p class="author"><span>{{ Icon('font', 'file', MINI_POST, true, 'fas c-topic-icon') }}</span> {L_POSTED} {L_POST_BY_AUTHOR} {POST_AUTHOR_FULL} » {POST_DATE}</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% if S_CAN_APPROVE %}
|
||||
<!-- IF S_POST_UNAPPROVED -->
|
||||
<form method="post" id="mcp_approve" action="{U_APPROVE_ACTION}">
|
||||
|
||||
<p class="post-notice unapproved">
|
||||
<input class="button1 button button-form-bold" type="submit" value="{L_DISAPPROVE}" name="action[disapprove]" />
|
||||
<input class="button1 button button-form" type="submit" value="{L_APPROVE}" name="action[approve]" />
|
||||
<!-- IF not S_FIRST_POST --><input type="hidden" name="mode" value="unapproved_posts" /><!-- ENDIF -->
|
||||
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
||||
{S_FORM_TOKEN}
|
||||
</p>
|
||||
</form>
|
||||
<!-- ELSEIF S_POST_DELETED -->
|
||||
<form method="post" id="mcp_approve" action="{U_APPROVE_ACTION}">
|
||||
|
||||
<p class="post-notice deleted">
|
||||
<!-- IF S_CAN_DELETE_POST --><input class="button1 button button-form-bold" type="submit" value="{L_DELETE}" name="action[delete]" /> <!-- ENDIF -->
|
||||
<input class="button1 button button-form" type="submit" value="{L_RESTORE}" name="action[restore]" />
|
||||
<!-- IF not S_FIRST_POST --><input type="hidden" name="mode" value="deleted_posts" /><!-- ENDIF -->
|
||||
<input type="hidden" name="post_id_list[]" value="{POST_ID}" />
|
||||
{S_FORM_TOKEN}
|
||||
</p>
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
{% endif %}
|
||||
|
||||
{% if S_POST_REPORTED and not S_MCP_REPORT %}
|
||||
<p class="post-notice reported">
|
||||
{{ Icon('font', 'exclamation', lang('TOPIC_REPORTED'), true, 'fas c-topic-reported-icon') }}
|
||||
<a href="{U_MCP_REPORT}"><strong>{{ lang('POST_REPORTED') }}</strong></a>
|
||||
</p>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT mcp_post_text_before %}
|
||||
|
||||
<div id="post_details" class="content post_details">
|
||||
{POST_PREVIEW}
|
||||
</div>
|
||||
|
||||
{% EVENT mcp_post_text_after %}
|
||||
|
||||
<!-- IF S_HAS_ATTACHMENTS -->
|
||||
<dl class="attachbox">
|
||||
<dt>{L_ATTACHMENTS}</dt>
|
||||
<!-- BEGIN attachment -->
|
||||
<dd>{attachment.DISPLAY_ATTACHMENT}</dd>
|
||||
<!-- END attachment -->
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF DELETED_MESSAGE or DELETE_REASON -->
|
||||
<div class="notice">
|
||||
{DELETED_MESSAGE}
|
||||
<!-- IF DELETE_REASON --><br /><strong>{L_REASON}{L_COLON}</strong> <em>{DELETE_REASON}</em><!-- ENDIF -->
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF SIGNATURE -->
|
||||
<div id="sig{POST_ID}" class="signature">{SIGNATURE}</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_MCP_REPORT and S_CAN_VIEWIP -->
|
||||
<hr />
|
||||
<div><!-- IF S_PM -->{L_THIS_PM_IP}<!-- ELSE -->{L_THIS_POST_IP}<!-- ENDIF -->{L_COLON} <!-- IF U_WHOIS -->
|
||||
<a href="{U_WHOIS}"><!-- IF POST_IPADDR -->{POST_IPADDR}<!-- ELSE -->{POST_IP}<!-- ENDIF --></a> (<!-- IF POST_IPADDR -->{POST_IP}<!-- ELSE --><a href="{U_LOOKUP_IP}">{L_LOOKUP_IP}</a><!-- ENDIF -->)
|
||||
<!-- ELSE -->
|
||||
<!-- IF POST_IPADDR -->{POST_IPADDR} ({POST_IP})<!-- ELSE -->{POST_IP}<!-- IF U_LOOKUP_IP --> (<a href="{U_LOOKUP_IP}">{L_LOOKUP_IP}</a>)<!-- ENDIF --><!-- ENDIF -->
|
||||
<!-- ENDIF --></div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_CAN_LOCK_POST or S_CAN_DELETE_POST or S_CAN_CHGPOSTER or S_MCP_POST_ADDITIONAL_OPTS -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_MOD_OPTIONS}</h3>
|
||||
<!-- IF S_CAN_CHGPOSTER -->
|
||||
<form method="post" id="mcp_chgposter" action="{U_POST_ACTION}">
|
||||
|
||||
<fieldset>
|
||||
<dl>
|
||||
<dt><label>{L_CHANGE_POSTER}{L_COLON}</label></dt>
|
||||
<!-- IF S_USER_SELECT --><dd><select name="u">{S_USER_SELECT}</select> <input type="submit" class="button1 button button-form-bold" name="action[chgposter_ip]" value="{L_CONFIRM}" /></dd><!-- ENDIF -->
|
||||
<dd style="margin-top:3px;">
|
||||
<input class="inputbox autowidth" type="text" name="username" value="" />
|
||||
<input type="submit" class="button1 button button-form-bold" name="action[chgposter]" value="{L_CONFIRM}" />
|
||||
<br />
|
||||
<span>[ <a href="{U_FIND_USERNAME}" onclick="find_username(this.href); return false;">{L_FIND_USERNAME}</a> ]</span>
|
||||
</dd>
|
||||
</dl>
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_post_additional_options -->
|
||||
|
||||
<!-- IF S_CAN_LOCK_POST or S_CAN_DELETE_POST -->
|
||||
<form method="post" id="mcp" action="{U_MCP_ACTION}">
|
||||
|
||||
<fieldset>
|
||||
<dl>
|
||||
<dt><label>{L_MOD_OPTIONS}{L_COLON}</label></dt>
|
||||
<dd><select name="action">
|
||||
<!-- IF S_CAN_LOCK_POST --><!-- IF S_POST_LOCKED --><option value="unlock_post">{L_UNLOCK_POST} [{L_UNLOCK_POST_EXPLAIN}]</option><!-- ELSE --><option value="lock_post">{L_LOCK_POST} [{L_LOCK_POST_EXPLAIN}]</option><!-- ENDIF --><!-- ENDIF -->
|
||||
<!-- IF S_CAN_DELETE_POST --><option value="delete_post">{L_DELETE_POST}</option><!-- ENDIF -->
|
||||
</select> <input class="button1 button button-form-bold" type="submit" value="{L_SUBMIT}" />
|
||||
</dd>
|
||||
</dl>
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
|
||||
<!-- IF S_MCP_QUEUE or S_MCP_REPORT or RETURN_TOPIC -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<p><!-- IF S_MCP_QUEUE -->{RETURN_QUEUE} | {RETURN_TOPIC_SIMPLE} | {RETURN_POST}<!-- ELSEIF S_MCP_REPORT -->{RETURN_REPORTS}<!-- IF not S_PM --> | <a href="{U_VIEW_POST}">{L_VIEW_POST}</a> | <a href="{U_VIEW_TOPIC}">{L_VIEW_TOPIC}</a> | <a href="{U_VIEW_FORUM}">{L_VIEW_FORUM}</a><!-- ENDIF --><!-- ELSE -->{RETURN_TOPIC}<!-- ENDIF --></p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_MCP_QUEUE -->
|
||||
<!-- ELSE -->
|
||||
|
||||
<!-- IF S_SHOW_USER_NOTES -->
|
||||
<div class="panel" id="usernotes">
|
||||
<div class="inner">
|
||||
|
||||
<form method="post" id="mcp_notes" action="{U_POST_ACTION}">
|
||||
|
||||
<!-- IF S_USER_NOTES -->
|
||||
<h3>{L_FEEDBACK}</h3>
|
||||
|
||||
<!-- BEGIN usernotes -->
|
||||
<span class="small"><strong>{L_REPORTED_BY}{L_COLON} {usernotes.REPORT_BY} « {usernotes.REPORT_AT}</strong></span>
|
||||
<!-- IF S_CLEAR_ALLOWED --><div class="right-box"><input type="checkbox" name="marknote[]" value="{usernotes.ID}" /></div><!-- ENDIF -->
|
||||
<div class="postbody">{usernotes.ACTION}</div>
|
||||
|
||||
<hr class="dashed" />
|
||||
<!-- END usernotes -->
|
||||
|
||||
<!-- IF S_CLEAR_ALLOWED -->
|
||||
<fieldset class="submit-buttons">
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[del_all]" value="{L_DELETE_ALL}" />
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[del_marked]" value="{L_DELETE_MARKED}" />
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<h3>{L_ADD_FEEDBACK}</h3>
|
||||
<p>{L_ADD_FEEDBACK_EXPLAIN}</p>
|
||||
|
||||
<fieldset>
|
||||
<textarea name="usernote" rows="4" cols="76" class="inputbox"></textarea>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input class="button1 button button-form" type="submit" name="action[add_feedback]" value="{L_SUBMIT}" />
|
||||
<input class="button1 button button-form-bold" type="reset" value="{L_RESET}" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_SHOW_REPORTS -->
|
||||
<div class="panel" id="reports">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_MCP_POST_REPORTS}</h3>
|
||||
|
||||
<!-- BEGIN reports -->
|
||||
<span class="small"><strong>{L_REPORTED_BY}{L_COLON} <!-- IF reports.U_REPORTER --><a href="{reports.U_REPORTER}">{reports.REPORTER}</a><!-- ELSE -->{reports.REPORTER}<!-- ENDIF --> « {reports.REPORT_TIME}</strong></span>
|
||||
<p><em>{reports.REASON_TITLE}{L_COLON} {reports.REASON_DESC}</em><!-- IF reports.REPORT_TEXT --><br />{reports.REPORT_TEXT}<!-- ENDIF --></p>
|
||||
<!-- END reports -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_CAN_VIEWIP and not S_MCP_REPORT -->
|
||||
<div class="panel" id="ip">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_THIS_POST_IP}{L_COLON} <!-- IF U_WHOIS -->
|
||||
<a href="{U_WHOIS}"><!-- IF POST_IPADDR -->{POST_IPADDR}<!-- ELSE -->{POST_IP}<!-- ENDIF --></a> (<!-- IF POST_IPADDR -->{POST_IP}<!-- ELSE --><a href="{U_LOOKUP_IP}">{L_LOOKUP_IP}</a><!-- ENDIF -->)
|
||||
<!-- ELSE -->
|
||||
<!-- IF POST_IPADDR -->{POST_IPADDR} ({POST_IP})<!-- ELSE -->{POST_IP}<!-- IF U_LOOKUP_IP --> (<a href="{U_LOOKUP_IP}">{L_LOOKUP_IP}</a>)<!-- ENDIF --><!-- ENDIF -->
|
||||
<!-- ENDIF --></p>
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_OTHER_USERS}</th>
|
||||
<th class="posts">{L_POSTS}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN userrow -->
|
||||
<tr class="<!-- IF userrow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td><!-- IF userrow.U_PROFILE --><a href="{userrow.U_PROFILE}">{userrow.USERNAME}</a><!-- ELSE -->{userrow.USERNAME}<!-- ENDIF --></td>
|
||||
<td class="posts"><a href="{userrow.U_SEARCHPOSTS}" title="{L_SEARCH_POSTS_BY} {userrow.USERNAME}">{userrow.NUM_POSTS}</a></td>
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr>
|
||||
<td colspan="2">{L_NO_MATCHES_FOUND}</td>
|
||||
</tr>
|
||||
<!-- END userrow -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="pagination">
|
||||
<!-- INCLUDE pagination.html -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_IPS_POSTED_FROM}</th>
|
||||
<th class="posts">{L_POSTS}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN iprow -->
|
||||
<tr class="<!-- IF iprow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td><!-- IF iprow.HOSTNAME --><a href="{iprow.U_WHOIS}">{iprow.HOSTNAME}</a> ({iprow.IP})<!-- ELSE --><a href="{iprow.U_WHOIS}">{iprow.IP}</a> (<a href="{iprow.U_LOOKUP_IP}">{L_LOOKUP_IP}</a>)<!-- ENDIF --></td>
|
||||
<td class="posts">{iprow.NUM_POSTS}</td>
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr>
|
||||
<td colspan="2">{L_NO_MATCHES_FOUND}</td>
|
||||
</tr>
|
||||
<!-- END iprow -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
{% if U_LOOKUP_ALL %}
|
||||
<div class="buttons">
|
||||
<p><a href="{U_LOOKUP_ALL}#ip">{L_LOOKUP_ALL}</a></p>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="pagination">
|
||||
<ul>
|
||||
<!-- BEGIN pagination_ips -->
|
||||
<!-- IF pagination_ips.S_IS_PREV -->
|
||||
<li class="arrow previous"><a class="button button-icon-only" href="{pagination_ips.PAGE_URL}" rel="prev" role="button">{{ Icon('font', 'chevron-' ~ S_CONTENT_FLOW_BEGIN, lang('PREVIOUS'), true, 'fas c-button-icon') }}</a></li>
|
||||
<!-- ELSEIF pagination_ips.S_IS_CURRENT -->
|
||||
<li class="active"><span>{pagination_ips.PAGE_NUMBER}</span></li>
|
||||
<!-- ELSEIF pagination_ips.S_IS_ELLIPSIS -->
|
||||
<li class="ellipsis" role="separator"><span>{L_ELLIPSIS}</span></li>
|
||||
<!-- ELSEIF pagination_ips.S_IS_NEXT -->
|
||||
<li class="arrow next"><a class="button button-icon-only" href="{pagination_ips.PAGE_URL}" rel="next" role="button">{{ Icon('font', 'chevron-' ~ S_CONTENT_FLOW_END, lang('NEXT'), true, 'fas c-button-icon') }}</a></li>
|
||||
<!-- ELSE -->
|
||||
<li><a class="button" href="{pagination_ips.PAGE_URL}" role="button">{pagination_ips.PAGE_NUMBER}</a></li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END pagination_ips -->
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_TOPIC_REVIEW --><!-- INCLUDE posting_topic_review.html --><!-- ENDIF -->
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
123
phpBB/styles/prosilver2/template/mcp_queue.html
Normal file
|
@ -0,0 +1,123 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||
|
||||
<fieldset class="forum-selection">
|
||||
<label for="fo">{L_FORUM}{L_COLON} <select name="f" id="fo">{S_FORUM_OPTIONS}</select></label>
|
||||
<input type="submit" name="sort" value="{L_GO}" class="button1 button button-form-bold" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_EXPLAIN}</p>
|
||||
|
||||
<!-- IF .postrow -->
|
||||
<div class="action-bar bar-top">
|
||||
<div class="pagination">
|
||||
{TOTAL}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="topiclist missing-column">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt><div class="list-inner"><!-- IF S_TOPICS -->{L_TOPIC}<!-- ELSE -->{L_POST}<!-- ENDIF --></div></dt>
|
||||
<dd class="moderation"><span><!-- IF not S_TOPICS -->{L_TOPIC} & <!-- ENDIF -->{L_FORUM}</span></dd>
|
||||
<dd class="mark">{L_MARK}</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist missing-column responsive-show-all">
|
||||
|
||||
<!-- BEGIN postrow -->
|
||||
|
||||
<!-- IF postrow.S_DELETED_TOPIC -->
|
||||
<li><p class="notopics">{L_DELETED_TOPIC}</p></li>
|
||||
<!-- ELSE -->
|
||||
|
||||
<li class="row<!-- IF postrow.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{postrow.U_VIEW_DETAILS}" class="topictitle">{postrow.POST_SUBJECT}</a><!-- IF postrow.S_HAS_ATTACHMENTS --> {{ Icon('font', 'paperclip', '', true) }} <!-- ENDIF --><br />
|
||||
<span>{L_POSTED} {L_POST_BY_AUTHOR} {postrow.POST_AUTHOR_FULL} » {postrow.POST_TIME}</span>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation">
|
||||
<span>
|
||||
<!-- IF S_TOPICS --><br /><!-- ELSE -->{L_TOPIC}{L_COLON} <a href="{postrow.U_TOPIC}">{postrow.TOPIC_TITLE}</a> <br /><!-- ENDIF -->
|
||||
{L_FORUM}{L_COLON} <a href="{postrow.U_VIEWFORUM}">{postrow.FORUM_NAME}</a>
|
||||
</span>
|
||||
</dd>
|
||||
|
||||
|
||||
<dd class="mark">
|
||||
<!-- IF S_TOPICS -->
|
||||
<input type="checkbox" name="topic_id_list[]" value="{postrow.TOPIC_ID}" />
|
||||
<!-- ELSE -->
|
||||
<input type="checkbox" name="post_id_list[]" value="{postrow.POST_ID}" />
|
||||
<!-- ENDIF -->
|
||||
</dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END postrow -->
|
||||
</ul>
|
||||
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
<!-- IF TOPIC_ID --><label><input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" onClick="document.getElementById('mcp').submit()" /> <strong>{L_ONLY_TOPIC}</strong></label><!-- ENDIF -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ELSE -->
|
||||
<p class="notopics"><strong>
|
||||
<!-- IF S_RESTORE -->
|
||||
<!-- IF S_TOPICS -->{L_NO_TOPICS_DELETED}<!-- ELSE -->{L_NO_POSTS_DELETED}<!-- ENDIF -->
|
||||
<!-- ELSE -->
|
||||
<!-- IF S_TOPICS -->{L_NO_TOPICS_QUEUE}<!-- ELSE -->{L_NO_POSTS_QUEUE}<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
</strong></p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF .postrow -->
|
||||
<fieldset class="display-actions">
|
||||
<!-- IF S_RESTORE -->
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[delete]" value="{L_DELETE}" />
|
||||
<input class="button1 button button-form" type="submit" name="action[restore]" value="{L_RESTORE}" />
|
||||
<!-- ELSE -->
|
||||
<input class="button1 button button-form-bold" type="submit" name="action[disapprove]" value="{L_DISAPPROVE}" />
|
||||
<input class="button1 button button-form" type="submit" name="action[approve]" value="{L_APPROVE}" />
|
||||
<!-- ENDIF -->
|
||||
<div>
|
||||
<!-- IF S_TOPICS -->
|
||||
<a href="#" onclick="marklist('mcp', 'topic_id_list', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'topic_id_list', false); return false;">{L_UNMARK_ALL}</a>
|
||||
<!-- ELSE -->
|
||||
<a href="#" onclick="marklist('mcp', 'post_id_list', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'post_id_list', false); return false;">{L_UNMARK_ALL}</a>
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
122
phpBB/styles/prosilver2/template/mcp_reports.html
Normal file
|
@ -0,0 +1,122 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||
|
||||
<!-- IF not S_PM -->
|
||||
<fieldset class="forum-selection">
|
||||
<label for="fo">{L_FORUM}{L_COLON} <select name="f" id="fo">{S_FORUM_OPTIONS}</select></label>
|
||||
<input type="submit" name="sort" value="{L_GO}" class="button1 button button-form-bold" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<h2>{L_TITLE}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_EXPLAIN}</p>
|
||||
|
||||
<!-- IF .postrow -->
|
||||
<div class="action-bar bar-top">
|
||||
<div class="pagination">
|
||||
{TOTAL_REPORTS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="topiclist missing-column">
|
||||
<li class="header">
|
||||
<dl>
|
||||
<dt><div class="list-inner">{L_VIEW_DETAILS}</div></dt>
|
||||
<dd class="moderation"><span>{L_REPORTER}<!-- IF not S_PM --> & {L_FORUM}<!-- ENDIF --></span></dd>
|
||||
<dd class="mark">{L_MARK}</dd>
|
||||
</dl>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="topiclist cplist missing-column">
|
||||
|
||||
<!-- BEGIN postrow -->
|
||||
<li class="row<!-- IF postrow.S_ROW_COUNT is odd --> bg1<!-- ELSE --> bg2<!-- ENDIF -->">
|
||||
<dl>
|
||||
<!-- IF S_PM -->
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{{ postrow.U_VIEW_DETAILS }}" class="topictitle">{{ postrow.PM_SUBJECT }}</a>
|
||||
{% if postrow.ATTACH_ICON_IMG %}{{ Icon('font', 'paperclip', '', true) }}{% endif %}
|
||||
<br>
|
||||
<span>{L_MESSAGE_BY_AUTHOR} {postrow.PM_AUTHOR_FULL} » {postrow.PM_TIME}</span><br />
|
||||
<span>{L_MESSAGE_TO} {postrow.RECIPIENTS}</span>
|
||||
<div class="responsive-show" style="display: none;">
|
||||
{L_REPORTER}{L_COLON} {postrow.REPORTER_FULL} « {postrow.REPORT_TIME}
|
||||
</div>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation">
|
||||
<span>{postrow.REPORTER_FULL} « {postrow.REPORT_TIME}</span>
|
||||
</dd>
|
||||
<!-- ELSE -->
|
||||
<dt>
|
||||
<div class="list-inner">
|
||||
<a href="{postrow.U_VIEW_DETAILS}" class="topictitle">{postrow.POST_SUBJECT}</a>
|
||||
{% if postrow.ATTACH_ICON_IMG %}{{ Icon('font', 'paperclip', '', true) }} {% endif %}
|
||||
<br>
|
||||
<span>{L_POSTED} {L_POST_BY_AUTHOR} {postrow.POST_AUTHOR_FULL} » {postrow.POST_TIME}</span>
|
||||
<div class="responsive-show" style="display: none;">
|
||||
{L_REPORTER}{L_COLON} {postrow.REPORTER_FULL} « {postrow.REPORT_TIME}<br />
|
||||
<!-- IF postrow.U_VIEWFORUM -->{L_FORUM}{L_COLON} <a href="{postrow.U_VIEWFORUM}">{postrow.FORUM_NAME}</a><!-- ELSE -->{postrow.FORUM_NAME}<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
</dt>
|
||||
<dd class="moderation">
|
||||
<span>{postrow.REPORTER_FULL} « {postrow.REPORT_TIME}<br />
|
||||
<!-- IF postrow.U_VIEWFORUM -->{L_FORUM}{L_COLON} <a href="{postrow.U_VIEWFORUM}">{postrow.FORUM_NAME}</a><!-- ELSE -->{postrow.FORUM_NAME}<!-- ENDIF --></span>
|
||||
</dd>
|
||||
<!-- ENDIF -->
|
||||
<dd class="mark"><input type="checkbox" name="report_id_list[]" value="{postrow.REPORT_ID}" /></dd>
|
||||
</dl>
|
||||
</li>
|
||||
<!-- END postrow -->
|
||||
</ul>
|
||||
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
<!-- IF TOPIC_ID -->
|
||||
<label>
|
||||
<input type="hidden" name="t" value="0">
|
||||
<input type="checkbox" class="radio" name="t" value="{TOPIC_ID}" checked="checked" onClick="document.getElementById('mcp').submit()" />
|
||||
<strong>{L_ONLY_TOPIC}</strong>
|
||||
</label>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL_REPORTS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ELSE -->
|
||||
<p><strong>{L_NO_REPORTS}</strong></p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF .postrow -->
|
||||
<fieldset class="display-actions">
|
||||
<input class="button1 button button-form-bold" type="submit" value="{L_DELETE_REPORTS}" name="action[delete]" />
|
||||
<!-- IF not S_CLOSED --> <input class="button1 button button-form" type="submit" name="action[close]" value="{L_CLOSE_REPORTS}" /><!-- ENDIF -->
|
||||
<div><a href="#" onclick="marklist('mcp', 'report_id_list', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'report_id_list', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
207
phpBB/styles/prosilver2/template/mcp_topic.html
Normal file
|
@ -0,0 +1,207 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<div class="tabs-container">
|
||||
<h2><a href="{U_VIEW_TOPIC}">{L_TOPIC}{L_COLON} {TOPIC_TITLE}</a></h2>
|
||||
|
||||
<!-- IF S_MERGE_VIEW -->
|
||||
<!-- DEFINE $SHOW_PANEL = 'merge-panel' -->
|
||||
<!-- ELSEIF S_SPLIT_VIEW -->
|
||||
<!-- DEFINE $SHOW_PANEL = 'split-panel' -->
|
||||
<!-- ELSE -->
|
||||
<!-- DEFINE $SHOW_PANEL = 'display-panel' -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div id="minitabs" class="minitabs sub-panels" data-show-panel="{$SHOW_PANEL}" role="tablist">
|
||||
<ul>
|
||||
<li id="display-panel-tab" class="tab<!-- IF not S_MERGE_VIEW --> activetab<!-- ENDIF -->">
|
||||
<a href="#minitabs" data-subpanel="display-panel" role="tab" aria-controls="display-panel">{L_DISPLAY_OPTIONS}</a>
|
||||
</li>
|
||||
<li id="split-panel-tab" class="tab">
|
||||
<a href="#minitabs" data-subpanel="split-panel" role="tab" aria-controls="split-panel">{L_SPLIT_TOPIC}</a>
|
||||
</li>
|
||||
<li id="merge-panel-tab" class="tab<!-- IF S_MERGE_VIEW --> activetab<!-- ENDIF -->">
|
||||
<a href="#minitabs" data-subpanel="merge-panel" role="tab" aria-controls="merge-panel">{L_MERGE_POSTS}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<form id="mcp" method="post" action="{S_MCP_ACTION}">
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<fieldset id="display-panel" class="fields2" role="tabpanel">
|
||||
<dl>
|
||||
<dt><label for="posts_per_page">{L_POSTS_PER_PAGE}{L_COLON}</label><br /><span>{L_POSTS_PER_PAGE_EXPLAIN}</span></dt>
|
||||
<dd><input class="inputbox autowidth" type="number" min="0" max="999999" name="posts_per_page" id="posts_per_page" value="{POSTS_PER_PAGE}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label>{L_DISPLAY_POSTS}{L_COLON}</label></dt>
|
||||
<dd>{S_SELECT_SORT_DAYS} <label>{L_SORT_BY} {S_SELECT_SORT_KEY}</label><label>{S_SELECT_SORT_DIR}</label> <input type="submit" name="sort" value="{L_GO}" class="button1 button button-form-bold" /></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<!-- IF S_CAN_SPLIT -->
|
||||
<fieldset id="split-panel" class="fields2" role="tabpanel">
|
||||
<p>{L_SPLIT_TOPIC_EXPLAIN}</p>
|
||||
|
||||
<!-- IF S_SHOW_TOPIC_ICONS -->
|
||||
<dl>
|
||||
<dt><label for="icon">{L_TOPIC_ICON}{L_COLON}</label></dt>
|
||||
<dd><label for="icon"><input type="radio" name="icon" id="icon" value="0" checked="checked" /> {L_NO_TOPIC_ICON}</label>
|
||||
<!-- BEGIN topic_icon --><label for="icon-{topic_icon.ICON_ID}"><input type="radio" name="icon" id="icon-{topic_icon.ICON_ID}" value="{topic_icon.ICON_ID}" {topic_icon.S_ICON_CHECKED} /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="" title="" /></label> <!-- END topic_icon --></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_topic_options_before -->
|
||||
<dl>
|
||||
<dt><label for="subject">{L_SPLIT_SUBJECT}{L_COLON}</label></dt>
|
||||
<dd><input type="text" name="subject" id="subject" size="45" maxlength="124" tabindex="2" value="{SPLIT_SUBJECT}" title="{L_SPLIT_SUBJECT}" class="inputbox" /></dd>
|
||||
</dl>
|
||||
<!-- EVENT mcp_topic_options_after -->
|
||||
<dl>
|
||||
<dt><label>{L_SPLIT_FORUM}{L_COLON}</label></dt>
|
||||
<dd><select name="to_forum_id">{S_FORUM_SELECT}</select></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_CAN_MERGE -->
|
||||
<fieldset id="merge-panel" class="fields2" role="tabpanel">
|
||||
<p>{L_MERGE_TOPIC_EXPLAIN}</p>
|
||||
<dl>
|
||||
<dt><label for="to_topic_id">{L_MERGE_TOPIC_ID}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
<input class="inputbox autowidth" type="number" min="0" max="9999999999" name="to_topic_id" id="to_topic_id" value="{TO_TOPIC_ID}" />
|
||||
<a href="{U_SELECT_TOPIC}" >{L_SELECT_TOPIC}</a>
|
||||
</dd>
|
||||
<!-- IF TO_TOPIC_INFO --><dd>{TO_TOPIC_INFO}</dd><!-- ENDIF -->
|
||||
</dl>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3 id="review" class="review">
|
||||
<span class="right-box"><a href="#review" onclick="viewableArea(getElementById('topicreview'), true); var rev_text = getElementById('review').getElementsByTagName('a').item(0).firstChild; if (rev_text.data == '{LA_EXPAND_VIEW}'){rev_text.data = '{LA_COLLAPSE_VIEW}'; } else if (rev_text.data == '{LA_COLLAPSE_VIEW}'){rev_text.data = '{LA_EXPAND_VIEW}'};">{L_EXPAND_VIEW}</a></span>
|
||||
{L_TOPIC_REVIEW}{L_COLON} <!-- EVENT mcp_topic_topic_title_before -->{TOPIC_TITLE}<!-- EVENT mcp_topic_topic_title_after -->
|
||||
</h3>
|
||||
|
||||
<div id="topicreview" class="topicreview">
|
||||
<!-- BEGIN postrow -->
|
||||
<!-- EVENT mcp_topic_postrow_post_before -->
|
||||
<!-- IF postrow.S_FIRST_UNREAD -->
|
||||
<a id="unread" class="anchor"<!-- IF S_UNREAD_VIEW --> data-url="{postrow.U_MINI_POST}"<!-- ENDIF -->></a>
|
||||
<!-- ENDIF -->
|
||||
<div class="post <!-- IF postrow.S_ROW_COUNT is odd -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<div class="inner">
|
||||
|
||||
<div class="postbody" id="pr{postrow.POST_ID}">
|
||||
<ul class="post-buttons">
|
||||
<li>
|
||||
<a href="{postrow.U_POST_DETAILS}" title="{L_POST_DETAILS}" class="button button-icon-only">
|
||||
{{ Icon('font', 'info', lang('POST_DETAILS'), true, 'fas c-button-icon') }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<label for="post_id_list_select_{postrow.POST_ID}">{L_SELECT}{L_COLON}
|
||||
<input type="checkbox" id="post_id_list_select_{postrow.POST_ID}" name="post_id_list[]" value="{postrow.POST_ID}"<!-- IF postrow.S_CHECKED --> checked="checked"<!-- ENDIF --> />
|
||||
</label>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<!-- EVENT mcp_topic_postrow_post_subject_before -->
|
||||
<h3><a href="{postrow.U_POST_DETAILS}">{postrow.POST_SUBJECT}</a></h3>
|
||||
<!-- EVENT mcp_topic_postrow_post_subject_after -->
|
||||
|
||||
<!-- EVENT mcp_topic_postrow_post_details_before -->
|
||||
<p class="author">
|
||||
<a href="{postrow.U_MINI_POST}" title="{postrow.MINI_POST}">
|
||||
{{ Icon('font', 'file', postrow.MINI_POST, true) }}
|
||||
</a> {L_POSTED} {postrow.POST_DATE} {L_POST_BY_AUTHOR} {% EVENT mcp_topic_post_author_full_prepend %}<strong>{postrow.POST_AUTHOR_FULL}</strong>{% EVENT mcp_topic_post_author_full_append %}<!-- IF postrow.U_MCP_DETAILS --> [ <a href="{postrow.U_MCP_DETAILS}">{L_POST_DETAILS}</a> ]<!-- ENDIF -->
|
||||
</p>
|
||||
<!-- EVENT mcp_topic_postrow_post_details_after -->
|
||||
|
||||
<!-- IF postrow.S_POST_UNAPPROVED -->
|
||||
<p class="post-notice unapproved">
|
||||
<a href="{postrow.U_MCP_APPROVE}">{{ Icon('font', 'exclamation', '', true, 'fas c-topic-reported-icon') }}<strong>{L_POST_UNAPPROVED}</strong></a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF postrow.S_POST_DELETED -->
|
||||
<p class="post-notice deleted">
|
||||
<a href="{postrow.U_MCP_APPROVE}"><strong>{L_POST_DELETED}</strong></a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF postrow.S_POST_REPORTED -->
|
||||
<p class="post-notice reported">
|
||||
<a href="{postrow.U_MCP_REPORT}">{{ Icon('font', 'exclamation', '', true, 'fas c-topic-reported-icon') }}<strong>{L_POST_REPORTED}</strong></a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="content" id="message_{postrow.POST_ID}">{postrow.MESSAGE}</div>
|
||||
|
||||
<!-- EVENT mcp_topic_postrow_attachments_before -->
|
||||
|
||||
<!-- IF postrow.S_HAS_ATTACHMENTS -->
|
||||
<dl class="attachbox">
|
||||
<dt>{L_ATTACHMENTS}</dt>
|
||||
<!-- BEGIN attachment -->
|
||||
<dd>{postrow.attachment.DISPLAY_ATTACHMENT}</dd>
|
||||
<!-- END attachment -->
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT mcp_topic_postrow_attachments_after -->
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- BEGINELSE -->
|
||||
<p><strong>{{ lang('NO_POSTS_TIME_FRAME') }}</strong></p>
|
||||
<!-- END postrow -->
|
||||
</div>
|
||||
|
||||
<hr />
|
||||
|
||||
<div class="action-bar bar-bottom">
|
||||
<div class="pagination">
|
||||
{TOTAL_POSTS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="display-actions">
|
||||
<select name="action">
|
||||
<option value="" selected="selected">{L_SELECT_ACTION}</option>
|
||||
<!-- IF S_CAN_APPROVE --><option value="approve">{L_APPROVE_POSTS}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_LOCK --><option value="lock_post">{L_LOCK_POST_POSTS} [ {L_LOCK_POST_EXPLAIN} ]</option><option value="unlock_post">{L_UNLOCK_POST_POSTS}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_DELETE --><option value="delete_post">{L_DELETE_POSTS}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_RESTORE --><option value="restore">{L_RESTORE_POSTS}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_MERGE --><option value="merge_posts"<!-- IF S_MERGE_VIEW --> selected="selected"<!-- ENDIF -->>{L_MERGE_POSTS}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_SPLIT --><option value="split_all"<!-- IF S_SPLIT_VIEW --> selected="selected"<!-- ENDIF -->>{L_SPLIT_POSTS}</option><option value="split_beyond">{L_SPLIT_AFTER}</option><!-- ENDIF -->
|
||||
<!-- IF S_CAN_SYNC --><option value="resync">{L_RESYNC}</option><!-- ENDIF -->
|
||||
</select>
|
||||
<input class="button1 button button-form" type="submit" name="mcp_topic_submit" value="{L_SUBMIT}" />
|
||||
<div><a href="#" onclick="marklist('mcp', 'post', true); return false;">{L_MARK_ALL}</a> :: <a href="#" onclick="marklist('mcp', 'post', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
{S_HIDDEN_FIELDS}
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
96
phpBB/styles/prosilver2/template/mcp_warn_front.html
Normal file
|
@ -0,0 +1,96 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_WARN_USER}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_SELECT_USER}</h3>
|
||||
|
||||
<fieldset>
|
||||
<dl>
|
||||
<dt><label for="username">{L_SELECT_USER}{L_COLON}</label></dt>
|
||||
<dd><input name="username" id="username" type="text" class="inputbox" /></dd>
|
||||
<dd><strong><a href="{U_FIND_USERNAME}" onclick="find_username(this.href); return false;">{L_FIND_USERNAME}</a></strong></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" name="submituser" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_MOST_WARNINGS}</h3>
|
||||
|
||||
<!-- IF .highest -->
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_USERNAME}</th>
|
||||
<th class="name">{L_WARNINGS}</th>
|
||||
<th class="name">{L_LATEST_WARNING_TIME}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<!-- BEGIN highest -->
|
||||
<tr class="<!-- IF highest.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td>{highest.USERNAME_FULL}</td>
|
||||
<td>{highest.WARNINGS}</td>
|
||||
<td>{highest.WARNING_TIME}</td>
|
||||
<td><a href="{highest.U_NOTES}">{L_VIEW_NOTES}</a></td>
|
||||
</tr>
|
||||
<!-- END highest -->
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- ELSE -->
|
||||
<p><strong>{L_NO_WARNINGS}</strong></p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_LATEST_WARNINGS}</h3>
|
||||
|
||||
<!-- IF .latest -->
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_USERNAME}</th>
|
||||
<th class="name">{L_TIME}</th>
|
||||
<th class="name">{L_TOTAL_WARNINGS}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN latest -->
|
||||
<tr class="<!-- IF latest.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td>{latest.USERNAME_FULL}</td>
|
||||
<td>{latest.WARNING_TIME}</td>
|
||||
<td>{latest.WARNINGS}</td>
|
||||
<td><a href="{latest.U_NOTES}">{L_VIEW_NOTES}</a></td>
|
||||
</tr>
|
||||
<!-- END latest -->
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- ELSE -->
|
||||
<p><strong>{L_NO_WARNINGS}</strong></p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
70
phpBB/styles/prosilver2/template/mcp_warn_list.html
Normal file
|
@ -0,0 +1,70 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_WARNED_USERS}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_WARNED_USERS_EXPLAIN}</p>
|
||||
|
||||
<!-- IF .user -->
|
||||
<div class="action-bar bar-top">
|
||||
<div class="pagination">
|
||||
{TOTAL_USERS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name">{L_USERNAME}</th>
|
||||
<th class="name">{L_WARNINGS}</th>
|
||||
<th class="name">{L_LATEST_WARNING_TIME}</th>
|
||||
<th></th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
|
||||
<!-- BEGIN user -->
|
||||
<tr class="<!-- IF user.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF -->">
|
||||
<td>{user.USERNAME_FULL}</td>
|
||||
<td>{user.WARNINGS}</td>
|
||||
<td>{user.WARNING_TIME}</td>
|
||||
<td><a href="{user.U_NOTES}">{L_VIEW_NOTES}</a></td>
|
||||
</tr>
|
||||
<!-- END user -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<div class="action-bar bottom">
|
||||
<!-- INCLUDE display_options.html -->
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL_USERS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- ELSE -->
|
||||
<p><strong>{L_NO_WARNINGS}</strong></p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
77
phpBB/styles/prosilver2/template/mcp_warn_post.html
Normal file
|
@ -0,0 +1,77 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_MCP_WARN_POST}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3><!-- IF USER_COLOR --><span style="color: #{USER_COLOR}">{USERNAME}</span><!-- ELSE -->{USERNAME}<!-- ENDIF --></h3>
|
||||
|
||||
<div>
|
||||
<div class="column1">
|
||||
<!-- IF AVATAR_HTML --><div>{AVATAR_HTML}</div><!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<div class="column2">
|
||||
<dl class="details">
|
||||
<!-- IF RANK_TITLE --><dt>{L_RANK}{L_COLON}</dt><dd>{RANK_TITLE}</dd><!-- ENDIF -->
|
||||
{% if RANK_IMG %}<dt>{% if RANK_TITLE %} {% else %}{{ lang('RANK') ~ lang('COLON') }}{% endif %}</dt><dd class="rank-img">{{ RANK_IMG }}</dd>{% endif %}
|
||||
<dt>{L_JOINED}{L_COLON}</dt><dd>{JOINED}</dd>
|
||||
<dt>{L_TOTAL_POSTS}{L_COLON}</dt><dd>{POSTS}</dd>
|
||||
<dt>{L_WARNINGS}{L_COLON} </dt><dd>{WARNINGS}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_POST_DETAILS}</h3>
|
||||
|
||||
<div class="postbody">
|
||||
|
||||
<div class="content">
|
||||
{POST}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT mcp_warn_post_add_warning_field_before -->
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_ADD_WARNING}</h3>
|
||||
<p>{L_ADD_WARNING_EXPLAIN}</p>
|
||||
|
||||
<fieldset>
|
||||
<textarea name="warning" id="warning" class="inputbox" cols="40" rows="3">{L_WARNING_POST_DEFAULT}</textarea>
|
||||
<!-- IF S_CAN_NOTIFY -->
|
||||
<br /><br />
|
||||
<dl class="panel">
|
||||
<dt> </dt>
|
||||
<dd><label><input type="checkbox" name="notify_user" checked="checked" /> {L_NOTIFY_USER_WARN}</label></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT mcp_warn_post_add_warning_field_after -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" name="action[add_warning]" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
61
phpBB/styles/prosilver2/template/mcp_warn_user.html
Normal file
|
@ -0,0 +1,61 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
|
||||
<form method="post" id="mcp" action="{U_POST_ACTION}">
|
||||
|
||||
<h2>{L_WARN_USER}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{USERNAME_FULL}</h3>
|
||||
|
||||
<div>
|
||||
<div class="column1">
|
||||
<!-- IF AVATAR_HTML --><div>{AVATAR_HTML}</div><!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<div class="column2">
|
||||
<dl class="details">
|
||||
<!-- IF RANK_TITLE --><dt>{L_RANK}{L_COLON}</dt><dd>{RANK_TITLE}</dd><!-- ENDIF -->
|
||||
{% if RANK_IMG %}<dt>{% if RANK_TITLE %} {% else %}{{ lang('RANK') ~ lang('COLON') }}{% endif %}</dt><dd class="rank-img">{{ RANK_IMG }}</dd>{% endif %}
|
||||
<dt>{L_JOINED}{L_COLON}</dt><dd>{JOINED}</dd>
|
||||
<dt>{L_TOTAL_POSTS}{L_COLON}</dt><dd>{POSTS}</dd>
|
||||
<dt>{L_WARNINGS}{L_COLON} </dt><dd>{WARNINGS}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT mcp_warn_user_add_warning_field_before -->
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_ADD_WARNING}</h3>
|
||||
<p>{L_ADD_WARNING_EXPLAIN}</p>
|
||||
|
||||
<fieldset>
|
||||
<textarea name="warning" id="warning" class="inputbox" cols="40" rows="3"></textarea>
|
||||
<!-- IF S_CAN_NOTIFY -->
|
||||
<br /><br />
|
||||
<dl class="panel">
|
||||
<dt> </dt>
|
||||
<dd><label><input type="checkbox" name="notify_user" checked="checked" /> {L_NOTIFY_USER_WARN}</label></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT mcp_warn_user_add_warning_field_after -->
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" name="action[add_warning]" value="{L_SUBMIT}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
22
phpBB/styles/prosilver2/template/mcp_whois.html
Normal file
|
@ -0,0 +1,22 @@
|
|||
<!-- INCLUDE mcp_header.html -->
|
||||
<h2>{L_WHOIS}</h2>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<p>
|
||||
<a href="{U_RETURN_POST}" class="arrow-{S_CONTENT_FLOW_BEGIN}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('RETURN_POST'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<div class="postbody"><div class="content">
|
||||
<pre>{WHOIS}</pre>
|
||||
</div></div>
|
||||
<p>
|
||||
<a href="{U_RETURN_POST}" class="arrow-{S_CONTENT_FLOW_BEGIN}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('RETURN_POST'), false, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- INCLUDE mcp_footer.html -->
|
190
phpBB/styles/prosilver2/template/memberlist_body.html
Normal file
|
@ -0,0 +1,190 @@
|
|||
<!-- IF S_IN_SEARCH_POPUP -->
|
||||
<!-- INCLUDE simple_header.html -->
|
||||
<!-- INCLUDE memberlist_search.html -->
|
||||
<form method="post" id="results" action="{S_MODE_ACTION}" onsubmit="insert_marked_users('#results', this.user); return false;" data-form-name="{S_FORM_NAME}" data-field-name="{S_FIELD_NAME}">
|
||||
|
||||
<!-- ELSE -->
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
<div class="panel" id="memberlist_search"<!-- IF not S_SEARCH_USER --> style="display: none;"<!-- ENDIF -->>
|
||||
<!-- INCLUDE memberlist_search.html -->
|
||||
</div>
|
||||
<form method="post" action="{S_MODE_ACTION}">
|
||||
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% EVENT memberlist_body_page_header_after %}
|
||||
|
||||
<!-- IF S_SHOW_GROUP -->
|
||||
{% EVENT memberlist_body_group_name_before %}
|
||||
<h2 class="group-title"<!-- IF GROUP_COLOR --> style="color:#{GROUP_COLOR};"<!-- ENDIF -->>{GROUP_NAME}</h2>
|
||||
{% EVENT memberlist_body_group_name_after %}
|
||||
<!-- IF U_MANAGE -->
|
||||
<p class="right responsive-center manage rightside"><a href="{U_MANAGE}">{L_MANAGE_GROUP}</a></p>
|
||||
<!-- ENDIF -->
|
||||
<div class="group-description">{GROUP_DESC} {GROUP_TYPE}</div>
|
||||
|
||||
{% EVENT memberlist_body_group_desc_after %}
|
||||
|
||||
<p>
|
||||
<!-- IF AVATAR_HTML -->{AVATAR_HTML}<!-- ENDIF -->
|
||||
{% EVENT memberlist_body_group_rank_before %}
|
||||
{% if RANK_IMG %}<span class="rank-img">{{ RANK_IMG }}</span>{% endif %}
|
||||
{% if GROUP_RANK %}
|
||||
{% if not RANK_IMG %}
|
||||
{{ lang('GROUP_RANK') ~ lang('COLON') }}
|
||||
{% endif %}
|
||||
{{ GROUP_RANK }}
|
||||
{% endif %}
|
||||
{% EVENT memberlist_body_group_rank_after %}
|
||||
</p>
|
||||
<!-- ELSE -->
|
||||
{% EVENT memberlist_body_page_title_before %}
|
||||
<h2 class="solo">{PAGE_TITLE}<!-- IF SEARCH_WORDS -->{L_COLON} <a href="{U_SEARCH_WORDS}">{SEARCH_WORDS}</a><!-- ENDIF --></h2>
|
||||
|
||||
<div class="action-bar bar-top">
|
||||
<div class="member-search panel">
|
||||
<!-- IF U_FIND_MEMBER and not S_SEARCH_USER --><a href="{U_FIND_MEMBER}" id="member_search" data-alt-text="{L_HIDE_MEMBER_SEARCH}">{L_FIND_USERNAME}</a> • <!-- ELSEIF S_SEARCH_USER and U_HIDE_FIND_MEMBER and not S_IN_SEARCH_POPUP --><a href="{U_HIDE_FIND_MEMBER}" id="member_search" data-alt-text="{L_FIND_USERNAME}">{L_HIDE_MEMBER_SEARCH}</a> • <!-- ENDIF -->
|
||||
<strong>
|
||||
<!-- BEGIN first_char -->
|
||||
<a href="{first_char.U_SORT}">{first_char.DESC}</a>
|
||||
<!-- END first_char -->
|
||||
</strong>
|
||||
</div>
|
||||
|
||||
<div class="pagination">
|
||||
{TOTAL_USERS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_LEADERS_SET or not S_SHOW_GROUP or not .memberrow -->
|
||||
<div class="forumbg forumbg-table">
|
||||
<div class="inner">
|
||||
|
||||
<table class="table1 memberlist" id="memberlist">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name" data-dfn="{L_RANK}{L_COMMA_SEPARATOR}<!-- IF S_SHOW_GROUP and .memberrow -->{L_GROUP_LEADER}<!-- ELSE -->{L_USERNAME}<!-- ENDIF -->"><span class="rank-img"><a href="{U_SORT_RANK}">{L_RANK}</a></span><a href="{U_SORT_USERNAME}"><!-- IF S_SHOW_GROUP and .memberrow -->{L_GROUP_LEADER}<!-- ELSE -->{L_USERNAME}<!-- ENDIF --></a></th>
|
||||
<th class="posts"><a href="{U_SORT_POSTS}#memberlist">{L_POSTS}</a></th>
|
||||
<th class="info"><!-- BEGIN custom_fields --><!-- IF not custom_fields.S_FIRST_ROW -->{L_COMMA_SEPARATOR} <!-- ENDIF -->{custom_fields.PROFILE_FIELD_NAME}<!-- END custom_fields --></th>
|
||||
<th class="joined"><a href="{U_SORT_JOINED}#memberlist">{L_JOINED}</a></th>
|
||||
<!-- IF U_SORT_ACTIVE --><th class="active"><a href="{U_SORT_ACTIVE}#memberlist">{L_LAST_ACTIVE}</a></th><!-- ENDIF -->
|
||||
{% EVENT memberlist_body_memberlist_after %}
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- ENDIF -->
|
||||
<!-- BEGIN memberrow -->
|
||||
<!-- IF S_SHOW_GROUP -->
|
||||
<!-- IF not memberrow.S_GROUP_LEADER and not $S_MEMBER_HEADER -->
|
||||
<!-- IF S_LEADERS_SET and memberrow.S_FIRST_ROW -->
|
||||
<tr class="bg1">
|
||||
<td colspan="<!-- IF U_SORT_ACTIVE -->5<!-- ELSE -->4<!-- ENDIF -->"> </td>
|
||||
</tr>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_LEADERS_SET -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
<div class="forumbg forumbg-table">
|
||||
<div class="inner">
|
||||
|
||||
<table class="table1">
|
||||
<thead>
|
||||
<tr>
|
||||
<!-- IF not S_LEADERS_SET -->
|
||||
<th class="name" data-dfn="{L_RANK}{L_COMMA_SEPARATOR}{L_USERNAME}"><span class="rank-img"><a href="{U_SORT_RANK}">{L_RANK}</a></span><a href="{U_SORT_USERNAME}"><!-- IF S_SHOW_GROUP -->{L_GROUP_MEMBERS}<!-- ELSE -->{L_USERNAME}<!-- ENDIF --></a></th>
|
||||
<th class="posts"><a href="{U_SORT_POSTS}#memberlist">{L_POSTS}</a></th>
|
||||
<th class="info">{% for field in custom_fields %}{% if not loop.first %}{L_COMMA_SEPARATOR} {% endif %}{{ field.PROFILE_FIELD_NAME }}{% endfor %}</th>
|
||||
<th class="joined"><a href="{U_SORT_JOINED}#memberlist">{L_JOINED}</a></th>
|
||||
<!-- IF U_SORT_ACTIVE --><th class="active"><a href="{U_SORT_ACTIVE}#memberlist">{L_LAST_ACTIVE}</a></th><!-- ENDIF -->
|
||||
{% EVENT memberlist_body_leaders_set_after %}
|
||||
<!-- ELSEIF S_SHOW_GROUP -->
|
||||
<th class="name">{L_GROUP_MEMBERS}</th>
|
||||
<th class="posts">{L_POSTS}</th>
|
||||
<th class="info"><!-- BEGIN custom_fields --><!-- IF not custom_fields.S_FIRST_ROW -->{L_COMMA_SEPARATOR} <!-- ENDIF -->{custom_fields.PROFILE_FIELD_NAME}<!-- END custom_fields --></th>
|
||||
<th class="joined">{L_JOINED}</th>
|
||||
<!-- IF U_SORT_ACTIVE --><th class="active">{L_LAST_ACTIVE}</th><!-- ENDIF -->
|
||||
{% EVENT memberlist_body_show_group_after %}
|
||||
<!-- ENDIF -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- DEFINE $S_MEMBER_HEADER = 1 -->
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<tr class="<!-- IF memberrow.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF --><!-- IF memberrow.S_INACTIVE --> inactive<!-- ENDIF -->">
|
||||
<td><span class="rank-img"><!-- EVENT memberlist_body_rank_prepend --><!-- IF memberrow.RANK_IMG -->{memberrow.RANK_IMG}<!-- ELSE -->{memberrow.RANK_TITLE}<!-- ENDIF --><!-- EVENT memberlist_body_rank_append --></span><!-- IF S_IN_SEARCH_POPUP and not S_SELECT_SINGLE --><input type="checkbox" name="user" value="{memberrow.USERNAME}" /> <!-- ENDIF --><!-- EVENT memberlist_body_username_prepend -->{memberrow.USERNAME_FULL}<!-- IF memberrow.S_INACTIVE --> ({L_INACTIVE})<!-- ENDIF --><!-- EVENT memberlist_body_username_append --><!-- IF S_IN_SEARCH_POPUP --><br />[ <a href="#" onclick="insert_single_user('#results', '{memberrow.A_USERNAME}'); return false;">{L_SELECT}</a> ]<!-- ENDIF --></td>
|
||||
<td class="posts"><!-- IF memberrow.POSTS and S_DISPLAY_SEARCH --><a href="{memberrow.U_SEARCH_USER}" title="{L_SEARCH_USER_POSTS}">{memberrow.POSTS}</a><!-- ELSE -->{memberrow.POSTS}<!-- ENDIF --></td>
|
||||
<td class="info">
|
||||
{%- for field in memberrow.custom_fields -%}
|
||||
<div>{% if field.S_PROFILE_CONTACT %}<a href="{{ field.PROFILE_FIELD_CONTACT }}">{% endif %}{{ field.PROFILE_FIELD_VALUE }}{% if field.S_PROFILE_CONTACT %}</a>{% endif %}</div>
|
||||
{%- else -%}
|
||||
|
||||
{%- endfor -%}
|
||||
</td>
|
||||
<td>{memberrow.JOINED}</td>
|
||||
<!-- IF S_VIEWONLINE --><td>{memberrow.LAST_ACTIVE} </td><!-- ENDIF -->
|
||||
{% EVENT memberlist_body_memberrow_after %}
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr class="bg1">
|
||||
<td colspan="<!-- IF S_VIEWONLINE -->5<!-- ELSE -->4<!-- ENDIF -->">{L_NO_MEMBERS}</td>
|
||||
</tr>
|
||||
<!-- END memberrow -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_IN_SEARCH_POPUP and not S_SELECT_SINGLE -->
|
||||
<fieldset class="display-actions">
|
||||
<input type="submit" name="submit" value="{L_SELECT_MARKED}" class="button1 button button-form-bold" />
|
||||
<div><a href="#" onclick="marklist('results', 'user', true); return false;">{L_MARK_ALL}</a> • <a href="#" onclick="marklist('results', 'user', false); return false;">{L_UNMARK_ALL}</a></div>
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_IN_SEARCH_POPUP -->
|
||||
</form>
|
||||
<form method="post" id="sort-results" action="{S_MODE_ACTION}">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_IN_SEARCH_POPUP and not S_SEARCH_USER -->
|
||||
<fieldset class="display-options">
|
||||
<label for="sk">{L_SELECT_SORT_METHOD}{L_COLON} <select name="sk" id="sk">{S_MODE_SELECT}</select></label>
|
||||
<label for="sd">{L_ORDER} <select name="sd" id="sd">{S_ORDER_SELECT}</select></label>
|
||||
<input type="submit" name="sort" value="{L_SUBMIT}" class="button1 button button-form-bold" />
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</form>
|
||||
|
||||
<div class="action-bar bar-bottom">
|
||||
<div class="pagination">
|
||||
{TOTAL_USERS}
|
||||
<!-- IF .pagination -->
|
||||
<!-- INCLUDE pagination.html -->
|
||||
<!-- ELSE -->
|
||||
• {PAGE_NUMBER}
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% EVENT memberlist_body_page_footer_before %}
|
||||
|
||||
<!-- IF S_IN_SEARCH_POPUP -->
|
||||
<!-- INCLUDE simple_footer.html -->
|
||||
<!-- ELSE -->
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
<!-- ENDIF -->
|
113
phpBB/styles/prosilver2/template/memberlist_email.html
Normal file
|
@ -0,0 +1,113 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<!-- EVENT memberlist_email_before -->
|
||||
|
||||
<!-- IF S_CONTACT_ADMIN-->
|
||||
<h2 class="titlespace">{L_CONTACT_ADMIN}</h2>
|
||||
<!-- ELSEIF S_SEND_USER -->
|
||||
<h2 class="titlespace">{L_SEND_EMAIL_USER}</h2>
|
||||
<!-- ELSE -->
|
||||
<h2 class="titlespace">{L_EMAIL_TOPIC}</h2>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<form method="post" action="{S_POST_ACTION}" id="post">
|
||||
|
||||
<!-- IF CONTACT_INFO -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<div class="postbody">
|
||||
<div class="content">
|
||||
{CONTACT_INFO}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br class="clear" />
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<div class="content">
|
||||
|
||||
<!-- IF ERROR_MESSAGE --><p class="error">{ERROR_MESSAGE}</p><!-- ENDIF -->
|
||||
<fieldset class="fields2">
|
||||
<!-- IF S_SEND_USER -->
|
||||
<dl>
|
||||
<dt><label>{L_RECIPIENT}{L_COLON}</label></dt>
|
||||
<dd><strong>{USERNAME_FULL}</strong></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="subject">{L_SUBJECT}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="text" name="subject" id="subject" size="50" tabindex="1" value="{SUBJECT}" /></dd>
|
||||
</dl>
|
||||
<!-- ELSEIF S_CONTACT_ADMIN-->
|
||||
<dl>
|
||||
<dt><label>{L_RECIPIENT}{L_COLON}</label></dt>
|
||||
<dd><strong>{L_ADMINISTRATOR}</strong></dd>
|
||||
</dl>
|
||||
<!-- IF not S_IS_REGISTERED -->
|
||||
<dl>
|
||||
<dt><label for="email">{L_SENDER_EMAIL_ADDRESS}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="text" name="email" id="email" size="50" maxlength="100" tabindex="1" value="{EMAIL}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="name">{L_SENDER_NAME}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="text" name="name" id="name" size="50" tabindex="2" value="{NAME}" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="subject">{L_SUBJECT}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="text" name="subject" id="subject" size="50" tabindex="3" value="{SUBJECT}" /></dd>
|
||||
</dl>
|
||||
<!-- ELSE -->
|
||||
<dl>
|
||||
<dt><label for="email">{L_EMAIL_ADDRESS}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="email" name="email" id="email" size="50" maxlength="100" tabindex="2" value="{EMAIL}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="name">{L_REAL_NAME}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox autowidth" type="text" name="name" id="name" size="50" tabindex="3" value="{NAME}" /></dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="lang">{L_DEST_LANG}{L_COLON}</label><br />
|
||||
<span>{L_DEST_LANG_EXPLAIN}</span></dt>
|
||||
<dd>
|
||||
<select name="lang" id="lang">
|
||||
{% for option in lang_options %}
|
||||
<option value="{{ option.LANG_ISO }}"{% if option.SELECTED %} selected="selected"{% endif %}>{{ option.LANG_LOCAL_NAME }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="message">{L_MESSAGE_BODY}{L_COLON}</label><br />
|
||||
<span>{L_EMAIL_BODY_EXPLAIN}</span></dt>
|
||||
<dd><textarea class="inputbox" name="message" id="message" rows="15" cols="76" tabindex="4">{MESSAGE}</textarea></dd>
|
||||
</dl>
|
||||
<!-- IF S_REGISTERED_USER -->
|
||||
<dl>
|
||||
<dt> </dt>
|
||||
<dd><label for="cc_sender"><input type="checkbox" name="cc_sender" id="cc_sender" value="1" checked="checked" tabindex="5" /> {L_CC_SENDER}</label></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
<div class="content">
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" tabindex="6" name="submit" class="button1 button button-form" value="{L_SEND_EMAIL}" />
|
||||
</fieldset>
|
||||
</div>
|
||||
</div>
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
46
phpBB/styles/prosilver2/template/memberlist_im.html
Normal file
|
@ -0,0 +1,46 @@
|
|||
<!-- INCLUDE simple_header.html -->
|
||||
|
||||
<h2>{L_SEND_IM}</h2>
|
||||
|
||||
<form method="post" action="{S_IM_ACTION}">
|
||||
|
||||
<div class="panel bg2">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_SEND_IM_EXPLAIN}</p>
|
||||
|
||||
<!-- IF S_SENT_JABBER -->
|
||||
<p>{L_IM_SENT_JABBER}</p>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<fieldset>
|
||||
<dl class="fields2">
|
||||
<dt><label>{L_IM_RECIPIENT}{L_COLON}</label></dt>
|
||||
<dd><strong>{USERNAME}</strong><!-- IF S_NO_SEND_JABBER --> [ {IM_CONTACT} ]<!-- ENDIF --><!-- IF PRESENCE_IMG --> {PRESENCE_IMG}<!-- ENDIF --></dd>
|
||||
</dl>
|
||||
|
||||
<!-- IF S_SEND_JABBER -->
|
||||
<dl class="fields2">
|
||||
<dt><label for="message">{L_IM_MESSAGE}{L_COLON}</label></dt>
|
||||
<dd><textarea class="inputbox autowidth" name="message" id="message" rows="5" cols="45"></textarea></dd>
|
||||
</dl>
|
||||
<dl class="fields2">
|
||||
<dt> </dt>
|
||||
<dd><input class="button1 button button-form" name="submit" type="submit" value="{L_IM_SEND}" /></dd>
|
||||
</dl>
|
||||
<!-- ELSE IF S_NO_SEND_JABBER -->
|
||||
<dl class="fields2">
|
||||
<dt> </dt>
|
||||
<dd>{L_IM_NO_JABBER}</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<a href="#" onclick="window.close(); return false;">{L_CLOSE_WINDOW}</a>
|
||||
|
||||
<!-- INCLUDE simple_footer.html -->
|
86
phpBB/styles/prosilver2/template/memberlist_search.html
Normal file
|
@ -0,0 +1,86 @@
|
|||
<h2 class="solo">{L_FIND_USERNAME}</h2>
|
||||
|
||||
<form method="post" action="{S_MODE_ACTION}" id="search_memberlist">
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_FIND_USERNAME_EXPLAIN}</p>
|
||||
|
||||
<!-- EVENT memberlist_search_fields_before -->
|
||||
<fieldset class="fields1 column1">
|
||||
<dl style="overflow: visible;">
|
||||
<dt><label for="username">{L_USERNAME}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
<!-- IF U_LIVE_SEARCH --><div class="dropdown-container dropdown-{S_CONTENT_FLOW_END}"><!-- ENDIF -->
|
||||
<input type="text" name="username" id="username" value="{USERNAME}" class="inputbox"<!-- IF U_LIVE_SEARCH --> autocomplete="off" data-filter="phpbb.search.filter" data-ajax="member_search" data-min-length="3" data-url="{U_LIVE_SEARCH}" data-results="#user-search"<!-- ENDIF --> />
|
||||
<!-- IF U_LIVE_SEARCH -->
|
||||
<div class="dropdown live-search hidden" id="user-search">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<ul class="dropdown-contents search-results">
|
||||
<li class="search-result-tpl"><span class="search-result"></span></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
</dd>
|
||||
</dl>
|
||||
<!-- IF S_EMAIL_SEARCH_ALLOWED -->
|
||||
<dl>
|
||||
<dt><label for="email">{L_EMAIL}{L_COLON}</label></dt>
|
||||
<dd><input type="text" name="email" id="email" value="{EMAIL}" class="inputbox" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_JABBER_ENABLED -->
|
||||
<dl>
|
||||
<dt><label for="jabber">{L_JABBER}{L_COLON}</label></dt>
|
||||
<dd><input type="text" name="jabber" id="jabber" value="{JABBER}" class="inputbox" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="search_group_id">{L_GROUP}{L_COLON}</label></dt>
|
||||
<dd><select name="search_group_id" id="search_group_id">{S_GROUP_SELECT}</select></dd>
|
||||
</dl>
|
||||
<!-- EVENT memberlist_search_sorting_options_before -->
|
||||
<dl>
|
||||
<dt><label for="sk" class="label3">{L_SORT_BY}{L_COLON}</label></dt>
|
||||
<dd><select name="sk" id="sk">{S_SORT_OPTIONS}</select> <select name="sd">{S_ORDER_SELECT}</select></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="fields1 column2">
|
||||
<dl>
|
||||
<dt><label for="joined">{L_JOINED}{L_COLON}</label></dt>
|
||||
<dd><select name="joined_select">{S_JOINED_TIME_OPTIONS}</select> <input class="inputbox medium" type="text" name="joined" id="joined" value="{JOINED}" /></dd>
|
||||
</dl>
|
||||
<!-- IF S_VIEWONLINE -->
|
||||
<dl>
|
||||
<dt><label for="active">{L_LAST_ACTIVE}{L_COLON}</label></dt>
|
||||
<dd><select name="active_select">{S_ACTIVE_TIME_OPTIONS}</select> <input class="inputbox medium" type="text" name="active" id="active" value="{ACTIVE}" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<dl>
|
||||
<dt><label for="count">{L_POSTS}{L_COLON}</label></dt>
|
||||
<dd><select name="count_select">{S_COUNT_OPTIONS}</select> <input class="inputbox medium" type="number" min="0" name="count" id="count" value="{COUNT}" /></dd>
|
||||
</dl>
|
||||
<!-- IF S_IP_SEARCH_ALLOWED -->
|
||||
<dl>
|
||||
<dt><label for="ip">{L_POST_IP}{L_COLON}</label></dt>
|
||||
<dd><input class="inputbox medium" type="text" name="ip" id="ip" value="{IP}" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT memberlist_search_fields_after -->
|
||||
</fieldset>
|
||||
|
||||
<div class="clear"></div>
|
||||
|
||||
<hr />
|
||||
|
||||
<fieldset class="submit-buttons">
|
||||
<input type="submit" name="submit" value="{L_SEARCH}" class="button1 button button-form" />
|
||||
{S_FORM_TOKEN}
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
47
phpBB/styles/prosilver2/template/memberlist_team.html
Normal file
|
@ -0,0 +1,47 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<h2 class="solo">{PAGE_TITLE}</h2>
|
||||
|
||||
<form method="post" action="{S_MODE_ACTION}">
|
||||
|
||||
<!-- BEGIN group -->
|
||||
<div class="forumbg forumbg-table">
|
||||
<div class="inner">
|
||||
|
||||
<table class="table1 team" id="team">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="name" data-dfn="{L_RANK}{L_COMMA_SEPARATOR}{L_USERNAME}"><span class="rank-img">{L_RANK} </span><!-- IF group.U_GROUP --><a href="{group.U_GROUP}">{group.GROUP_NAME}</a><!-- ELSE -->{group.GROUP_NAME}<!-- ENDIF --></th>
|
||||
<th class="info">{L_PRIMARY_GROUP}</th>
|
||||
<!-- IF S_DISPLAY_MODERATOR_FORUMS --><th class="info">{L_MODERATOR}</th><!-- ENDIF -->
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<!-- BEGIN user -->
|
||||
<tr class="<!-- IF group.user.S_ROW_COUNT is even -->bg1<!-- ELSE -->bg2<!-- ENDIF --><!-- IF group.user.S_INACTIVE --> inactive<!-- ENDIF -->">
|
||||
<td><!-- IF group.user.RANK_IMG --><span class="rank-img">{group.user.RANK_IMG}</span><!-- ELSE --><span class="rank-img">{group.user.RANK_TITLE}</span><!-- ENDIF --><!-- EVENT memberlist_team_username_prepend -->{group.user.USERNAME_FULL}<!-- IF group.user.S_INACTIVE --> ({L_INACTIVE})<!-- ENDIF --><!-- EVENT memberlist_team_username_append --></td>
|
||||
<td class="info"><!-- IF group.user.U_GROUP -->
|
||||
<a<!-- IF group.user.GROUP_COLOR --> style="font-weight: bold; color: #{group.user.GROUP_COLOR}"<!-- ENDIF --> href="{group.user.U_GROUP}">{group.user.GROUP_NAME}</a>
|
||||
<!-- ELSE -->
|
||||
{group.user.GROUP_NAME}
|
||||
<!-- ENDIF --></td>
|
||||
<!-- IF S_DISPLAY_MODERATOR_FORUMS -->
|
||||
<td class="info"><!-- IF group.user.FORUM_OPTIONS --><select style="width: 100%;">{group.user.FORUMS}</select><!-- ELSEIF group.user.FORUMS -->{group.user.FORUMS}<!-- ELSE -->-<!-- ENDIF --></td>
|
||||
<!-- ENDIF -->
|
||||
</tr>
|
||||
<!-- BEGINELSE -->
|
||||
<tr class="bg1">
|
||||
<td colspan="3"><strong>{L_NO_MEMBERS}</strong></td>
|
||||
</tr>
|
||||
<!-- END user -->
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- END group -->
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
<!-- INCLUDE overall_footer.html -->
|
143
phpBB/styles/prosilver2/template/memberlist_view.html
Normal file
|
@ -0,0 +1,143 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<h2 class="memberlist-title">{PAGE_TITLE}</h2>
|
||||
|
||||
<!-- EVENT memberlist_view_content_prepend -->
|
||||
|
||||
<form method="post" action="{S_PROFILE_ACTION}" id="viewprofile">
|
||||
<div class="panel bg1">
|
||||
<div class="inner">
|
||||
|
||||
<!-- IF AVATAR_HTML -->
|
||||
<dl class="left-box avatar-rank-container">
|
||||
<dt class="profile-avatar">{AVATAR_HTML}</dt>
|
||||
<!-- EVENT memberlist_view_rank_avatar_before -->
|
||||
<!-- IF RANK_TITLE --><dd class="profile-avatar">{RANK_TITLE}</dd><!-- ENDIF -->
|
||||
<!-- EVENT memberlist_view_rank_avatar_after -->
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<dl class="left-box details profile-details">
|
||||
<dt>
|
||||
{L_USERNAME}{L_COLON}
|
||||
</dt>
|
||||
<dd>
|
||||
<!-- EVENT memberlist_view_username_prepend --><!-- IF USER_COLOR --><span style="color: {USER_COLOR}; font-weight: bold;"><!-- ELSE --><span><!-- ENDIF -->{USERNAME}</span><!-- EVENT memberlist_view_username_append --> <!-- IF S_ONLINE --> {{ Icon('font', 'circle', lang('ONLINE'), true, 'fas c-online-icon') }}<!-- ENDIF -->
|
||||
<!-- IF U_EDIT_SELF --> [ <a href="{U_EDIT_SELF}">{L_EDIT_PROFILE}</a> ]<!-- ENDIF -->
|
||||
<!-- IF U_USER_ADMIN --> [ <a href="{U_USER_ADMIN}">{L_USER_ADMIN}</a> ]<!-- ENDIF -->
|
||||
<!-- IF U_USER_BAN --> [ <a href="{U_USER_BAN}">{L_USER_BAN}</a> ]<!-- ENDIF -->
|
||||
<!-- IF U_SWITCH_PERMISSIONS --> [ <a href="{U_SWITCH_PERMISSIONS}">{L_USE_PERMISSIONS}</a> ]<!-- ENDIF -->
|
||||
</dd>
|
||||
<!-- IF not AVATAR_HTML -->
|
||||
<!-- EVENT memberlist_view_rank_no_avatar_before -->
|
||||
<!-- IF RANK_TITLE --><dt>{L_RANK}{L_COLON}</dt> <dd>{RANK_TITLE}</dd><!-- ENDIF -->
|
||||
{% if RANK_IMG %}<dt>{% if RANK_TITLE %} {% else %}{{ lang('RANK') ~ lang('COLON') }}{% endif %}</dt><dd class="rank-img">{{ RANK_IMG }}</dd>{% endif %}
|
||||
<!-- EVENT memberlist_view_rank_no_avatar_after -->
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_USER_INACTIVE --><dt>{L_USER_IS_INACTIVE}{L_COLON}</dt> <dd>{USER_INACTIVE_REASON}</dd><!-- ENDIF -->
|
||||
<!-- IF AGE !== '' --><dt>{L_AGE}{L_COLON}</dt> <dd>{AGE}</dd><!-- ENDIF -->
|
||||
<!-- IF S_GROUP_OPTIONS --><dt>{L_USERGROUPS}{L_COLON}</dt> <dd><select name="g">{S_GROUP_OPTIONS}</select> <input type="submit" name="submit" value="{L_GO}" class="button1 button button-form-bold" /></dd><!-- ENDIF -->
|
||||
<!-- EVENT memberlist_view_non_contact_custom_fields_before -->
|
||||
<!-- BEGIN custom_fields -->
|
||||
<!-- IF not custom_fields.S_PROFILE_CONTACT -->
|
||||
<dt>{custom_fields.PROFILE_FIELD_NAME}{L_COLON}</dt> <dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
|
||||
<!-- ENDIF -->
|
||||
<!-- END custom_fields -->
|
||||
<!-- EVENT memberlist_view_non_contact_custom_fields_after -->
|
||||
<!-- EVENT memberlist_view_zebra_before -->
|
||||
<!-- IF S_USER_LOGGED_IN and S_ZEBRA -->
|
||||
<!-- IF U_REMOVE_FRIEND -->
|
||||
<dt> </dt> <dd class="zebra"><a href="{U_REMOVE_FRIEND}" data-ajax="zebra"><strong>{L_REMOVE_FRIEND}</strong></a></dd>
|
||||
<!-- ELSEIF U_REMOVE_FOE -->
|
||||
<dt> </dt> <dd class="zebra"><a href="{U_REMOVE_FOE}" data-ajax="zebra"><strong>{L_REMOVE_FOE}</strong></a></dd>
|
||||
<!-- ELSE -->
|
||||
<!-- IF U_ADD_FRIEND -->
|
||||
<dt> </dt> <dd class="zebra"><a href="{U_ADD_FRIEND}" data-ajax="zebra"><strong>{L_ADD_FRIEND}</strong></a></dd>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF U_ADD_FOE -->
|
||||
<dt> </dt> <dd class="zebra"><a href="{U_ADD_FOE}" data-ajax="zebra"><strong>{L_ADD_FOE}</strong></a></dd>
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT memberlist_view_zebra_after -->
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- EVENT memberlist_view_contact_before -->
|
||||
<div class="panel bg2">
|
||||
<div class="inner">
|
||||
|
||||
<div class="column1">
|
||||
<h3>{L_CONTACT_USER}</h3>
|
||||
|
||||
<dl class="details">
|
||||
<!-- IF U_EMAIL --><dt>{L_EMAIL_ADDRESS}{L_COLON}</dt> <dd><a href="{U_EMAIL}">{L_SEND_EMAIL_USER}</a></dd><!-- ENDIF -->
|
||||
<!-- IF U_PM --><dt>{L_PM}{L_COLON}</dt> <dd><a href="{U_PM}">{L_SEND_PRIVATE_MESSAGE}</a></dd><!-- ENDIF -->
|
||||
<!-- IF U_JABBER and S_JABBER_ENABLED --><dt>{L_JABBER}{L_COLON}</dt> <dd><a href="{U_JABBER}" onclick="popup(this.href, 750, 320); return false;">{L_SEND_JABBER_MESSAGE}</a></dd><!-- ELSEIF USER_JABBER --><dt>{L_JABBER}{L_COLON}</dt> <dd>{USER_JABBER}</dd><!-- ENDIF -->
|
||||
<!-- EVENT memberlist_view_contact_custom_fields_before -->
|
||||
<!-- BEGIN custom_fields -->
|
||||
<!-- IF custom_fields.S_PROFILE_CONTACT -->
|
||||
<dt>{custom_fields.PROFILE_FIELD_NAME}{L_COLON}</dt>
|
||||
<!-- IF custom_fields.PROFILE_FIELD_CONTACT -->
|
||||
<dd><a href="{custom_fields.PROFILE_FIELD_CONTACT}">{custom_fields.PROFILE_FIELD_DESC}</a></dd>
|
||||
<!-- ELSE -->
|
||||
<dd>{custom_fields.PROFILE_FIELD_VALUE}</dd>
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
<!-- END custom_fields -->
|
||||
<!-- EVENT memberlist_view_contact_custom_fields_after -->
|
||||
<!-- IF S_PROFILE_FIELD1 -->
|
||||
<!-- NOTE: Use a construct like this to include admin defined profile fields. Replace FIELD1 with the name of your field. -->
|
||||
<dt>{PROFILE_FIELD1_NAME}{L_COLON}</dt> <dd>{PROFILE_FIELD1_VALUE}</dd>
|
||||
<!-- ENDIF -->
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<div class="column2">
|
||||
<h3>{L_USER_FORUM}</h3>
|
||||
<dl class="details">
|
||||
<!-- EVENT memberlist_view_user_statistics_before -->
|
||||
<dt>{L_JOINED}{L_COLON}</dt> <dd>{JOINED}</dd>
|
||||
<dt>{L_LAST_ACTIVE}{L_COLON}</dt> <dd>{LAST_ACTIVE}</dd>
|
||||
<!-- IF S_WARNINGS -->
|
||||
<dt>{L_WARNINGS}{L_COLON} </dt>
|
||||
<dd><strong>{WARNINGS}</strong><!-- IF U_NOTES or U_WARN --> [ <!-- IF U_NOTES --><a href="{U_NOTES}">{L_VIEW_NOTES}</a><!-- ENDIF --> <!-- IF U_WARN --><!-- IF U_NOTES --> | <!-- ENDIF --><a href="{U_WARN}">{L_WARN_USER}</a><!-- ENDIF --> ]<!-- ENDIF --></dd>
|
||||
<!-- ENDIF -->
|
||||
<dt>{L_TOTAL_POSTS}{L_COLON}</dt>
|
||||
<dd>{POSTS} <!-- IF S_DISPLAY_SEARCH -->| <strong><a href="{U_SEARCH_USER}">{L_SEARCH_USER_POSTS}</a></strong><!-- ENDIF -->
|
||||
<!-- IF POSTS_PCT --><br />({POSTS_PCT} / {POSTS_DAY})<!-- ENDIF -->
|
||||
<!-- IF POSTS_IN_QUEUE and U_MCP_QUEUE --><br />(<a href="{U_MCP_QUEUE}">{L_POSTS_IN_QUEUE}</a>)<!-- ELSEIF POSTS_IN_QUEUE --><br />({L_POSTS_IN_QUEUE})<!-- ENDIF -->
|
||||
</dd>
|
||||
<!-- IF S_SHOW_ACTIVITY and POSTS -->
|
||||
<dt>{L_ACTIVE_IN_FORUM}{L_COLON}</dt> <dd><!-- IF ACTIVE_FORUM != '' --><strong><a href="{U_ACTIVE_FORUM}">{ACTIVE_FORUM}</a></strong><br />({ACTIVE_FORUM_POSTS} / {ACTIVE_FORUM_PCT})<!-- ELSE --> - <!-- ENDIF --></dd>
|
||||
<dt>{L_ACTIVE_IN_TOPIC}{L_COLON}</dt> <dd><!-- IF ACTIVE_TOPIC != '' --><strong><a href="{U_ACTIVE_TOPIC}">{ACTIVE_TOPIC}</a></strong><br />({ACTIVE_TOPIC_POSTS} / {ACTIVE_TOPIC_PCT})<!-- ELSE --> - <!-- ENDIF --></dd>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT memberlist_view_user_statistics_after -->
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- EVENT memberlist_view_contact_after -->
|
||||
|
||||
<!-- IF SIGNATURE -->
|
||||
<div class="panel bg1">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_SIGNATURE}</h3>
|
||||
|
||||
<div class="postbody"><div class="signature standalone">{SIGNATURE}</div></div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
</form>
|
||||
|
||||
<!-- EVENT memberlist_view_content_append -->
|
||||
|
||||
<!-- INCLUDE jumpbox.html -->
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|
6
phpBB/styles/prosilver2/template/mentions_templates.html
Normal file
|
@ -0,0 +1,6 @@
|
|||
<template data-id="mention-media-span"><span class="mention-media"></span></template>
|
||||
<template data-id="mention-media-avatar-img"><img class="avatar mention-media-avatar" src="" alt=""></template>
|
||||
<template data-id="mention-name-span"><span class="mention-name"></span></template>
|
||||
<template data-id="mention-default-avatar"><svg class="mention-media-avatar" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24"><path fill-rule="evenodd" d="M12,19.2C9.5,19.2 7.29,17.92 6,16C6.03,14 10,12.9 12,12.9C14,12.9 17.97,14 18,16C16.71,17.92 14.5,19.2 12,19.2M12,5A3,3 0 0,1 15,8A3,3 0 0,1 12,11A3,3 0 0,1 9,8A3,3 0 0,1 12,5M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"/></svg></template>
|
||||
<template data-id="mention-default-avatar-group"><svg class="mention-media-avatar" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 24 24"><path fill-rule="evenodd" d="M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z"/></svg></template>
|
||||
<template data-id="mention-rank-span"><span class="mention-rank"></span></template>
|
25
phpBB/styles/prosilver2/template/message_body.html
Normal file
|
@ -0,0 +1,25 @@
|
|||
<!-- IF S_SIMPLE_MESSAGE -->
|
||||
<!-- INCLUDE simple_header.html -->
|
||||
<!-- ELSE -->
|
||||
<!-- INCLUDE overall_header.html -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<div class="panel" id="message">
|
||||
<div class="inner">
|
||||
<h2 class="message-title">{MESSAGE_TITLE}</h2>
|
||||
<p>{MESSAGE_TEXT}</p>
|
||||
<!-- IF SCRIPT_NAME == "search" and not S_BOARD_DISABLED and not S_NO_SEARCH and L_RETURN_TO_SEARCH_ADV -->
|
||||
<p>
|
||||
<a href="{U_SEARCH}" class="arrow-{S_CONTENT_FLOW_BEGIN}" accesskey="r">
|
||||
{{ Icon('font', 'angle-' ~ S_CONTENT_FLOW_BEGIN, lang('GO_TO_SEARCH_ADV'), true, 'fas c-return-arrow-icon') }}
|
||||
</a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_SIMPLE_MESSAGE -->
|
||||
<!-- INCLUDE simple_footer.html -->
|
||||
<!-- ELSE -->
|
||||
<!-- INCLUDE overall_footer.html -->
|
||||
<!-- ENDIF -->
|
117
phpBB/styles/prosilver2/template/navbar_footer.html
Normal file
|
@ -0,0 +1,117 @@
|
|||
<div class="navbar" role="navigation">
|
||||
<div class="inner">
|
||||
|
||||
<ul id="nav-footer" class="nav-footer linklist" role="menubar">
|
||||
<li class="breadcrumbs">
|
||||
{% if U_SITE_HOME %}
|
||||
{% apply spaceless %}
|
||||
<span class="crumb">
|
||||
<a href="{{ U_SITE_HOME }}" data-navbar-reference="home">
|
||||
{{ Icon('font', 'home', lang('SITE_HOME'), false, 'fas o-icon-baseline') }}
|
||||
</a>
|
||||
</span>
|
||||
{% endapply %}
|
||||
{% endif %}
|
||||
|
||||
{% EVENT overall_footer_breadcrumb_prepend %}
|
||||
|
||||
{% apply spaceless %}
|
||||
<span class="crumb">
|
||||
<a href="{{ U_INDEX }}" data-navbar-reference="index">
|
||||
{% if U_SITE_HOME %}
|
||||
<span>{{ lang('INDEX') }}</span>
|
||||
{% else %}
|
||||
{{ Icon('font', 'home', lang('INDEX'), false, 'fas o-icon-baseline') }}
|
||||
{% endif %}
|
||||
</a>
|
||||
</span>
|
||||
{% endapply %}
|
||||
|
||||
{% EVENT overall_footer_breadcrumb_append %}
|
||||
</li>
|
||||
|
||||
{% block nav_footer_left_side %}
|
||||
{% if U_WATCH_FORUM_LINK and not S_IS_BOT %}
|
||||
<li class="in-menu">
|
||||
<a href="{{ U_WATCH_FORUM_LINK }}" title="{{ S_WATCH_FORUM_TITLE }}" data-ajax="toggle_link" data-toggle-text="{{ S_WATCH_FORUM_TOGGLE }}" data-toggle-url="{{ U_WATCH_FORUM_TOGGLE }}">
|
||||
{% if S_WATCHING_FORUM %}
|
||||
{{ Icon('font', 'bell-slash', '', true, 'far c-watch-icon is-active') }}
|
||||
{{ Icon('font', 'bell', '', true, 'far c-watch-icon') }}
|
||||
{% else %}
|
||||
{{ Icon('font', 'bell', '', true, 'far c-watch-icon is-active') }}
|
||||
{{ Icon('font', 'bell-slash', '', true, 'far c-watch-icon') }}
|
||||
{% endif %}
|
||||
<span>{{ S_WATCH_FORUM_TITLE }}</span>
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% endblock nav_footer_left_side %}
|
||||
|
||||
{# End of left side menu Start of right side menu #}
|
||||
|
||||
{% EVENT overall_footer_timezone_before %}
|
||||
<li class="rightside">
|
||||
{{ S_TIMEZONE }}
|
||||
</li>
|
||||
{% EVENT overall_footer_timezone_after %}
|
||||
|
||||
{% block nav_footer_right_side %}
|
||||
{% if not S_IS_BOT %}
|
||||
<li class="rightside in-menu">
|
||||
<a href="{{ U_DELETE_COOKIES }}" data-ajax="true" data-refresh="true" role="menuitem">
|
||||
{{ Icon('font', 'trash', lang('DELETE_COOKIES'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
|
||||
{% if S_DISPLAY_MEMBERLIST %}
|
||||
<li class="rightside in-menu">
|
||||
<a href="{{ U_MEMBERLIST }}" title="{{ lang('MEMBERLIST_EXPLAIN') }}" role="menuitem">
|
||||
{{ Icon('font', 'users', lang('MEMBERLIST'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% EVENT overall_footer_teamlink_before %}
|
||||
|
||||
{% if U_TEAM %}
|
||||
<li class="rightside in-menu">
|
||||
<a href="{{ U_TEAM }}" role="menuitem">
|
||||
{{ Icon('font', 'shield-halved', lang('THE_TEAM'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT overall_footer_teamlink_after %}
|
||||
|
||||
{% if U_CONTACT_US %}
|
||||
<li class="rightside in-menu">
|
||||
<a href="{{ U_CONTACT_US }}" role="menuitem">
|
||||
{{ Icon('font', 'envelope', lang('CONTACT_US'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% endblock nav_footer_right_side %}
|
||||
|
||||
{# right side responsive menu #}
|
||||
|
||||
<li class="rightside dropdown-container responsive-menu">
|
||||
<a class="dropdown-toggle" href="">
|
||||
{{ Icon('font', 'bars', '', true) }}
|
||||
</a>
|
||||
<div class="dropdown">
|
||||
<div class="pointer">
|
||||
<div class="pointer-inner"></div>
|
||||
</div>
|
||||
|
||||
<ul class="dropdown-contents">
|
||||
{{ block('nav_footer_left_side', _self) }}
|
||||
<li class="separator"></li>
|
||||
{{ block('nav_footer_right_side', _self) }}
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
263
phpBB/styles/prosilver2/template/navbar_header.html
Normal file
|
@ -0,0 +1,263 @@
|
|||
<div class="navbar" role="navigation">
|
||||
<div class="inner">
|
||||
|
||||
<ul id="nav-main" class="nav-main linklist" role="menubar">
|
||||
<li id="quick-links" class="quick-links dropdown-container responsive-menu{% if not S_DISPLAY_QUICK_LINKS and not S_DISPLAY_SEARCH %} hidden{% endif %}">
|
||||
<a href="#" class="dropdown-trigger">
|
||||
{{ Icon('font', 'bars', lang('QUICK_LINKS'), false) }}
|
||||
</a>
|
||||
<div class="dropdown">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<ul class="dropdown-contents" role="menu">
|
||||
{% EVENT navbar_header_quick_links_before %}
|
||||
|
||||
{% if S_DISPLAY_SEARCH %}
|
||||
<li class="separator"></li>
|
||||
{% if S_REGISTERED_USER %}
|
||||
<li>
|
||||
<a href="{{ U_SEARCH_SELF }}" role="menuitem">
|
||||
{{ Icon('font', 'file', lang('SEARCH_SELF'), false, 'far icon icon-gray') }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if S_USER_LOGGED_IN %}
|
||||
<li>
|
||||
<a href="{{ U_SEARCH_NEW }}" role="menuitem">
|
||||
{{ Icon('font', 'file', lang('SEARCH_NEW'), false, 'far icon icon-red') }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if S_LOAD_UNREADS %}
|
||||
<li>
|
||||
<a href="{{ U_SEARCH_UNREAD }}" role="menuitem">
|
||||
{{ Icon('font', 'file', lang('SEARCH_UNREAD'), false, 'far icon icon-red') }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
<li>
|
||||
<a href="{{ U_SEARCH_UNANSWERED }}" role="menuitem">
|
||||
{{ Icon('font', 'file', lang('SEARCH_UNANSWERED'), false, 'far icon icon-gray') }}
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="{{ U_SEARCH_ACTIVE_TOPICS }}" role="menuitem">
|
||||
{{ Icon('font', 'file-lines', lang('SEARCH_ACTIVE_TOPICS'), false, 'far icon icon-blue') }}
|
||||
</a>
|
||||
</li>
|
||||
<li class="separator"></li>
|
||||
<li>
|
||||
<a href="{{ U_SEARCH }}" role="menuitem">
|
||||
{{ Icon('font', 'search', lang('SEARCH'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% if not S_IS_BOT and (S_DISPLAY_MEMBERLIST or U_TEAM) %}
|
||||
<li class="separator"></li>
|
||||
{% if S_DISPLAY_MEMBERLIST %}
|
||||
<li>
|
||||
<a href="{{ U_MEMBERLIST }}" role="menuitem">
|
||||
{{ Icon('font', 'users', lang('MEMBERLIST'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if U_TEAM %}
|
||||
<li>
|
||||
<a href="{{ U_TEAM }}" role="menuitem">
|
||||
{{ Icon('font', 'shield-halved', lang('THE_TEAM'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% EVENT navbar_header_quick_links_after %}
|
||||
|
||||
<li class="separator in-menu"></li>
|
||||
{% block nav_main_left_side %}
|
||||
{% EVENT overall_header_navigation_prepend %}
|
||||
<li class="in-menu">
|
||||
<a href="{{ U_FAQ }}" rel="help" title="{{ lang('FAQ_EXPLAIN') }}" role="menuitem">
|
||||
{{ Icon('font', 'question-circle', lang('FAQ'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% EVENT overall_header_navigation_append %}
|
||||
{% endblock nav_main_left_side %}
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
{{ block('nav_main_left_side', _self) }}
|
||||
{% if U_ACP %}
|
||||
<li>
|
||||
<a href="{{ U_ACP }}" title="{{ lang('ACP') }}" role="menuitem">
|
||||
{{ Icon('font', 'gears', lang('ACP_SHORT'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
{% if U_MCP %}
|
||||
<li>
|
||||
<a href="{{ U_MCP }}" title="{{ lang('MCP') }}" role="menuitem">
|
||||
{{ Icon('font', 'gavel', lang('MCP_SHORT'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% if S_REGISTERED_USER %}
|
||||
|
||||
{% EVENT navbar_header_user_profile_prepend %}
|
||||
|
||||
<li id="username_logged_in" class="rightside {% if CURRENT_USER_AVATAR_HTML %} no-bulletin{% endif %}">
|
||||
|
||||
{% EVENT navbar_header_username_prepend %}
|
||||
|
||||
<div class="header-profile dropdown-container">
|
||||
<a href="{{ U_PROFILE }}" class="header-avatar dropdown-trigger">
|
||||
{% if CURRENT_USER_AVATAR_HTML %}{{ CURRENT_USER_AVATAR_HTML }} {% endif %}
|
||||
{{ CURRENT_USERNAME_SIMPLE }}
|
||||
{{ Icon('font', 'caret-down', '', true, '', {'style': 'color: #' ~ CURRENT_USER_GROUP_COLOR}) }}
|
||||
</a>
|
||||
<div class="dropdown">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<ul class="dropdown-contents" role="menu">
|
||||
{% if U_RESTORE_PERMISSIONS %}
|
||||
<li>
|
||||
<a href="{{ U_RESTORE_PERMISSIONS }}">
|
||||
{{ Icon('font', 'rotate', lang('RESTORE_PERMISSIONS'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT navbar_header_profile_list_before %}
|
||||
|
||||
<li>
|
||||
<a href="{{ U_PROFILE }}" title="{{ lang('PROFILE') }}" role="menuitem">
|
||||
{{ Icon('font', 'sliders', lang('PROFILE'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% if U_USER_PROFILE %}
|
||||
<li>
|
||||
<a href="{{ U_USER_PROFILE }}" title="{{ lang('READ_PROFILE') }}" role="menuitem">
|
||||
{{ Icon('font', 'user', lang('READ_PROFILE'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT navbar_header_profile_list_after %}
|
||||
|
||||
<li class="separator"></li>
|
||||
<li>
|
||||
<a href="{{ U_LOGIN_LOGOUT }}" title="{{ lang('LOGIN_LOGOUT') }}" accesskey="x" role="menuitem">
|
||||
{{ Icon('font', 'power-off', lang('LOGIN_LOGOUT'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% EVENT navbar_header_username_append %}
|
||||
|
||||
</li>
|
||||
{% if S_DISPLAY_PM %}
|
||||
<li class="rightside">
|
||||
<a href="{{ U_PRIVATEMSGS }}" role="menuitem">
|
||||
{{ Icon('font', 'inbox', lang('PRIVATE_MESSAGES'), false) }}<strong class="badge{% if not PRIVATE_MESSAGE_COUNT %} hidden{% endif %}"> {PRIVATE_MESSAGE_COUNT}</strong>
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% if S_NOTIFICATIONS_DISPLAY %}
|
||||
<li class="dropdown-container dropdown-{S_CONTENT_FLOW_END} rightside">
|
||||
<a href="{{ U_VIEW_ALL_NOTIFICATIONS }}" id="notification-button" class="dropdown-trigger">
|
||||
{{ Icon('font', 'bell', lang('NOTIFICATIONS'), false) }}<strong class="badge{% if not NOTIFICATIONS_COUNT %} hidden{% endif %}">{NOTIFICATIONS_COUNT}</strong>
|
||||
</a>
|
||||
|
||||
{% include 'notification_dropdown.html' %}
|
||||
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT navbar_header_user_profile_append %}
|
||||
|
||||
{% elseif not S_IS_BOT %}
|
||||
<li class="rightside" >
|
||||
<a href="{{ U_LOGIN_LOGOUT }}" title="{{ lang('LOGIN_LOGOUT') }}" accesskey="x" role="menuitem">
|
||||
{{ Icon('font', 'power-off', lang('LOGIN_LOGOUT'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% if S_REGISTER_ENABLED and not (S_SHOW_COPPA or S_REGISTRATION) %}
|
||||
<li class="rightside">
|
||||
<a href="{{ U_REGISTER }}" role="menuitem">
|
||||
{{ Icon('font', 'pen-to-square', lang('REGISTER'), false) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT navbar_header_logged_out_content %}
|
||||
|
||||
{% endif %}
|
||||
</ul>
|
||||
|
||||
<ul id="nav-breadcrumbs" class="nav-breadcrumbs linklist navlinks" role="menubar">
|
||||
{% set MICRODATA = 'itemtype="https://schema.org/ListItem" itemprop="itemListElement" itemscope' %}
|
||||
{% set navlink_position = 1 %}
|
||||
|
||||
{% EVENT overall_header_breadcrumbs_before %}
|
||||
|
||||
<li class="breadcrumbs" itemscope itemtype="https://schema.org/BreadcrumbList">
|
||||
{% if U_SITE_HOME %}
|
||||
<span class="crumb" {{ MICRODATA }}>
|
||||
{% apply spaceless %}
|
||||
<a itemprop="item" href="{{ U_SITE_HOME }}" data-navbar-reference="home">
|
||||
{{ Icon('font', 'home', '', true, 'fas o-icon-baseline') }}
|
||||
<span itemprop="name">{{ L_SITE_HOME }}</span>
|
||||
</a>
|
||||
{% endapply %}
|
||||
<meta itemprop="position" content="{{ navlink_position }}{% set navlink_position = navlink_position + 1 %}">
|
||||
</span>
|
||||
{% endif %}
|
||||
|
||||
{% EVENT overall_header_breadcrumb_prepend %}
|
||||
|
||||
<span class="crumb" {{ MICRODATA }}>
|
||||
{% apply spaceless %}
|
||||
<a itemprop="item" href="{{ U_INDEX }}" accesskey="h" data-navbar-reference="index">
|
||||
{% if not U_SITE_HOME %}{{ Icon('font', 'home', '', true, 'fas o-icon-baseline') }}{% endif %}
|
||||
<span itemprop="name">{{ L_INDEX }}</span>
|
||||
</a>
|
||||
{% endapply %}
|
||||
<meta itemprop="position" content="{{ navlink_position }}{% set navlink_position = navlink_position + 1 %}">
|
||||
</span>
|
||||
|
||||
{% for navlink in navlinks %}
|
||||
{% set NAVLINK_NAME = navlink.BREADCRUMB_NAME | default(navlink.FORUM_NAME) %}
|
||||
{% set NAVLINK_LINK = navlink.U_BREADCRUMB | default(navlink.U_VIEW_FORUM) %}
|
||||
|
||||
{% EVENT overall_header_navlink_prepend %}
|
||||
<span class="crumb" {{ MICRODATA }}{% if navlink.MICRODATA %} {{ navlink.MICRODATA }}{% endif %}>
|
||||
{% apply spaceless %}
|
||||
<a itemprop="item" href="{{ NAVLINK_LINK }}">
|
||||
<span itemprop="name">{{ NAVLINK_NAME }}</span>
|
||||
</a>
|
||||
{% endapply %}
|
||||
<meta itemprop="position" content="{{ navlink_position }}{% set navlink_position = navlink_position + 1 %}">
|
||||
</span>
|
||||
{% EVENT overall_header_navlink_append %}
|
||||
{% endfor %}
|
||||
|
||||
{% EVENT overall_header_breadcrumb_append %}
|
||||
|
||||
</li>
|
||||
|
||||
{% EVENT overall_header_breadcrumbs_after %}
|
||||
|
||||
{% if S_DISPLAY_SEARCH and not S_IN_SEARCH %}
|
||||
<li class="rightside responsive-search">
|
||||
<a href="{{ U_SEARCH }}" title="{{ lang('SEARCH_ADV_EXPLAIN') }}" role="menuitem">
|
||||
{{ Icon('font', 'search', lang('SEARCH'), true) }}
|
||||
</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</div>
|
56
phpBB/styles/prosilver2/template/notification_dropdown.html
Normal file
|
@ -0,0 +1,56 @@
|
|||
<div id="notification-menu" class="dropdown dropdown-extended notification-menu">
|
||||
<div class="pointer dropdown-extended-pointer"><div class="pointer-inner"></div></div>
|
||||
<div class="dropdown-contents">
|
||||
<div class="header">
|
||||
{L_NOTIFICATIONS}
|
||||
<span class="header-settings">
|
||||
<a href="{U_NOTIFICATION_SETTINGS}">{L_SETTINGS}</a>
|
||||
<!-- IF NOTIFICATIONS_COUNT -->
|
||||
<span id="mark_all_notifications"> • <a href="{U_MARK_ALL_NOTIFICATIONS}" data-ajax="notification.mark_all_read">{L_MARK_ALL_READ}</a></span>
|
||||
<!-- ENDIF -->
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<ul class="dropdown-extended-list notification-list">
|
||||
<!-- IF not .notifications -->
|
||||
<li class="dropdown-extended-item no-notifications">
|
||||
{L_NO_NOTIFICATIONS}
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
<!-- BEGIN notifications -->
|
||||
<li class="dropdown-extended-item notification-item<!-- IF notifications.UNREAD --> bg2<!-- ENDIF --><!-- IF notifications.STYLING --> {notifications.STYLING}<!-- ENDIF --><!-- IF not notifications.URL --> no-url<!-- ENDIF -->" <!-- IF notifications.UNREAD -->data-notification-unread="true"<!-- ENDIF -->>
|
||||
<!-- IF notifications.URL -->
|
||||
<a class="notification-block" href="<!-- IF notifications.UNREAD -->{notifications.U_MARK_READ}" data-real-url="{notifications.URL}<!-- ELSE -->{notifications.URL}<!-- ENDIF -->">
|
||||
<!-- ENDIF -->
|
||||
<!-- IF notifications.AVATAR_HTML -->{notifications.AVATAR_HTML}<!-- ELSE --><img class="avatar notification-avatar" src="{{ NO_AVATAR_SOURCE }}" alt="" /><!-- ENDIF -->
|
||||
<div class="notification-text">
|
||||
<p class="notification-title">{notifications.FORMATTED_TITLE}</p>
|
||||
<!-- IF notifications.REFERENCE --><p class="notification-reference">{notifications.REFERENCE}</p><!-- ENDIF -->
|
||||
<!-- IF notifications.FORUM --><p class="notification-forum">{notifications.FORUM}</p><!-- ENDIF -->
|
||||
<!-- IF notifications.REASON --><p class="notification-reason">{notifications.REASON}</p><!-- ENDIF -->
|
||||
<p class="notification-time">{notifications.TIME}</p>
|
||||
</div>
|
||||
<!-- IF notifications.URL --></a><!-- ENDIF -->
|
||||
<!-- IF notifications.UNREAD -->
|
||||
<a href="{notifications.U_MARK_READ}" class="mark_read icon-mark" data-ajax="notification.mark_read" title="{L_MARK_READ}">
|
||||
{{ Icon('font', 'circle-check', lang('MARK_READ'), true, 'fas c-notification-check-icon') }}
|
||||
</a>
|
||||
<!-- ENDIF -->
|
||||
</li>
|
||||
<!-- END notifications -->
|
||||
</ul>
|
||||
|
||||
{% EVENT notification_dropdown_footer_before %}
|
||||
<div class="footer">
|
||||
<a href="{U_VIEW_ALL_NOTIFICATIONS}"><span>{L_SEE_ALL}</span></a>
|
||||
</div>
|
||||
{% if NOTIFICATIONS_WEBPUSH_ENABLE and notification_types is not defined %}
|
||||
<div class="footer webpush-subscribe">
|
||||
<span class="ellipsis-text">{{ lang('NOTIFY_WEB_PUSH_ENABLE') ~ lang('COLON') }}</span>
|
||||
<button id="subscribe_webpush" name="subscribe_webpush" class="notification-subscribe-toggle" data-l-err="{{ lang('INFORMATION') }}" data-l-msg="{{ lang('NOTIFY_WEB_PUSH_DENIED') }}">{{ Icon('svg', 'toggle-off', lang('NOTIFY_WEB_PUSH_SUBSCRIBE'), true, 'push-subscribe-toggle-icon toggle-off') }}</button>
|
||||
<button id="unsubscribe_webpush" name="unsubscribe_webpush" class="notification-subscribe-toggle hidden">{{ Icon('svg', 'toggle-on', lang('NOTIFY_WEB_PUSH_SUBSCRIBED'), true, 'push-subscribe-toggle-icon toggle-on') }}</button>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% EVENT notification_dropdown_footer_after %}
|
||||
</div>
|
||||
</div>
|
128
phpBB/styles/prosilver2/template/overall_footer.html
Normal file
|
@ -0,0 +1,128 @@
|
|||
<!-- EVENT overall_footer_content_after -->
|
||||
</div>
|
||||
|
||||
<!-- EVENT overall_footer_page_body_after -->
|
||||
|
||||
<div id="page-footer" class="page-footer" role="contentinfo">
|
||||
<!-- INCLUDE navbar_footer.html -->
|
||||
|
||||
<div class="copyright">
|
||||
<!-- EVENT overall_footer_copyright_prepend -->
|
||||
<p class="footer-row">
|
||||
<span class="footer-copyright">{{ CREDIT_LINE }}</span>
|
||||
</p>
|
||||
<!-- IF TRANSLATION_INFO -->
|
||||
<p class="footer-row">
|
||||
<span class="footer-copyright">{{ TRANSLATION_INFO }}</span>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT overall_footer_copyright_append -->
|
||||
<p class="footer-row" role="menu">
|
||||
<a class="footer-link" href="{{ U_PRIVACY }}" title="{{ lang('PRIVACY_LINK') }}" role="menuitem">
|
||||
<span class="footer-link-text">{{ lang('PRIVACY_LINK') }}</span>
|
||||
</a>
|
||||
|
|
||||
<a class="footer-link" href="{{ U_TERMS_USE }}" title="{{ lang('TERMS_LINK') }}" role="menuitem">
|
||||
<span class="footer-link-text">{{ lang('TERMS_LINK') }}</span>
|
||||
</a>
|
||||
</p>
|
||||
<!-- IF DEBUG_OUTPUT -->
|
||||
<p class="footer-row">
|
||||
<span class="footer-info">{{ DEBUG_OUTPUT }}</span>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF U_ACP -->
|
||||
<p class="footer-row">
|
||||
<a class="footer-link text-strong" href="{{ U_ACP }}">{{ lang('ACP') }}</a>
|
||||
</p>
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<div id="darkenwrapper" class="darkenwrapper" data-ajax-error-title="{L_AJAX_ERROR_TITLE}" data-ajax-error-text="{L_AJAX_ERROR_TEXT}" data-ajax-error-text-abort="{L_AJAX_ERROR_TEXT_ABORT}" data-ajax-error-text-timeout="{L_AJAX_ERROR_TEXT_TIMEOUT}" data-ajax-error-text-parsererror="{L_AJAX_ERROR_TEXT_PARSERERROR}">
|
||||
<div id="darken" class="darken"> </div>
|
||||
</div>
|
||||
<div id="loading_indicator" class="loading_indicator">
|
||||
<div class="loader">
|
||||
<svg class="spinner" width="48px" height="48px" viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg" aria-labelledby="loader-title" role="img">
|
||||
<title id="loader-title">{L_LOADING}</title>
|
||||
<circle class="spinner-path" fill="none" stroke-width="6" stroke-linecap="round" cx="33" cy="33" r="30"></circle>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="phpbb_alert" class="phpbb_alert" data-l-err="{L_ERROR}" data-l-timeout-processing-req="{L_TIMEOUT_PROCESSING_REQ}">
|
||||
<a href="#" class="alert_close">
|
||||
{{ Icon('font', 'circle-xmark', '', true) }}
|
||||
</a>
|
||||
<h3 class="alert_title"> </h3><p class="alert_text"></p>
|
||||
</div>
|
||||
<div id="phpbb_confirm" class="phpbb_alert">
|
||||
<a href="#" class="alert_close">
|
||||
{{ Icon('font', 'circle-xmark', '', true) }}
|
||||
</a>
|
||||
<div class="alert_text"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<a id="bottom" class="anchor" accesskey="z"></a>
|
||||
{% if not S_IS_BOT %}{{ RUN_CRON_TASK }}{% endif %}
|
||||
</div>
|
||||
|
||||
<script src="{T_JQUERY_LINK}"></script>
|
||||
<!-- IF S_ALLOW_CDN --><script>window.jQuery || document.write('\x3Cscript src="{T_ASSETS_PATH}/javascript/jquery-3.7.1.min.js?assets_version={T_ASSETS_VERSION}">\x3C/script>');</script><!-- ENDIF -->
|
||||
<script src="{T_ASSETS_PATH}/javascript/core.js?assets_version={T_ASSETS_VERSION}"></script>
|
||||
<!-- INCLUDEJS forum_fn.js -->
|
||||
<!-- INCLUDEJS ajax.js -->
|
||||
{% if S_ALLOW_CDN %}
|
||||
<script>
|
||||
(function($){
|
||||
const $fa_cdn = $('head').find('link[rel="stylesheet"]').first(),
|
||||
$span = $('<span class="fa" style="display:none"></span>').appendTo('body');
|
||||
if ($span.css('fontFamily') !== '"Font Awesome 6 Free"') {
|
||||
$fa_cdn.after('<link href="{{ T_ASSETS_PATH ~ '/css/font-awesome.min.css' }}" rel="stylesheet">');
|
||||
$fa_cdn.remove();
|
||||
}
|
||||
$span.remove();
|
||||
})(jQuery);
|
||||
</script>
|
||||
{% endif %}
|
||||
|
||||
<!-- IF S_COOKIE_NOTICE -->
|
||||
<script src="{T_ASSETS_PATH}/cookieconsent/cookieconsent.min.js?assets_version={T_ASSETS_VERSION}"></script>
|
||||
<script>
|
||||
if (typeof window.cookieconsent === "object") {
|
||||
window.addEventListener("load", function(){
|
||||
window.cookieconsent.initialise({
|
||||
"palette": {
|
||||
"popup": {
|
||||
"background": "#0F538A"
|
||||
},
|
||||
"button": {
|
||||
"background": "#E5E5E5"
|
||||
}
|
||||
},
|
||||
"theme": "classic",
|
||||
"content": {
|
||||
"message": "{LA_COOKIE_CONSENT_MSG}",
|
||||
"dismiss": "{LA_COOKIE_CONSENT_OK}",
|
||||
"link": "{LA_COOKIE_CONSENT_INFO}",
|
||||
"href": "{UA_PRIVACY}"
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
</script>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT overall_footer_after -->
|
||||
|
||||
<!-- IF S_PLUPLOAD --><!-- INCLUDE plupload.html --><!-- ENDIF -->
|
||||
{$SCRIPTS}
|
||||
|
||||
<!-- EVENT overall_footer_body_after -->
|
||||
|
||||
</body>
|
||||
</html>
|
137
phpBB/styles/prosilver2/template/overall_header.html
Normal file
|
@ -0,0 +1,137 @@
|
|||
<!DOCTYPE html>
|
||||
<html dir="{S_CONTENT_DIRECTION}" lang="{S_USER_LANG}">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
||||
<meta name="apple-mobile-web-app-title" content="{{ SITENAME }}">
|
||||
{META}
|
||||
<title><!-- IF UNREAD_NOTIFICATIONS_COUNT -->({UNREAD_NOTIFICATIONS_COUNT}) <!-- ENDIF --><!-- IF not S_VIEWTOPIC and not S_VIEWFORUM -->{SITENAME} - <!-- ENDIF --><!-- IF S_IN_MCP -->{L_MCP} - <!-- ELSEIF S_IN_UCP -->{L_UCP} - <!-- ENDIF -->{PAGE_TITLE}<!-- IF S_VIEWTOPIC or S_VIEWFORUM --> - {SITENAME}<!-- ENDIF --></title>
|
||||
|
||||
<!-- IF S_ENABLE_FEEDS -->
|
||||
<!-- IF S_ENABLE_FEEDS_OVERALL --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {SITENAME}" href="{{ path('phpbb_feed_index') }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_NEWS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_NEWS}" href="{{ path('phpbb_feed_news') }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_FORUMS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_ALL_FORUMS}" href="{{ path('phpbb_feed_forums') }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_TOPICS --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_NEW}" href="{{ path('phpbb_feed_topics') }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_TOPICS_ACTIVE --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FEED_TOPICS_ACTIVE}" href="{{ path('phpbb_feed_topics_active') }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_FORUM and S_FORUM_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_FORUM} - {FORUM_NAME}" href="{{ path('phpbb_feed_forum', { forum_id : S_FORUM_ID } ) }}"><!-- ENDIF -->
|
||||
<!-- IF S_ENABLE_FEEDS_TOPIC and S_TOPIC_ID --><link rel="alternate" type="application/atom+xml" title="{L_FEED} - {L_TOPIC} - {TOPIC_TITLE}" href="{{ path('phpbb_feed_topic', { topic_id : S_TOPIC_ID } ) }}"><!-- ENDIF -->
|
||||
<!-- EVENT overall_header_feeds -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF U_CANONICAL -->
|
||||
<link rel="canonical" href="{U_CANONICAL}">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!--
|
||||
phpBB style name: prosilver2
|
||||
Based on style: prosilver
|
||||
Original author: phpBB Limited ( https://www.phpbb.com/ )
|
||||
Modified by: phpBB Limited ( https://www.phpbb.com/ )
|
||||
-->
|
||||
|
||||
<!-- IF S_ALLOW_CDN -->
|
||||
<script>
|
||||
WebFontConfig = {
|
||||
google: {
|
||||
families: ['Open+Sans:300,300i,400,400i,600,600i,700,700i,800,800i&subset=cyrillic,cyrillic-ext,greek,greek-ext,latin-ext,vietnamese']
|
||||
}
|
||||
};
|
||||
|
||||
(function(d) {
|
||||
var wf = d.createElement('script'), s = d.scripts[0];
|
||||
wf.src = 'https://cdn.jsdelivr.net/npm/webfontloader@1.6.28/webfontloader.min.js';
|
||||
wf.async = true;
|
||||
s.parentNode.insertBefore(wf, s);
|
||||
})(document);
|
||||
</script>
|
||||
<!-- ENDIF -->
|
||||
<link href="{T_FONT_AWESOME_LINK}" rel="stylesheet">
|
||||
<link href="{T_STYLESHEET_LINK}" rel="stylesheet">
|
||||
<link href="{T_STYLESHEET_LANG_LINK}" rel="stylesheet">
|
||||
|
||||
<!-- IF S_PLUPLOAD -->
|
||||
<link href="{T_THEME_PATH}/plupload.css?assets_version={T_ASSETS_VERSION}" rel="stylesheet">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_COOKIE_NOTICE -->
|
||||
<link href="{T_ASSETS_PATH}/cookieconsent/cookieconsent.min.css?assets_version={T_ASSETS_VERSION}" rel="stylesheet">
|
||||
<!-- ENDIF -->
|
||||
|
||||
<link rel="manifest" href="{{ U_MANIFEST }}">
|
||||
|
||||
<!-- EVENT overall_header_head_append -->
|
||||
|
||||
{$STYLESHEETS}
|
||||
|
||||
<!-- EVENT overall_header_stylesheets_after -->
|
||||
|
||||
{% if NOTIFICATIONS_WEBPUSH_ENABLE %}
|
||||
{% include('ucp_notifications_webpush.html') %}
|
||||
{% endif %}
|
||||
|
||||
</head>
|
||||
<body id="phpbb" class="nojs notouch section-{SCRIPT_NAME} {S_CONTENT_DIRECTION} {BODY_CLASS}">
|
||||
|
||||
<!-- EVENT overall_header_body_before -->
|
||||
|
||||
<div id="wrap" class="wrap">
|
||||
<a id="top" class="top-anchor" accesskey="t"></a>
|
||||
<div id="page-header">
|
||||
<div class="headerbar" role="banner">
|
||||
<!-- EVENT overall_header_headerbar_before -->
|
||||
<div class="inner">
|
||||
|
||||
<hgroup id="site-description" class="site-description c-hero">
|
||||
<a id="logo" class="c-hero-logo" href="{% if U_SITE_HOME %}{{ U_SITE_HOME }}{% else %}{{ U_INDEX }}{% endif %}" title="{% if U_SITE_HOME %}{{ L_SITE_HOME }}{% else %}{{ L_INDEX }}{% endif %}">
|
||||
{{ Icon('svg', 'logo', SITENAME, true, 'c-hero-logo-img') }}
|
||||
</a>
|
||||
|
||||
<h1 class="c-hero-heading">
|
||||
{{ SITENAME }}
|
||||
<p class="c-hero-lead">{{ SITE_DESCRIPTION }}</p>
|
||||
</h1>
|
||||
<p class="skiplink"><a href="#start_here">{L_SKIP}</a></p>
|
||||
</hgroup>
|
||||
|
||||
<!-- EVENT overall_header_searchbox_before -->
|
||||
<!-- IF S_DISPLAY_SEARCH and not S_IN_SEARCH -->
|
||||
<div id="search-box" class="search-box search-header" role="search">
|
||||
<form action="{U_SEARCH}" method="get" id="search">
|
||||
<fieldset>
|
||||
<input name="keywords" id="keywords" type="search" maxlength="128" title="{L_SEARCH_KEYWORDS}" class="inputbox search tiny" size="20" value="{SEARCH_WORDS}" placeholder="{L_SEARCH_MINI}" />
|
||||
<button class="button button-search" type="submit" title="{L_SEARCH}">
|
||||
{{ Icon('font', 'search', lang('SEARCH'), true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<a href="{U_SEARCH}" class="button button-search-end" title="{L_SEARCH_ADV}">
|
||||
{{ Icon('font', 'gear', lang('SEARCH_ADV'), true, 'fas c-button-icon') }}
|
||||
</a>
|
||||
{S_SEARCH_HIDDEN_FIELDS}
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT overall_header_searchbox_after -->
|
||||
|
||||
</div>
|
||||
<!-- EVENT overall_header_headerbar_after -->
|
||||
</div>
|
||||
<!-- EVENT overall_header_navbar_before -->
|
||||
<!-- INCLUDE navbar_header.html -->
|
||||
</div>
|
||||
|
||||
<!-- EVENT overall_header_page_body_before -->
|
||||
|
||||
<a id="start_here" class="anchor"></a>
|
||||
<div id="page-body" class="page-body" role="main">
|
||||
<!-- IF S_BOARD_DISABLED and S_USER_LOGGED_IN and (U_MCP or U_ACP) -->
|
||||
<div id="information" class="rules">
|
||||
<div class="inner">
|
||||
<strong>{L_INFORMATION}{L_COLON}</strong> {L_BOARD_DISABLED}
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT overall_header_content_before -->
|
30
phpBB/styles/prosilver2/template/pagination.html
Normal file
|
@ -0,0 +1,30 @@
|
|||
<ul>
|
||||
<!-- IF BASE_URL and TOTAL_PAGES > 6 -->
|
||||
<li class="dropdown-container dropdown-button-control dropdown-page-jump page-jump">
|
||||
<a class="button button-icon-only dropdown-trigger" href="#" title="{L_JUMP_TO_PAGE_CLICK}" role="button">{{ Icon('font', 'turn-down', PAGE_NUMBER, true, 'fas fa-rotate-270 c-button-icon c-pagination-icon') }}</a>
|
||||
<div class="dropdown">
|
||||
<div class="pointer"><div class="pointer-inner"></div></div>
|
||||
<ul class="dropdown-contents">
|
||||
<li>{L_JUMP_TO_PAGE}{L_COLON}</li>
|
||||
<li class="page-jump-form">
|
||||
<input type="number" name="page-number" min="1" max="999999" title="{L_JUMP_PAGE}" class="inputbox tiny" data-per-page="{PER_PAGE}" data-base-url="{BASE_URL|e('html_attr')}" data-start-name="{START_NAME}" />
|
||||
<input class="button1 button button-form-bold" value="{L_GO}" type="button" />
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
<!-- BEGIN pagination -->
|
||||
<!-- IF pagination.S_IS_PREV -->
|
||||
<li class="arrow previous"><a class="button button-icon-only" href="{pagination.PAGE_URL}" rel="prev" role="button">{{ Icon('font', 'chevron-' ~ S_CONTENT_FLOW_BEGIN, lang('PREVIOUS'), true, 'fas c-button-icon c-pagination-icon') }}</a></li>
|
||||
<!-- ELSEIF pagination.S_IS_CURRENT -->
|
||||
<li class="active"><span>{pagination.PAGE_NUMBER}</span></li>
|
||||
<!-- ELSEIF pagination.S_IS_ELLIPSIS -->
|
||||
<li class="ellipsis" role="separator"><span>{L_ELLIPSIS}</span></li>
|
||||
<!-- ELSEIF pagination.S_IS_NEXT -->
|
||||
<li class="arrow next"><a class="button button-icon-only" href="{pagination.PAGE_URL}" rel="next" role="button">{{ Icon('font', 'chevron-' ~ S_CONTENT_FLOW_END, lang('NEXT'), true, 'fas c-button-icon c-pagination-icon') }}</a></li>
|
||||
<!-- ELSE -->
|
||||
<li><a class="button" href="{pagination.PAGE_URL}" role="button">{pagination.PAGE_NUMBER}</a></li>
|
||||
<!-- ENDIF -->
|
||||
<!-- END pagination -->
|
||||
</ul>
|
75
phpBB/styles/prosilver2/template/plupload.html
Normal file
|
@ -0,0 +1,75 @@
|
|||
<script>
|
||||
phpbb.plupload = {
|
||||
i18n: {
|
||||
'b': '{LA_BYTES_SHORT}',
|
||||
'kb': '{LA_KB}',
|
||||
'mb': '{LA_MB}',
|
||||
'gb': '{LA_GB}',
|
||||
'tb': '{LA_TB}',
|
||||
'Add Files': '{LA_PLUPLOAD_ADD_FILES}',
|
||||
'Add files to the upload queue and click the start button.': '{LA_PLUPLOAD_ADD_FILES_TO_QUEUE}',
|
||||
'Close': '{LA_PLUPLOAD_CLOSE}',
|
||||
'Drag files here.': '{LA_PLUPLOAD_DRAG}',
|
||||
'Duplicate file error.': '{LA_PLUPLOAD_DUPLICATE_ERROR}',
|
||||
'File: %s': '{LA_PLUPLOAD_FILE}',
|
||||
'File: %s, size: %d, max file size: %d': '{LA_PLUPLOAD_FILE_DETAILS}',
|
||||
'File count error.': '{LA_PLUPLOAD_ERR_FILE_COUNT}',
|
||||
'File extension error.': '{LA_PLUPLOAD_EXTENSION_ERROR}',
|
||||
'File size error.': '{LA_PLUPLOAD_SIZE_ERROR}',
|
||||
'File too large:': '{LA_PLUPLOAD_ERR_FILE_TOO_LARGE}',
|
||||
'Filename': '{LA_PLUPLOAD_FILENAME}',
|
||||
'Generic error.': '{LA_PLUPLOAD_GENERIC_ERROR}',
|
||||
'HTTP Error.': '{LA_PLUPLOAD_HTTP_ERROR}',
|
||||
'Image format either wrong or not supported.': '{LA_PLUPLOAD_IMAGE_FORMAT}',
|
||||
'Init error.': '{LA_PLUPLOAD_INIT_ERROR}',
|
||||
'IO error.': '{LA_PLUPLOAD_IO_ERROR}',
|
||||
'Invalid file extension:': '{LA_PLUPLOAD_ERR_FILE_INVALID_EXT}',
|
||||
'N/A': '{LA_PLUPLOAD_NOT_APPLICABLE}',
|
||||
'Runtime ran out of available memory.': '{LA_PLUPLOAD_ERR_RUNTIME_MEMORY}',
|
||||
'Security error.': '{LA_PLUPLOAD_SECURITY_ERROR}',
|
||||
'Select files': '{LA_PLUPLOAD_SELECT_FILES}',
|
||||
'Size': '{LA_PLUPLOAD_SIZE}',
|
||||
'Start Upload': '{LA_PLUPLOAD_START_UPLOAD}',
|
||||
'Start uploading queue': '{LA_PLUPLOAD_START_CURRENT_UPLOAD}',
|
||||
'Status': '{LA_PLUPLOAD_STATUS}',
|
||||
'Stop Upload': '{LA_PLUPLOAD_STOP_UPLOAD}',
|
||||
'Stop current upload': '{LA_PLUPLOAD_STOP_CURRENT_UPLOAD}',
|
||||
"Upload URL might be wrong or doesn't exist.": '{LA_PLUPLOAD_ERR_UPLOAD_URL}',
|
||||
'Uploaded %d/%d files': '{LA_PLUPLOAD_UPLOADED}',
|
||||
'%d files queued': '{LA_PLUPLOAD_FILES_QUEUED}',
|
||||
'%s already present in the queue.': '{LA_PLUPLOAD_ALREADY_QUEUED}'
|
||||
},
|
||||
config: {
|
||||
runtimes: 'html5',
|
||||
url: '{S_PLUPLOAD_URL}',
|
||||
max_file_size: '{FILESIZE}b',
|
||||
chunk_size: '{CHUNK_SIZE}b',
|
||||
unique_names: true,
|
||||
filters: {
|
||||
mime_types: [
|
||||
{FILTERS}
|
||||
],
|
||||
mime_types_max_file_size: [
|
||||
{FILTERS}
|
||||
],
|
||||
},
|
||||
{S_RESIZE}
|
||||
headers: {'X-PHPBB-USING-PLUPLOAD': '1', 'X-Requested-With': 'XMLHttpRequest'},
|
||||
file_data_name: 'fileupload',
|
||||
multipart_params: {'add_file': '{LA_ADD_FILE}'},
|
||||
form_hook: '#postform',
|
||||
browse_button: 'add_files',
|
||||
drop_element : 'message',
|
||||
},
|
||||
lang: {
|
||||
ERROR: '{LA_ERROR}',
|
||||
TOO_MANY_ATTACHMENTS: '{LA_TOO_MANY_ATTACHMENTS}',
|
||||
FORM_INVALID: '{LA_FORM_INVALID}',
|
||||
},
|
||||
order: '{ATTACH_ORDER}',
|
||||
maxFiles: {MAX_ATTACHMENTS},
|
||||
data: {S_ATTACH_DATA},
|
||||
}
|
||||
</script>
|
||||
<!-- INCLUDEJS {T_ASSETS_PATH}/plupload/plupload.full.min.js -->
|
||||
<!-- INCLUDEJS {T_ASSETS_PATH}/javascript/plupload.js -->
|
94
phpBB/styles/prosilver2/template/posting_attach_body.html
Normal file
|
@ -0,0 +1,94 @@
|
|||
<div class="panel bg3 panel-container" id="attach-panel">
|
||||
<div class="inner">
|
||||
|
||||
<p>{L_ADD_ATTACHMENT_EXPLAIN} <span class="hidden" id="drag-n-drop-message">{L_PLUPLOAD_DRAG_TEXTAREA}</span></p>
|
||||
{% if MAX_ATTACHMENT_FILESIZE is not empty %}<p>{{ MAX_ATTACHMENT_FILESIZE }}</p>{% endif %}
|
||||
|
||||
<fieldset class="fields2" id="attach-panel-basic">
|
||||
<dl>
|
||||
<dt><label for="fileupload">{L_FILENAME}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
<input type="file" accept="{{ ALLOWED_ATTACHMENTS }}" name="fileupload" id="fileupload" class="inputbox autowidth" />
|
||||
<input type="submit" name="add_file" value="{L_ADD_FILE}" class="button1 button button-form-bold" onclick="upload = true;" />
|
||||
</dd>
|
||||
</dl>
|
||||
<dl>
|
||||
<dt><label for="filecomment">{L_FILE_COMMENT}{L_COLON}</label></dt>
|
||||
<dd><textarea name="filecomment" id="filecomment" rows="1" cols="40" class="inputbox autowidth">{FILE_COMMENT}</textarea></dd>
|
||||
</dl>
|
||||
</fieldset>
|
||||
|
||||
<div id="attach-panel-multi" class="attach-panel-multi">
|
||||
<input type="button" class="button1 button button-form-bold" value="{L_PLUPLOAD_ADD_FILES}" id="add_files" />
|
||||
</div>
|
||||
|
||||
{% EVENT posting_attach_body_file_list_before %}
|
||||
<div class="panel<!-- IF not .attach_row --> hidden<!-- ENDIF --> file-list-container" id="file-list-container">
|
||||
<div class="inner">
|
||||
<table class="table1 zebra-list fixed-width-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="attach-name">{L_PLUPLOAD_FILENAME}</th>
|
||||
<th class="attach-comment">{L_FILE_COMMENT}</th>
|
||||
<th class="attach-filesize">{L_PLUPLOAD_SIZE}</th>
|
||||
<th class="attach-status">{L_PLUPLOAD_STATUS}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody class="responsive-skip-empty file-list" id="file-list">
|
||||
<tr class="attach-row attach-row-tpl" id="attach-row-tpl">
|
||||
<td class="attach-name">
|
||||
<span class="file-name ellipsis-text"></span>
|
||||
<span class="attach-controls">
|
||||
{% if S_BBCODE_ALLOWED %}<input type="button" value="{{ lang('PLACE_INLINE') }}" class="button1 button button-form-bold hidden file-inline-bbcode" /> {% endif %}
|
||||
<input type="button" value="{L_DELETE_FILE}" class="button1 button button-form-bold file-delete" />
|
||||
</span>
|
||||
<span class="clear"></span>
|
||||
</td>
|
||||
<td class="attach-comment">
|
||||
<textarea rows="1" cols="30" class="inputbox"></textarea>
|
||||
</td>
|
||||
<td class="attach-filesize">
|
||||
<span class="file-size"></span>
|
||||
</td>
|
||||
<td class="attach-status">
|
||||
<span class="file-progress">
|
||||
<span class="file-progress-bar"></span>
|
||||
</span>
|
||||
<span class="file-status"></span>
|
||||
</td>
|
||||
</tr>
|
||||
{% EVENT posting_attach_body_attach_row_before %}
|
||||
<!-- BEGIN attach_row -->
|
||||
{% EVENT posting_attach_body_attach_row_prepend %}
|
||||
<tr class="attach-row" data-attach-id="{attach_row.ATTACH_ID}">
|
||||
<td class="attach-name">
|
||||
<span class="file-name ellipsis-text"><a href="{attach_row.U_VIEW_ATTACHMENT}">{attach_row.FILENAME}</a></span>
|
||||
{% EVENT posting_attach_body_attach_row_controls_prepend %}
|
||||
<span class="attach-controls">
|
||||
{% if S_BBCODE_ALLOWED and S_INLINE_ATTACHMENT_OPTIONS %}<input type="button" value="{{ lang('PLACE_INLINE') }}" class="button1 button button-form-bold file-inline-bbcode" /> {% endif %}
|
||||
<input type="submit" name="delete_file[{attach_row.ASSOC_INDEX}]" value="{L_DELETE_FILE}" class="button1 button button-form-bold file-delete" />
|
||||
</span>
|
||||
{% EVENT posting_attach_body_attach_row_controls_append %}
|
||||
<span class="clear"></span>
|
||||
</td>
|
||||
<td class="attach-comment">
|
||||
<textarea name="comment_list[{attach_row.ASSOC_INDEX}]" rows="1" cols="30" class="inputbox">{attach_row.FILE_COMMENT}</textarea>
|
||||
{attach_row.S_HIDDEN}
|
||||
</td>
|
||||
<td class="attach-filesize">
|
||||
<span class="file-size">{attach_row.FILESIZE}</span>
|
||||
</td>
|
||||
<td class="attach-status">
|
||||
<span class="file-status file-uploaded"></span>
|
||||
</td>
|
||||
</tr>
|
||||
{% EVENT posting_attach_body_attach_row_append %}
|
||||
<!-- END attach_row -->
|
||||
{% EVENT posting_attach_body_attach_row_after %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{% EVENT posting_attach_body_file_list_after %}
|
||||
</div>
|
||||
</div>
|
6
phpBB/styles/prosilver2/template/posting_body.html
Normal file
|
@ -0,0 +1,6 @@
|
|||
|
||||
<!-- IF S_PRIVMSGS -->
|
||||
<!-- INCLUDE posting_pm_layout.html -->
|
||||
<!-- ELSE -->
|
||||
<!-- INCLUDE posting_layout.html -->
|
||||
<!-- ENDIF -->
|
105
phpBB/styles/prosilver2/template/posting_buttons.html
Normal file
|
@ -0,0 +1,105 @@
|
|||
|
||||
<script>
|
||||
var form_name = 'postform';
|
||||
var text_name = <!-- IF $SIG_EDIT -->'signature'<!-- ELSE -->'message'<!-- ENDIF -->;
|
||||
var load_draft = false;
|
||||
var upload = false;
|
||||
|
||||
// Define the bbCode tags
|
||||
var bbcode = new Array();
|
||||
var bbtags = new Array('[b]','[/b]','[i]','[/i]','[u]','[/u]','[quote]','[/quote]','[code]','[/code]','[list]','[/list]','[list=]','[/list]','[img]','[/img]','[url]','[/url]','[size=]','[/size]'<!-- BEGIN custom_tags -->, {custom_tags.BBCODE_NAME}<!-- END custom_tags -->);
|
||||
var imageTag = false;
|
||||
|
||||
function change_palette()
|
||||
{
|
||||
phpbb.toggleDisplay('colour_palette');
|
||||
e = document.getElementById('colour_palette');
|
||||
|
||||
if (e.style.display == 'block')
|
||||
{
|
||||
document.getElementById('bbpalette').value = '{LA_FONT_COLOR_HIDE}';
|
||||
}
|
||||
else
|
||||
{
|
||||
document.getElementById('bbpalette').value = '{LA_FONT_COLOR}';
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
{% include 'mentions_templates.html' %}
|
||||
|
||||
<!-- INCLUDEJS {T_ASSETS_PATH}/javascript/editor.js -->
|
||||
<!-- INCLUDEJS {T_ASSETS_PATH}/javascript/tribute.min.js -->
|
||||
<!-- INCLUDEJS {T_ASSETS_PATH}/javascript/mentions.js -->
|
||||
|
||||
<!-- IF S_BBCODE_ALLOWED -->
|
||||
<div id="colour_palette" style="display: none;">
|
||||
<dl style="clear: left;">
|
||||
<dt><label>{L_FONT_COLOR}{L_COLON}</label></dt>
|
||||
<dd id="color_palette_placeholder" class="color_palette_placeholder" data-color-palette="h" data-height="12" data-width="15" data-bbcode="true"></dd>
|
||||
</dl>
|
||||
</div>
|
||||
|
||||
<!-- EVENT posting_editor_buttons_before -->
|
||||
<div id="format-buttons" class="format-buttons"<!-- IF S_ALLOW_MENTIONS --> data-mention-url="{U_MENTION_URL}" data-mention-names-limit="{S_MENTION_NAMES_LIMIT}" data-topic-id="{S_TOPIC_ID}" data-user-id="{S_USER_ID}"<!-- ENDIF -->>
|
||||
<button type="button" class="button button-icon-only bbcode-b" accesskey="b" name="addbbcode0" value=" B " onclick="bbstyle(0)" title="{L_BBCODE_B_HELP}">
|
||||
{{ Icon('font', 'bold', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<button type="button" class="button button-icon-only bbcode-i" accesskey="i" name="addbbcode2" value=" i " onclick="bbstyle(2)" title="{L_BBCODE_I_HELP}">
|
||||
{{ Icon('font', 'italic', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<button type="button" class="button button-icon-only bbcode-u" accesskey="u" name="addbbcode4" value=" u " onclick="bbstyle(4)" title="{L_BBCODE_U_HELP}">
|
||||
{{ Icon('font', 'underline', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<!-- IF S_BBCODE_QUOTE -->
|
||||
<button type="button" class="button button-icon-only bbcode-quote" accesskey="q" name="addbbcode6" value="Quote" onclick="bbstyle(6)" title="{L_BBCODE_Q_HELP}">
|
||||
{{ Icon('font', 'quote-left', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<!-- ENDIF -->
|
||||
<button type="button" class="button button-icon-only bbcode-code" accesskey="c" name="addbbcode8" value="Code" onclick="bbstyle(8)" title="{L_BBCODE_C_HELP}">
|
||||
{{ Icon('font', 'code', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<button type="button" class="button button-icon-only bbcode-list" accesskey="l" name="addbbcode10" value="List" onclick="bbstyle(10)" title="{L_BBCODE_L_HELP}">
|
||||
{{ Icon('font', 'list-ul', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<button type="button" class="button button-icon-only bbcode-list-" accesskey="o" name="addbbcode12" value="List=" onclick="bbstyle(12)" title="{L_BBCODE_O_HELP}">
|
||||
{{ Icon('font', 'list-ol', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<button type="button" class="button button-icon-only bbcode-asterisk" accesskey="y" name="addlistitem" value="[*]" onclick="bbstyle(-1)" title="{L_BBCODE_LISTITEM_HELP}">
|
||||
{{ Icon('font', 'asterisk', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<!-- IF S_BBCODE_IMG -->
|
||||
<button type="button" class="button button-icon-only bbcode-img" accesskey="p" name="addbbcode14" value="Img" onclick="bbstyle(14)" title="{L_BBCODE_P_HELP}">
|
||||
{{ Icon('font', 'image', '', true, 'far c-button-icon') }}
|
||||
</button>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_LINKS_ALLOWED -->
|
||||
<button type="button" class="button button-icon-only bbcode-url" accesskey="w" name="addbbcode16" value="URL" onclick="bbstyle(16)" title="{L_BBCODE_W_HELP}">
|
||||
{{ Icon('font', 'link', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<!-- ENDIF -->
|
||||
<button type="button" class="button button-icon-only bbcode-color" name="bbpalette" id="bbpalette" value="{L_FONT_COLOR}" onclick="change_palette();" title="{L_BBCODE_S_HELP}">
|
||||
{{ Icon('font', 'droplet', '', true, 'fas c-button-icon') }}
|
||||
</button>
|
||||
<select name="addbbcode18" class="bbcode-size" onchange="bbfontstyle('[size=' + this.form.addbbcode18.options[this.form.addbbcode18.selectedIndex].value + ']', '[/size]');this.form.addbbcode18.selectedIndex = 2;" title="{L_BBCODE_F_HELP}">
|
||||
<option value="50">{L_FONT_TINY}</option>
|
||||
<option value="85">{L_FONT_SMALL}</option>
|
||||
<option value="100" selected="selected">{L_FONT_NORMAL}</option>
|
||||
<!-- IF not MAX_FONT_SIZE or MAX_FONT_SIZE >= 150 -->
|
||||
<option value="150">{L_FONT_LARGE}</option>
|
||||
<!-- IF not MAX_FONT_SIZE or MAX_FONT_SIZE >= 200 -->
|
||||
<option value="200">{L_FONT_HUGE}</option>
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
</select>
|
||||
|
||||
<!-- EVENT posting_editor_buttons_custom_tags_before -->
|
||||
|
||||
<!-- BEGIN custom_tags -->
|
||||
<button type="button" class="button button-secondary bbcode-{custom_tags.BBCODE_TAG_CLEAN}" name="addbbcode{custom_tags.BBCODE_ID}" value="{custom_tags.BBCODE_TAG}" onclick="bbstyle({custom_tags.BBCODE_ID})" title="{{ custom_tags.BBCODE_HELPLINE }}">
|
||||
{custom_tags.BBCODE_TAG}
|
||||
</button>
|
||||
<!-- END custom_tags -->
|
||||
</div>
|
||||
<!-- EVENT posting_editor_buttons_after -->
|
||||
<!-- ENDIF -->
|
205
phpBB/styles/prosilver2/template/posting_editor.html
Normal file
|
@ -0,0 +1,205 @@
|
|||
<fieldset class="fields1">
|
||||
<!-- IF ERROR --><p class="error">{ERROR}</p><!-- ENDIF -->
|
||||
|
||||
{% EVENT posting_editor_topic_icons_before %}
|
||||
|
||||
<!-- IF S_SHOW_TOPIC_ICONS or S_SHOW_PM_ICONS -->
|
||||
<dl>
|
||||
<dt><label for="icon">{L_ICON}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
{% EVENT posting_editor_topic_icons_prepend %}
|
||||
|
||||
<label for="icon"><input type="radio" name="icon" id="icon" value="0" checked="checked" tabindex="1" /> <!-- IF S_SHOW_TOPIC_ICONS -->{L_NO_TOPIC_ICON}<!-- ELSE -->{L_NO_PM_ICON}<!-- ENDIF --></label>
|
||||
<!-- BEGIN topic_icon --><label for="icon-{topic_icon.ICON_ID}"><input type="radio" name="icon" id="icon-{topic_icon.ICON_ID}" value="{topic_icon.ICON_ID}" {topic_icon.S_ICON_CHECKED} tabindex="1" /><img src="{topic_icon.ICON_IMG}" width="{topic_icon.ICON_WIDTH}" height="{topic_icon.ICON_HEIGHT}" alt="{topic_icon.ICON_ALT}" title="{topic_icon.ICON_ALT}" /></label> <!-- END topic_icon -->
|
||||
|
||||
{% EVENT posting_editor_topic_icons_append %}
|
||||
</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% EVENT posting_editor_topic_icons_after %}
|
||||
|
||||
<!-- IF not S_PRIVMSGS and S_DISPLAY_USERNAME -->
|
||||
<dl style="clear: left;">
|
||||
<dt><label for="username">{L_USERNAME}{L_COLON}</label></dt>
|
||||
<dd><input type="text" tabindex="1" name="username" id="username" size="25" value="{USERNAME}" class="inputbox autowidth" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT posting_editor_subject_before -->
|
||||
|
||||
<!-- IF S_POST_ACTION or S_PRIVMSGS or S_EDIT_DRAFT -->
|
||||
<dl style="clear: left;">
|
||||
<dt><label for="subject">{L_SUBJECT}{L_COLON}</label></dt>
|
||||
<dd>
|
||||
<!-- EVENT posting_editor_subject_prepend -->
|
||||
<input type="text" name="subject" id="subject" size="45" maxlength="<!-- IF S_NEW_MESSAGE -->120<!-- ELSE -->124<!-- ENDIF -->" tabindex="2" value="{SUBJECT}{DRAFT_SUBJECT}" class="inputbox autowidth" />
|
||||
<!-- EVENT posting_editor_subject_append -->
|
||||
</dd>
|
||||
</dl>
|
||||
<!-- IF CAPTCHA_TEMPLATE and S_CONFIRM_CODE -->
|
||||
<!-- DEFINE $CAPTCHA_TAB_INDEX = 3 -->
|
||||
<!-- INCLUDE {CAPTCHA_TEMPLATE} -->
|
||||
<!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- EVENT posting_editor_subject_after -->
|
||||
|
||||
<!-- INCLUDE posting_buttons.html -->
|
||||
|
||||
<div id="smiley-box" class="smiley-box">
|
||||
<!-- EVENT posting_editor_smilies_before -->
|
||||
<!-- IF S_SMILIES_ALLOWED and .smiley -->
|
||||
<strong>{L_SMILIES}</strong><br />
|
||||
<!-- BEGIN smiley -->
|
||||
<a href="#" onclick="insert_text('{smiley.A_SMILEY_CODE}', true); return false;"><img src="{smiley.SMILEY_IMG}" width="{smiley.SMILEY_WIDTH}" height="{smiley.SMILEY_HEIGHT}" alt="{smiley.SMILEY_CODE}" title="{smiley.SMILEY_DESC}" /></a>
|
||||
<!-- END smiley -->
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_SHOW_SMILEY_LINK and S_SMILIES_ALLOWED -->
|
||||
<br /><a href="{U_MORE_SMILIES}" onclick="popup(this.href, 750, 350, '_phpbbsmilies'); return false;">{L_MORE_SMILIES}</a>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT posting_editor_smilies_after -->
|
||||
<!-- IF BBCODE_STATUS -->
|
||||
<div class="bbcode-status">
|
||||
<!-- IF .smiley --><hr /><!-- ENDIF -->
|
||||
{BBCODE_STATUS}<br />
|
||||
<!-- IF S_BBCODE_ALLOWED -->
|
||||
{IMG_STATUS}<br />
|
||||
{URL_STATUS}<br />
|
||||
<!-- ENDIF -->
|
||||
{SMILIES_STATUS}
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT posting_editor_bbcode_status_after -->
|
||||
<!-- IF S_EDIT_DRAFT || S_DISPLAY_REVIEW -->
|
||||
<!-- IF S_DISPLAY_REVIEW --><hr /><!-- ENDIF -->
|
||||
<!-- IF S_EDIT_DRAFT --><strong><a href="{S_UCP_ACTION}">{L_BACK_TO_DRAFTS}</a></strong><!-- ENDIF -->
|
||||
<!-- IF S_DISPLAY_REVIEW --><strong><a href="#review">{L_TOPIC_REVIEW}</a></strong><!-- ENDIF -->
|
||||
<!-- ENDIF -->
|
||||
</div>
|
||||
|
||||
<!-- EVENT posting_editor_message_before -->
|
||||
|
||||
<div id="message-box" class="message-box">
|
||||
<textarea <!-- IF S_UCP_ACTION and not S_PRIVMSGS and not S_EDIT_DRAFT -->name="signature" id="signature" style="height: 9em;"<!-- ELSE -->name="message" id="message"<!-- ENDIF --> rows="15" cols="76" tabindex="4" onselect="storeCaret(this);" onclick="storeCaret(this);" onkeyup="storeCaret(this);" onfocus="initInsertions();" class="inputbox">{MESSAGE}{DRAFT_MESSAGE}{SIGNATURE}</textarea>
|
||||
</div>
|
||||
|
||||
<!-- EVENT posting_editor_message_after -->
|
||||
</fieldset>
|
||||
|
||||
<!-- IF $EXTRA_POSTING_OPTIONS eq 1 -->
|
||||
|
||||
<!-- IF not S_SHOW_DRAFTS -->
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_SHOW_DRAFTS and not $SIG_EDIT eq 1 -->
|
||||
<div class="panel bg2">
|
||||
<div class="inner">
|
||||
<fieldset class="submit-buttons">
|
||||
{S_HIDDEN_ADDRESS_FIELD}
|
||||
{S_HIDDEN_FIELDS}
|
||||
<!-- EVENT posting_editor_submit_buttons -->
|
||||
<!-- IF S_HAS_DRAFTS --><input type="submit" accesskey="d" tabindex="8" name="load" value="{L_LOAD_DRAFT}" class="button1 button button-form-bold" onclick="load_draft = true;" /> <!-- ENDIF -->
|
||||
<!-- IF S_SAVE_ALLOWED --><input type="submit" accesskey="k" tabindex="7" name="save" value="{L_SAVE_DRAFT}" class="button1 button button-form-bold" /> <!-- ENDIF -->
|
||||
<input type="submit" tabindex="5" name="preview" value="{L_PREVIEW}" class="button1 button button-form"<!-- IF not S_PRIVMSGS --> onclick="document.getElementById('postform').action += '#preview';"<!-- ENDIF --> />
|
||||
<input type="submit" accesskey="s" tabindex="6" name="post" value="{L_SUBMIT}" class="button1 button button-form default-submit-action" />
|
||||
|
||||
</fieldset>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_PRIVMSGS and not S_SHOW_DRAFTS and not $SIG_EDIT eq 1 -->
|
||||
<div id="tabs" class="tabs sub-panels" data-show-panel="<!-- IF SHOW_PANEL -->{SHOW_PANEL}<!-- ELSE -->options-panel<!-- ENDIF -->" role="tablist">
|
||||
<ul>
|
||||
<li id="options-panel-tab" class="tab activetab"><a href="#tabs" data-subpanel="options-panel" role="tab" aria-controls="options-panel"><span>{L_OPTIONS}</span></a></li>
|
||||
<!-- IF S_SHOW_ATTACH_BOX and FILTERS -->
|
||||
<li id="attach-panel-tab" class="tab">
|
||||
<a href="#tabs" data-subpanel="attach-panel" role="tab" aria-controls="attach-panel">
|
||||
{L_ATTACHMENTS} <strong id="file-total-progress" class="file-total-progress"><strong id="file-total-progress-bar" class="file-total-progress-bar"></strong></strong>
|
||||
</a>
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_SHOW_POLL_BOX || S_POLL_DELETE -->
|
||||
<li id="poll-panel-tab" class="tab">
|
||||
<a href="#tabs" data-subpanel="poll-panel" role="tab" aria-controls="poll-panel">{L_ADD_POLL}</a>
|
||||
</li>
|
||||
<!-- ENDIF -->
|
||||
<!-- EVENT posting_editor_add_panel_tab -->
|
||||
</ul>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF not S_SHOW_DRAFTS and not $SIG_EDIT eq 1 -->
|
||||
<div class="panel bg3" id="options-panel">
|
||||
<div class="inner">
|
||||
|
||||
<fieldset class="fields1">
|
||||
<!-- EVENT posting_editor_options_prepend -->
|
||||
<!-- IF S_BBCODE_ALLOWED -->
|
||||
<div><label for="disable_bbcode"><input type="checkbox" name="disable_bbcode" id="disable_bbcode"{S_BBCODE_CHECKED} /> {L_DISABLE_BBCODE}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_SMILIES_ALLOWED -->
|
||||
<div><label for="disable_smilies"><input type="checkbox" name="disable_smilies" id="disable_smilies"{S_SMILIES_CHECKED} /> {L_DISABLE_SMILIES}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_LINKS_ALLOWED -->
|
||||
<div><label for="disable_magic_url"><input type="checkbox" name="disable_magic_url" id="disable_magic_url"{S_MAGIC_URL_CHECKED} /> {L_DISABLE_MAGIC_URL}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_SIG_ALLOWED -->
|
||||
<div><label for="attach_sig"><input type="checkbox" name="attach_sig" id="attach_sig"{S_SIGNATURE_CHECKED} /> {L_ATTACH_SIG}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_NOTIFY_ALLOWED -->
|
||||
<div><label for="notify"><input type="checkbox" name="notify" id="notify"{S_NOTIFY_CHECKED} /> {L_NOTIFY_REPLY}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_LOCK_TOPIC_ALLOWED -->
|
||||
<div><label for="lock_topic"><input type="checkbox" name="lock_topic" id="lock_topic"{S_LOCK_TOPIC_CHECKED} /> {L_LOCK_TOPIC}</label></div>
|
||||
<!-- ENDIF -->
|
||||
<!-- IF S_LOCK_POST_ALLOWED -->
|
||||
<div><label for="lock_post"><input type="checkbox" name="lock_post" id="lock_post"{S_LOCK_POST_CHECKED} /> {L_LOCK_POST} [{L_LOCK_POST_EXPLAIN}]</label></div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_TYPE_TOGGLE or S_TOPIC_TYPE_ANNOUNCE or S_TOPIC_TYPE_STICKY -->
|
||||
<hr class="dashed" />
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_TYPE_TOGGLE -->
|
||||
<dl>
|
||||
<dt><label for="topic_type-0"><!-- IF S_EDIT_POST -->{L_CHANGE_TOPIC_TO}<!-- ELSE -->{L_POST_TOPIC_AS}<!-- ENDIF -->{L_COLON}</label></dt>
|
||||
<dd><!-- BEGIN topic_type --><label for="topic_type-{topic_type.VALUE}"><input type="radio" name="topic_type" id="topic_type-{topic_type.VALUE}" value="{topic_type.VALUE}"{topic_type.S_CHECKED} />{topic_type.L_TOPIC_TYPE}</label> <!-- END topic_type --></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_TOPIC_TYPE_ANNOUNCE or S_TOPIC_TYPE_STICKY -->
|
||||
<dl>
|
||||
<dt><label for="topic_time_limit">{L_STICK_TOPIC_FOR}{L_COLON}</label></dt>
|
||||
<dd><label for="topic_time_limit"><input type="number" min="0" max="999" name="topic_time_limit" id="topic_time_limit" value="{TOPIC_TIME_LIMIT}" class="inputbox autowidth" /> {L_DAYS}</label></dd>
|
||||
<dd>{L_STICK_TOPIC_FOR_EXPLAIN}</dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
|
||||
{% if S_SOFTDELETE_ALLOWED || S_DELETE_ALLOWED %}
|
||||
<hr class="dashed">
|
||||
<dl>
|
||||
<dt><label for="delete">{{ lang('DELETE_POST') ~ lang('COLON') }}</label></dt>
|
||||
{% if S_SOFTDELETE_ALLOWED %}
|
||||
<dd><label for="delete"><input type="checkbox" name="delete" id="delete" {{ S_SOFTDELETE_CHECKED }}> {{ lang('DELETE_POST_WARN') }}</label></dd>
|
||||
{% endif %}
|
||||
{% if S_DELETE_ALLOWED %}
|
||||
<dd><label for="delete_permanent"><input type="checkbox" name="delete_permanent" id="delete_permanent"> {{ lang('DELETE_POST_PERMANENTLY') }}</label></dd>
|
||||
{% endif %}
|
||||
</dl>
|
||||
{% endif %}
|
||||
|
||||
<!-- IF S_EDIT_REASON -->
|
||||
<dl>
|
||||
<dt><label for="edit_reason">{L_EDIT_REASON}{L_COLON}</label></dt>
|
||||
<dd><input type="text" name="edit_reason" id="edit_reason" value="{EDIT_REASON}" class="inputbox" /></dd>
|
||||
</dl>
|
||||
<!-- ENDIF -->
|
||||
</fieldset>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- ENDIF -->
|
65
phpBB/styles/prosilver2/template/posting_layout.html
Normal file
|
@ -0,0 +1,65 @@
|
|||
<!-- INCLUDE overall_header.html -->
|
||||
|
||||
<!-- IF TOPIC_TITLE -->
|
||||
<h2 class="posting-title"><!-- EVENT posting_topic_title_before --><a href="{U_VIEW_TOPIC}">{TOPIC_TITLE}</a><!-- EVENT posting_topic_title_after --></h2>
|
||||
<!-- ELSE -->
|
||||
<h2 class="posting-title"><a href="{U_VIEW_FORUM}">{FORUM_NAME}</a></h2>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_FORUM_RULES -->
|
||||
<div class="rules<!-- IF U_FORUM_RULES --> rules-link<!-- ENDIF -->">
|
||||
<div class="inner">
|
||||
|
||||
<!-- IF U_FORUM_RULES -->
|
||||
<a href="{U_FORUM_RULES}">{L_FORUM_RULES}</a>
|
||||
<!-- ELSE -->
|
||||
<strong>{L_FORUM_RULES}</strong><br />
|
||||
{FORUM_RULES}
|
||||
<!-- ENDIF -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<form id="postform" method="post" action="{S_POST_ACTION}"{S_FORM_ENCTYPE}>
|
||||
|
||||
<!-- IF S_DRAFT_LOADED -->
|
||||
<div class="panel">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_INFORMATION}</h3>
|
||||
<p>{L_DRAFT_LOADED}</p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- ENDIF -->
|
||||
|
||||
<!-- IF S_SHOW_DRAFTS --><!-- INCLUDE drafts.html --><!-- ENDIF -->
|
||||
|
||||
<!-- IF S_POST_REVIEW --><!-- INCLUDE posting_review.html --><!-- ENDIF -->
|
||||
|
||||
<!-- IF S_DISPLAY_PREVIEW --><!-- INCLUDE posting_preview.html --><!-- ENDIF -->
|
||||
|
||||
<div class="panel" id="postingbox">
|
||||
<div class="inner">
|
||||
|
||||
<h3>{L_POST_A}</h3>
|
||||
|
||||
<!-- DEFINE $EXTRA_POSTING_OPTIONS = 1 -->
|
||||
<!-- INCLUDE posting_editor.html -->
|
||||
<input type="hidden" name="show_panel" value="options-panel" />
|
||||
{S_FORM_TOKEN}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- IF S_SHOW_ATTACH_BOX and FILTERS --><!-- INCLUDE posting_attach_body.html --><!-- ENDIF -->
|
||||
|
||||
<!-- IF S_SHOW_POLL_BOX or S_POLL_DELETE --><!-- INCLUDE posting_poll_body.html --><!-- ENDIF -->
|
||||
|
||||
<!-- EVENT posting_layout_include_panel_body -->
|
||||
|
||||
<!-- IF S_DISPLAY_REVIEW --><!-- INCLUDE posting_topic_review.html --><!-- ENDIF -->
|
||||
|
||||
</form>
|
||||
|
||||
<!-- INCLUDE overall_footer.html -->
|