1
0
mirror of https://github.com/phpbb/phpbb.git synced 2025-07-31 22:10:45 +02:00

[ticket/13803] Added plugins

PHPBB3-13803
This commit is contained in:
JoshyPHP
2015-05-01 08:47:01 +02:00
parent e11ae7e9cd
commit 986af43f37
18 changed files with 536 additions and 327 deletions

View File

@@ -0,0 +1,69 @@
<?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\textreparser\plugins;
class admin_contact_info extends \phpbb\textreparser\base
{
/**
* @var \phpbb\config\db_text
*/
protected $config_text;
/**
* Constructor
*
* @param \phpbb\config\db_text $config_text
*/
public function __construct(\phpbb\config\db_text $config_text)
{
$this->config_text = $config_text;
}
/**
* {@inheritdoc}
*/
public function get_max_id()
{
return 1;
}
/**
* {@inheritdoc}
*/
protected function get_records($min_id, $max_id)
{
$values = $this->config_text->get_array(array(
'contact_admin_info',
'contact_admin_info_uid',
'contact_admin_info_flags',
));
return array(array(
'id' => 1,
'text' => $values['contact_admin_info'],
'bbcode_uid' => $values['contact_admin_info_uid'],
'enable_bbcode' => $values['contact_admin_info_flags'] & OPTION_FLAG_BBCODE,
'enable_magic_url' => $values['contact_admin_info_flags'] & OPTION_FLAG_LINKS,
'enable_smilies' => $values['contact_admin_info_flags'] & OPTION_FLAG_SMILIES,
));
}
/**
* {@inheritdoc}
*/
protected function save_record(array $record)
{
$this->config_text->set('admin_contact_info', $record['text']);
}
}

View File

@@ -0,0 +1,37 @@
<?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\textreparser\plugins;
class forum_description extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'forum_id',
'text' => 'forum_desc',
'bbcode_uid' => 'forum_desc_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return FORUMS_TABLE;
}
}

View File

@@ -0,0 +1,37 @@
<?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\textreparser\plugins;
class forum_rules extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'forum_id',
'text' => 'forum_rules',
'bbcode_uid' => 'forum_rules_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return FORUMS_TABLE;
}
}

View File

@@ -0,0 +1,37 @@
<?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\textreparser\plugins;
class group_description extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'group_id',
'text' => 'group_desc',
'bbcode_uid' => 'group_desc_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return GROUPS_TABLE;
}
}

View File

@@ -0,0 +1,40 @@
<?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\textreparser\plugins;
class pm_text extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'msg_id',
'enable_bbcode' => 'enable_bbcode',
'enable_smilies' => 'enable_smilies',
'enable_magic_url' => 'enable_magic_url',
'text' => 'message_text',
'bbcode_uid' => 'bbcode_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return PRIVMSGS_TABLE;
}
}

View File

@@ -0,0 +1,50 @@
<?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\textreparser\plugins;
class poll_option extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'poll_option_id',
'text' => 'poll_option_text',
);
}
/**
* {@inheritdoc}
*/
protected function get_records_query($min_id, $max_id)
{
$sql = 'SELECT o.poll_option_id AS id, o.poll_option_text AS text, p.bbcode_uid
FROM ' . POLL_OPTIONS_TABLE . ' o, ' . TOPICS_TABLE . ' t, ' . POSTS_TABLE . ' p
WHERE o.poll_option_id BETWEEN ' . $min_id . ' AND ' . $max_id .'
AND t.topic_id = o.topic_id
AND p.post_id = t.topic_first_post_id';
return $sql;
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return POLL_OPTIONS_TABLE;
}
}

View File

@@ -0,0 +1,50 @@
<?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\textreparser\plugins;
class poll_title extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'topic_id',
'text' => 'poll_title',
);
}
/**
* {@inheritdoc}
*/
protected function get_records_query($min_id, $max_id)
{
$sql = 'SELECT t.topic_id AS id, t.poll_title AS text, p.bbcode_uid
FROM ' . TOPICS_TABLE . ' t, ' . POSTS_TABLE . ' p
WHERE t.topic_id BETWEEN ' . $min_id . ' AND ' . $max_id .'
AND t.poll_max_options > 0
AND p.post_id = t.topic_first_post_id';
return $sql;
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return TOPICS_TABLE;
}
}

View File

@@ -0,0 +1,40 @@
<?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\textreparser\plugins;
class post_text extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'post_id',
'enable_bbcode' => 'enable_bbcode',
'enable_smilies' => 'enable_smilies',
'enable_magic_url' => 'enable_magic_url',
'text' => 'post_text',
'bbcode_uid' => 'bbcode_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return POSTS_TABLE;
}
}

View File

@@ -0,0 +1,37 @@
<?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\textreparser\plugins;
class user_signature extends \phpbb\textreparser\row_based_plugin
{
/**
* {@inheritdoc}
*/
protected function get_columns()
{
return array(
'id' => 'user_id',
'text' => 'user_sig',
'bbcode_uid' => 'user_sig_bbcode_uid',
);
}
/**
* {@inheritdoc}
*/
protected function get_table_name()
{
return USERS_TABLE;
}
}