Oznámení
Provoz fóra byl ukončen
figureModule a videa
Upozornění: Tohle vlákno je hodně staré.
před 10 lety
- Blizzy
- Člen | 149
Vytvořil jsem image handler, který umí vytvářet YouTube videa. Vypadá následovně:
// user image handler for Youtube videos
function youtubeHandler($invocation, $image, $link)
{
if ($image->URL == NULL) return FALSE;
if (!preg_match('#^http://(www\.)?youtube\.com/watch\?.*v=([0-9a-zA-Z\-\_]{11,}).*$#i', $image->URL, $matches))
return $invocation->proceed();
$texy = $invocation->getTexy();
$ytURL = 'http://www.youtube.com/v/' . $matches[2];
$ytWidth = $image->width ? $image->width : 480;
$ytHeight = $image->height ? $image->height : (270+25);
$ytAlt = $image->modifier->title;
$elObject = TexyHtml::el('object', array(
'width' => $ytWidth,
'height' => $ytHeight
));
$elObject->create('param', array(
'name' => 'movie',
'value' => $ytURL
));
$elObject->create('param', array(
'name' => 'wmode',
'value' => 'transparent'
));
$elObject->create('embed', array(
'src' => $ytURL,
'type' => 'application/x-shockwave-flash',
'wmode' => 'transparent',
'width' => $ytWidth,
'height' => $ytHeight
));
$elDiv = TexyHtml::el('div');
$elDiv->attrs['class'][] = 'youtube-video';
$elDiv->add($elObject);
$image->modifier->decorate($texy, $elDiv);
return $elDiv;
}
Chtěl bych vytvářet videa s popiskou podobně jako obrázky s popiskou.
Problém je v tom, že solve
ve figureModule při vytváření
obrázku s popiskou zavolá funkci imageModule->solve
a tím
pádem nespustí můj handler na videa. Zkoušel jsem tedy vytvořit vlastní
figure handler, nicméně jsem nepřišel na to, jak ho odkázat na můj image
handler na YouTube videa (dělal jsem přitom různé pokusy s
invokeHandlers
a invokeAroundHandlers
).
Jak takový figure handler vytvořit nebo alespoň jak z jednoho handleru odkázat na druhý?