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

namespace XF\Option;

class
CollectServerStats extends AbstractOption
{
    public static function
verifyOption(array &$value, \XF\Entity\Option $option)
    {
        if (
$option->isInsert())
        {
            return
true;
        }

        if (empty(
$value['configured']) || empty($value['enabled']))
        {
            \
XF::app()->jobManager()->cancelUniqueJob('xfCollectStats');
            return
true;
        }

        if (empty(
$option->option_value['installation_id']))
        {
           
// no existing installation_id so generate a new one
           
$value['installation_id'] = \XF::generateRandomString(32);
        }
        else
        {
           
// we have an existing installation_id so prevent it from being changed (silently)
           
if (empty($value['installation_id']) || $value['installation_id'] !== $option->option_value['installation_id'])
            {
               
$value['installation_id'] = $option->option_value['installation_id'];
            }
        }

        if (
$value['enabled'] !== $option->option_value['enabled'])
        {
            \
XF::app()->jobManager()->enqueueUnique('xfCollectStats', 'XF:CollectStats', [], false);
        }

        return
true;
    }
}