Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
0.00% covered (danger)
0.00%
0 / 1
66.67% covered (warning)
66.67%
2 / 3
CRAP
94.44% covered (success)
94.44%
17 / 18
user_signature
0.00% covered (danger)
0.00%
0 / 1
66.67% covered (warning)
66.67%
2 / 3
4.00
94.44% covered (success)
94.44%
17 / 18
 add_missing_fields
0.00% covered (danger)
0.00%
0 / 1
2.00
90.00% covered (success)
90.00%
9 / 10
 get_columns
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
5 / 5
 save_keyoptions
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
3 / 3
<?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
{
    /**
    * @var array Bit numbers used for user options
    * @see \phpbb\user
    */
    protected $keyoptions;
    /**
    * {@inheritdoc}
    */
    protected function add_missing_fields(array $row)
    {
        if (!isset($this->keyoptions))
        {
            $this->save_keyoptions();
        }
        $options = $row['user_options'];
        $row += array(
            'enable_bbcode'    => phpbb_optionget($this->keyoptions['sig_bbcode'], $options),
            'enable_smilies'   => phpbb_optionget($this->keyoptions['sig_smilies'], $options),
            'enable_magic_url' => phpbb_optionget($this->keyoptions['sig_links'], $options),
        );
        return parent::add_missing_fields($row);
    }
    /**
    * {@inheritdoc}
    */
    public function get_columns()
    {
        return array(
            'id'           => 'user_id',
            'text'         => 'user_sig',
            'bbcode_uid'   => 'user_sig_bbcode_uid',
            'user_options' => 'user_options',
        );
    }
    /**
    * Save the keyoptions var from \phpbb\user
    */
    protected function save_keyoptions()
    {
        $class_vars = get_class_vars('phpbb\\user');
        $this->keyoptions = $class_vars['keyoptions'];
    }
}