public function resolveTeaser(Teaser $teaser, $language)
    {
        $parameters = [];

        if ($this->teaserManager->isPublished($teaser, $language)) {
            $parameters['status'] = $this->teaserManager->isAsync($teaser, $language) ? 'async' : 'online';
        }

        if ($this->teaserManager->isInstance($teaser)) {
            $parameters['instance'] = $this->teaserManager->isInstanceMaster($teaser) ? 'master' : 'slave';
        }

        $element = $this->elementService->findElement($teaser->getTypeId());

        if (!count($parameters)) {
            return $this->resolveElement($element);
        }

        $elementtype = $this->elementService->findElementtype($element);

        $parameters['icon'] = $elementtype->getIcon();

        return $this->router->generate('elements_icon', $parameters);
    }