View file upload/src/addons/ForoAgency/ColoredUsername/XF/Entity/User.php

File size: 955B
<?php

namespace ForoAgency\ColoredUsername\XF\Entity;

class User extends XFCP_User
{
    public function faColoredUsernameGetUserColor()
    {
        $groupStyles = \XF::app()->templater()->getGroupStyles();

        if (isset($groupStyles[$this->display_style_group_id]) && isset($groupStyles[$this->display_style_group_id]['username_css']))
        {

            $userStyle = $groupStyles[$this->display_style_group_id]['username_css'];
            // extract CSS value
            $a = [];
            preg_match_all('/^\s*([^:]+)(:\s*(.+))?;\s*$/m', $userStyle, $matches, PREG_SET_ORDER);
            foreach ($matches AS $match)
            {
                if (isset($match[1]) && $match[1] == 'color' && isset($match[3]))
                {
                    // @TODO validate color is valid for this mobile app
                    return str_replace(' ', '', $match[3]);
                }
            }
        }

        return '';
    }
}