summaryrefslogtreecommitdiff
path: root/inc/parser
diff options
context:
space:
mode:
authorGerrit Uitslag <klapinklapin@gmail.com>2014-02-23 22:07:26 +0100
committerGerrit Uitslag <klapinklapin@gmail.com>2014-02-23 22:07:26 +0100
commit8fcb305db0081dacd8e8ad0583da5ecc6c6837dc (patch)
tree928fc44fde692835bca9dd304ebcb17cdd710ac8 /inc/parser
parent4d5954c8d1f8bcc5450f8cf70d8139cf5a1e697d (diff)
parent5d873dd4ce31c79403a01ac0e40ff148be282592 (diff)
downloadrpg-8fcb305db0081dacd8e8ad0583da5ecc6c6837dc.tar.gz
rpg-8fcb305db0081dacd8e8ad0583da5ecc6c6837dc.tar.bz2
Merge remote-tracking branch 'origin/master' into diff_navigation
Conflicts: inc/html.php
Diffstat (limited to 'inc/parser')
-rw-r--r--inc/parser/xhtml.php57
1 files changed, 22 insertions, 35 deletions
diff --git a/inc/parser/xhtml.php b/inc/parser/xhtml.php
index 80701cd2e..315b4d640 100644
--- a/inc/parser/xhtml.php
+++ b/inc/parser/xhtml.php
@@ -562,6 +562,12 @@ class Doku_Renderer_xhtml extends Doku_Renderer {
* $search,$returnonly & $linktype are not for the renderer but are used
* elsewhere - no need to implement them in other renderers
*
+ * @param string $id pageid
+ * @param string|null $name link name
+ * @param string|null $search adds search url param
+ * @param bool $returnonly whether to return html or write to doc attribute
+ * @param string $linktype type to set use of headings
+ * @return void|string writes to doc attribute or returns html depends on $returnonly
* @author Andreas Gohr <andi@splitbrain.org>
*/
function internallink($id, $name = null, $search=null,$returnonly=false,$linktype='content') {
@@ -1096,48 +1102,30 @@ class Doku_Renderer_xhtml extends Doku_Renderer {
$ret .= ' />';
- }elseif(media_supportedav($mime, 'video')){
+ }elseif(media_supportedav($mime, 'video') || media_supportedav($mime, 'audio')){
// first get the $title
- if (!is_null($title)) {
- $title = $this->_xmlEntities($title);
- }
- if (!$title) {
- // just show the sourcename
- $title = $this->_xmlEntities(utf8_basename(noNS($src)));
- }
+ $title = !is_null($title) ? $this->_xmlEntities($title) : false;
if (!$render) {
- // if the video is not supposed to be rendered
- // return the title of the video
- return $title;
+ // if the file is not supposed to be rendered
+ // return the title of the file (just the sourcename if there is no title)
+ return $title ? $title : $this->_xmlEntities(utf8_basename(noNS($src)));
}
$att = array();
$att['class'] = "media$align";
-
- //add video(s)
- $ret .= $this->_video($src, $width, $height, $att);
-
- }elseif(media_supportedav($mime, 'audio')){
- // first get the $title
- if (!is_null($title)) {
- $title = $this->_xmlEntities($title);
+ if ($title) {
+ $att['title'] = $title;
}
- if (!$title) {
- // just show the sourcename
- $title = $this->_xmlEntities(utf8_basename(noNS($src)));
+
+ if (media_supportedav($mime, 'video')) {
+ //add video
+ $ret .= $this->_video($src, $width, $height, $att);
}
- if (!$render) {
- // if the video is not supposed to be rendered
- // return the title of the video
- return $title;
+ if (media_supportedav($mime, 'audio')) {
+ //add audio
+ $ret .= $this->_audio($src, $att);
}
- $att = array();
- $att['class'] = "media$align";
-
- //add audio
- $ret .= $this->_audio($src, $att);
-
}elseif($mime == 'application/x-shockwave-flash'){
if (!$render) {
// if the flash is not supposed to be rendered
@@ -1282,7 +1270,6 @@ class Doku_Renderer_xhtml extends Doku_Renderer {
* @return string
*/
function _video($src,$width,$height,$atts=null){
-
// prepare width and height
if(is_null($atts)) $atts = array();
$atts['width'] = (int) $width;
@@ -1309,7 +1296,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer {
// output source for each alternative video format
foreach($alternatives as $mime => $file) {
$url = ml($file,array('cache'=>$cache),true,'&');
- $title = $this->_xmlEntities(utf8_basename(noNS($file)));
+ $title = $atts['title'] ? $atts['title'] : $this->_xmlEntities(utf8_basename(noNS($file)));
$out .= '<source src="'.hsc($url).'" type="'.$mime.'" />'.NL;
// alternative content (just a link to the file)
@@ -1345,7 +1332,7 @@ class Doku_Renderer_xhtml extends Doku_Renderer {
// output source for each alternative audio format
foreach($alternatives as $mime => $file) {
$url = ml($file,array('cache'=>$cache),true,'&');
- $title = $this->_xmlEntities(utf8_basename(noNS($file)));
+ $title = $atts['title'] ? $atts['title'] : $this->_xmlEntities(utf8_basename(noNS($file)));
$out .= '<source src="'.hsc($url).'" type="'.$mime.'" />'.NL;
// alternative content (just a link to the file)