Seditio Source
Root |
./othercms/xenForo 2.2.8/src/XF/ControllerPlugin/InlineMod.php
<?php

namespace XF\ControllerPlugin;

class
InlineMod extends AbstractPlugin
{
    public function
clearIdFromCookie($type, $id)
    {
       
$handler = $this->getInlineModHandler($type);
        if (!
$handler)
        {
            return;
        }

       
$ids = $handler->getCookieIds($this->request);
       
$position = array_search($id, $ids);

        if (
$position !== false)
        {
            unset(
$ids[$position]);
           
$handler->updateCookieIds($this->app->response(), $ids);
        }
    }

    public function
clearCookie($type)
    {
       
$handler = $this->getInlineModHandler($type);
        if (
$handler)
        {
           
$handler->clearCookie($this->app->response());
        }
    }

   
/**
     * @param string $type
     *
     * @return null|\XF\InlineMod\AbstractHandler
     */
   
public function getInlineModHandler($type)
    {
        if (!
$type)
        {
            return
null;
        }

       
$class = $this->app->getContentTypeFieldValue($type, 'inline_mod_handler_class');
        if (!
$class)
        {
            return
null;
        }

       
$class = $this->app->extendClass($class);

        return new
$class($type, $this->app, $this->request);
    }
}