mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-28 14:18:52 +00:00
Merge branch 'develop' into ticket/10380
* develop: [ticket/10652] Fixing typo in template class [ticket/10645] Missing CSS for checkboxes [ticket/10614] Change not installed heading to available. [ticket/10614] Unbreak all_available on extension manager. [ticket/10614] Check if cache exists before destroying it [ticket/10614] Remove ext manager exceptions for now [ticket/10614] Refactor list command to use manager API [ticket/10614] Add purge command [ticket/10614] Tweak list output, show state, purge cache, handle missing exts [ticket/10614] Make script accessible from anywhere [ticket/10614] Better usage output [ticket/10614] Add a script to enable, disable and view status of extensions. [ticket/10500] Use correct class name in @uses. [ticket/10500] Fix phpbb_template_compile instantiation.
This commit is contained in:
commit
fa5f094197
5 changed files with 156 additions and 7 deletions
|
@ -1007,11 +1007,11 @@ fieldset.submit-buttons legend {
|
||||||
/* Input field styles
|
/* Input field styles
|
||||||
---------------------------------------- */
|
---------------------------------------- */
|
||||||
|
|
||||||
input.radio, input.permissions-checkbox {
|
input.radio, input.checkbox, input.permissions-checkbox {
|
||||||
width: auto !important;
|
width: auto !important;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
border: none;
|
border: none;
|
||||||
cursor: default;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
input.full,
|
input.full,
|
||||||
|
|
|
@ -20,5 +20,5 @@ include($phpbb_root_path . 'includes/template_compile.'.$phpEx);
|
||||||
|
|
||||||
$file = $argv[1];
|
$file = $argv[1];
|
||||||
|
|
||||||
$compile = new phpbb_template_compile();
|
$compile = new phpbb_template_compile(false);
|
||||||
echo $compile->compile_file($file);
|
echo $compile->compile_file($file);
|
||||||
|
|
123
phpBB/develop/extensions.php
Normal file
123
phpBB/develop/extensions.php
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @copyright (c) 2012 phpBB Group
|
||||||
|
* @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
define('IN_PHPBB', 1);
|
||||||
|
define('ANONYMOUS', 1);
|
||||||
|
$phpEx = substr(strrchr(__FILE__, '.'), 1);
|
||||||
|
$phpbb_root_path = __DIR__.'/../';
|
||||||
|
|
||||||
|
include($phpbb_root_path . 'common.'.$phpEx);
|
||||||
|
|
||||||
|
function usage()
|
||||||
|
{
|
||||||
|
echo "Usage: extensions.php COMMAND [OPTION]...\n";
|
||||||
|
echo "Console extension manager.\n";
|
||||||
|
echo "\n";
|
||||||
|
echo "list:\n";
|
||||||
|
echo " Lists all extensions in the database and the filesystem.\n";
|
||||||
|
echo "\n";
|
||||||
|
echo "enable NAME:\n";
|
||||||
|
echo " Enables the specified extension.\n";
|
||||||
|
echo "\n";
|
||||||
|
echo "disable NAME:\n";
|
||||||
|
echo " Disables the specified extension.\n";
|
||||||
|
echo "\n";
|
||||||
|
echo "purge NAME:\n";
|
||||||
|
echo " Purges the specified extension.\n";
|
||||||
|
exit(2);
|
||||||
|
}
|
||||||
|
|
||||||
|
function list_extensions()
|
||||||
|
{
|
||||||
|
global $phpbb_extension_manager;
|
||||||
|
|
||||||
|
$phpbb_extension_manager->load_extensions();
|
||||||
|
|
||||||
|
echo "Enabled:\n";
|
||||||
|
$enabled = array_keys($phpbb_extension_manager->all_enabled());
|
||||||
|
print_extensions($enabled);
|
||||||
|
echo "\n";
|
||||||
|
|
||||||
|
echo "Disabled:\n";
|
||||||
|
$disabled = array_keys($phpbb_extension_manager->all_disabled());
|
||||||
|
print_extensions($disabled);
|
||||||
|
echo "\n";
|
||||||
|
|
||||||
|
echo "Available:\n";
|
||||||
|
$all = array_keys($phpbb_extension_manager->all_available());
|
||||||
|
$purged = array_diff($all, $enabled, $disabled);
|
||||||
|
print_extensions($purged);
|
||||||
|
}
|
||||||
|
|
||||||
|
function print_extensions($exts)
|
||||||
|
{
|
||||||
|
foreach ($exts as $ext)
|
||||||
|
{
|
||||||
|
echo "- $ext\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function enable_extension($name)
|
||||||
|
{
|
||||||
|
global $phpbb_extension_manager;
|
||||||
|
|
||||||
|
$phpbb_extension_manager->enable($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
function disable_extension($name)
|
||||||
|
{
|
||||||
|
global $phpbb_extension_manager;
|
||||||
|
|
||||||
|
$phpbb_extension_manager->disable($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
function purge_extension($name)
|
||||||
|
{
|
||||||
|
global $phpbb_extension_manager;
|
||||||
|
|
||||||
|
$phpbb_extension_manager->purge($name);
|
||||||
|
}
|
||||||
|
|
||||||
|
function validate_argument_count($count)
|
||||||
|
{
|
||||||
|
global $argv;
|
||||||
|
|
||||||
|
if (count($argv) <= $count)
|
||||||
|
{
|
||||||
|
usage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
validate_argument_count(1);
|
||||||
|
|
||||||
|
$action = $argv[1];
|
||||||
|
|
||||||
|
switch ($action)
|
||||||
|
{
|
||||||
|
case 'list':
|
||||||
|
list_extensions();
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'enable':
|
||||||
|
validate_argument_count(2);
|
||||||
|
enable_extension($argv[2]);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'disable':
|
||||||
|
validate_argument_count(2);
|
||||||
|
disable_extension($argv[2]);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'purge':
|
||||||
|
validate_argument_count(2);
|
||||||
|
purge_extension($argv[2]);
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
usage();
|
||||||
|
}
|
|
@ -61,7 +61,7 @@ class phpbb_extension_manager
|
||||||
*
|
*
|
||||||
* @return null
|
* @return null
|
||||||
*/
|
*/
|
||||||
protected function load_extensions()
|
public function load_extensions()
|
||||||
{
|
{
|
||||||
$sql = 'SELECT *
|
$sql = 'SELECT *
|
||||||
FROM ' . $this->extension_table;
|
FROM ' . $this->extension_table;
|
||||||
|
@ -167,6 +167,11 @@ class phpbb_extension_manager
|
||||||
$this->db->sql_query($sql);
|
$this->db->sql_query($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ($this->cache)
|
||||||
|
{
|
||||||
|
$this->cache->destroy($this->cache_name);
|
||||||
|
}
|
||||||
|
|
||||||
return !$active;
|
return !$active;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -219,6 +224,11 @@ class phpbb_extension_manager
|
||||||
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
||||||
$this->db->sql_query($sql);
|
$this->db->sql_query($sql);
|
||||||
|
|
||||||
|
if ($this->cache)
|
||||||
|
{
|
||||||
|
$this->cache->destroy($this->cache_name);
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -234,6 +244,11 @@ class phpbb_extension_manager
|
||||||
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
||||||
$this->db->sql_query($sql);
|
$this->db->sql_query($sql);
|
||||||
|
|
||||||
|
if ($this->cache)
|
||||||
|
{
|
||||||
|
$this->cache->destroy($this->cache_name);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -292,6 +307,11 @@ class phpbb_extension_manager
|
||||||
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
||||||
$this->db->sql_query($sql);
|
$this->db->sql_query($sql);
|
||||||
|
|
||||||
|
if ($this->cache)
|
||||||
|
{
|
||||||
|
$this->cache->destroy($this->cache_name);
|
||||||
|
}
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -301,6 +321,11 @@ class phpbb_extension_manager
|
||||||
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
WHERE ext_name = '" . $this->db->sql_escape($name) . "'";
|
||||||
$this->db->sql_query($sql);
|
$this->db->sql_query($sql);
|
||||||
|
|
||||||
|
if ($this->cache)
|
||||||
|
{
|
||||||
|
$this->cache->destroy($this->cache_name);
|
||||||
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -329,7 +354,8 @@ class phpbb_extension_manager
|
||||||
$available = array();
|
$available = array();
|
||||||
|
|
||||||
$iterator = new RecursiveIteratorIterator(
|
$iterator = new RecursiveIteratorIterator(
|
||||||
new RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/'));
|
new RecursiveDirectoryIterator($this->phpbb_root_path . 'ext/'),
|
||||||
|
RecursiveIteratorIterator::SELF_FIRST);
|
||||||
foreach ($iterator as $file_info)
|
foreach ($iterator as $file_info)
|
||||||
{
|
{
|
||||||
if ($file_info->isFile() && $file_info->getFilename() == 'ext' . $this->phpEx)
|
if ($file_info->isFile() && $file_info->getFilename() == 'ext' . $this->phpEx)
|
||||||
|
|
|
@ -128,7 +128,7 @@ class phpbb_template
|
||||||
{
|
{
|
||||||
$templates = array($template_name => $template_path);
|
$templates = array($template_name => $template_path);
|
||||||
|
|
||||||
if ($fallback_template_path !== false)
|
if ($fallback_template_name !== false)
|
||||||
{
|
{
|
||||||
$templates[$fallback_template_name] = $fallback_template_path;
|
$templates[$fallback_template_name] = $fallback_template_path;
|
||||||
}
|
}
|
||||||
|
@ -306,7 +306,7 @@ class phpbb_template
|
||||||
*
|
*
|
||||||
* @param string $handle Handle of the template to load
|
* @param string $handle Handle of the template to load
|
||||||
* @return phpbb_template_renderer Template renderer object, or null on failure
|
* @return phpbb_template_renderer Template renderer object, or null on failure
|
||||||
* @uses template_compile is used to compile template source
|
* @uses phpbb_template_compile is used to compile template source
|
||||||
*/
|
*/
|
||||||
private function _tpl_load($handle)
|
private function _tpl_load($handle)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue