fix TextFormatter seminarymedia tagging
This commit is contained in:
parent
7d0fbe9c9c
commit
bb2f531544
1 changed files with 10 additions and 10 deletions
|
|
@ -61,17 +61,17 @@
|
||||||
$string = nl2br(htmlspecialchars($string));
|
$string = nl2br(htmlspecialchars($string));
|
||||||
|
|
||||||
// Handle Seminarymedia
|
// Handle Seminarymedia
|
||||||
preg_match_all('/\[seminarymedia:(\d+)\]/iu', $string, $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE);
|
$seminarymedia = array();
|
||||||
foreach($matches as &$match)
|
preg_match_all('/\[seminarymedia:(\d+)\]/iu', $string, $matches); //, PREG_SET_ORDER | PREG_OFFSET_CAPTURE);
|
||||||
|
$seminarymediaIds = array_unique($matches[1]);
|
||||||
|
foreach($seminarymediaIds as &$seminarymediaId)
|
||||||
{
|
{
|
||||||
// Get Seminary media
|
$replacement = null;
|
||||||
$seminarymediaId = intval($match[1][0]);
|
|
||||||
$htmlImage = null;
|
|
||||||
if(!is_null(\hhu\z\controllers\SeminaryRoleController::$seminary) && $this->loadMediaModel())
|
if(!is_null(\hhu\z\controllers\SeminaryRoleController::$seminary) && $this->loadMediaModel())
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
$medium = self::$Media->getSeminaryMediaById($seminarymediaId);
|
$medium = self::$Media->getSeminaryMediaById($seminarymediaId);
|
||||||
$htmlImage = sprintf(
|
$replacement = sprintf(
|
||||||
'<img src="%s" alt="%s" />',
|
'<img src="%s" alt="%s" />',
|
||||||
$this->linker->link(array('media','seminary', \hhu\z\controllers\SeminaryRoleController::$seminary['url'],$medium['url'])),
|
$this->linker->link(array('media','seminary', \hhu\z\controllers\SeminaryRoleController::$seminary['url'],$medium['url'])),
|
||||||
$medium['description']
|
$medium['description']
|
||||||
|
|
@ -81,10 +81,10 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Replace placholder
|
$seminarymedia[$seminarymediaId] = $replacement;
|
||||||
$startPos = mb_strlen(substr($string, 0, $match[0][1]), 'UTF-8');
|
}
|
||||||
$endPos = $startPos + mb_strlen($match[0][0]);
|
foreach($seminarymedia as $seminarymediaId => $replacement) {
|
||||||
$string = mb_substr($string, 0, $startPos, 'UTF-8'). $htmlImage . mb_substr($string, $endPos, null, 'UTF-8');
|
$string = str_replace("[seminarymedia:$seminarymediaId]", $replacement, $string);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue