![[XB] Thread Type Vote Competition](/community/data/resource_icons/9/9099.jpg?1732666087) 
				
			
			Error: Class "OzzModz\ThreadTypeCompetition\Util\Time" not found in src/addons/OzzModz/ThreadTypeCompetitionVote/ThreadType/Competition.php at line 359
OzzModz\ThreadTypeCompetitionVote\ThreadType\Competition->processExtraDataSimple() in src/XF/Service/Thread/Creator.php at line 300
XF\Service\Thread\Creator->setDiscussionTypeAndDataInternal() in src/XF/Service/Thread/Creator.php at line 207
XF\Service\Thread\Creator->setDiscussionTypeAndData() in src/XF/Pub/Controller/Forum.php at line 662
XF\Pub\Controller\Forum->setupThreadCreate() in src/XF/Pub/Controller/Forum.php at line 884
XF\Pub\Controller\Forum->actionPostThread() in src/XF/Mvc/Dispatcher.php at line 352
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 258
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 115
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 57
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2487
XF\App->run() in src/XF.php at line 524
XF::runApp() in index.php at line 202.0.2 Patch Level 3:
Fix: incorrect class import (reported by @ekool)
<?php
namespace XF\Repository;
use XF\Mvc\Entity\Repository;
class ThreadType extends Repository
{
    /**
     * Filters thread types to those that can be converted individually (non-bulk)
     */
    const FILTER_SINGLE_CONVERTIBLE = 0x1;
    /**
     * Filters thread type to those that can be bulk converted.
     */
    const FILTER_BULK_CONVERTIBLE = 0x2;
    public function rebuildThreadTypeCache(): array
    {
        $cache = $this->db()->fetchPairs("
            SELECT tt.thread_type_id, tt.handler_class
            FROM xf_thread_type AS tt
            LEFT JOIN xf_addon AS addon ON (tt.addon_id = addon.addon_id)
            WHERE (addon.active = 1 OR tt.addon_id = '')
        ");
        \XF::registry()->set('threadTypes', $cache);
        return $cache;
    }
    public function getThreadTypeListData(array $threadTypeIds = null, int $filters = 0): array
    {
        if ($threadTypeIds === null)
        {
            $threadTypeIds = array_keys($this->app()->container('threadTypes'));
        }
        $listData = [];
        foreach ($threadTypeIds AS $threadTypeId)
        {
if ($threadTypeId != 'ozzmodz_ttcv_competition')
{
            if ($typeHandler = $this->app()->threadType($threadTypeId))
            {
                if ($filters & self::FILTER_SINGLE_CONVERTIBLE && !$typeHandler->canConvertThreadToType(false))
                {
                    continue;
                }
                if ($filters & self::FILTER_BULK_CONVERTIBLE && !$typeHandler->canConvertThreadToType(true))
                {
                    continue;
                }
                $listData[$threadTypeId] = $typeHandler->getTypeTitle();
            }
}
        }
        return $listData;
    }
}A reviewer said: so the voting items are intermixed with random discussion
We use essential cookies to make this site work, and optional cookies to enhance your experience.