Seditio Source
Root |
./othercms/xenForo 2.2.8/src/XF/Option/Style.php
<?php

namespace XF\Option;

class
Style extends AbstractOption
{
    public static function
renderRadio(\XF\Entity\Option $option, array $htmlParams)
    {
       
/** @var \XF\Repository\Style $styleRepo */
       
$styleRepo = \XF::repository('XF:Style');

       
$forEmailStyle = ($option->option_id == 'defaultEmailStyleId');

       
$choices = [];
        if (
$forEmailStyle)
        {
           
$choices[0] = \XF::phrase('use_default_style');
        }
        foreach (
$styleRepo->getStyleTree(false)->getFlattened() AS $entry)
        {
            if (
$entry['record']->user_selectable || $forEmailStyle)
            {
               
$choices[$entry['record']->style_id] = $entry['record']->title;
            }
        }

        return
self::getRadioRow($option, $htmlParams, $choices);
    }

    protected static
$triggered = false;

   
/**
     * This can be used as a verification callback to force a style update (CSS rebuild).
     *
     * @param mixed $value
     * @param \XF\Entity\Option $option
     * @return bool
     */
   
public static function triggerStyleUpdate(&$value, \XF\Entity\Option $option)
    {
        if (
$option->isInsert())
        {
            return
true;
        }

        if (!
self::$triggered)
        {
            \
XF::repository('XF:Style')->updateAllStylesLastModifiedDateLater();
           
self::$triggered = true;
        }

        return
true;
    }
}