Skip to content

Commit

Permalink
Add Download File feature
Browse files Browse the repository at this point in the history
  • Loading branch information
zerocrates committed Mar 10, 2018
1 parent fb33600 commit 3fa7c1d
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 2 deletions.
14 changes: 14 additions & 0 deletions Html5MediaPlugin.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ public function hookInstall()
'controls' => true,
'loop' => false,
'preload' => 'metadata',
'download' => false,
)
)
);
Expand Down Expand Up @@ -82,6 +83,9 @@ public function hookUpgrade($args)
if (version_compare($oldVersion, '2.6', '<')) {
$settings['audio']['options']['responsive'] = false;
}
if (version_compare($oldVersion, '2.7', '<')) {
$settings['common']['options']['download'] = false;
}
set_option('html5_media_settings', serialize($settings));
}

Expand Down Expand Up @@ -151,6 +155,7 @@ public function hookConfig()

$common = $_POST['common'];
$settings['common']['options']['preload'] = $common['options']['preload'];
$settings['common']['options']['download'] = (bool) $common['options']['download'];

set_option('html5_media_settings', serialize($settings));
}
Expand Down Expand Up @@ -272,11 +277,20 @@ private static function _media($type, $file, $options)
$tracks .= '<track kind="' . $kind . '" src="' . $trackSrc . '" srclang="' . $language . '"' . $labelPart . '>';
}

if ($options['download']) {
$download = '<p class="html5media-download"><a href="' . $filename . '" download>'
. __('Download File')
. '</a></p>';
} else {
$download = '';
}

return <<<HTML
<div class="$class">
<$type id="html5-media-$i" src="$filename"$mediaOptions>
$tracks
</$type>
$download
</div>
<script type="text/javascript">
jQuery('#html5-media-$i').mediaelementplayer();
Expand Down
8 changes: 8 additions & 0 deletions config-form.php
Original file line number Diff line number Diff line change
Expand Up @@ -128,4 +128,12 @@
?>
</div>
</div>
<div class="field">
<div class="two columns alpha">
<?php echo $view->formLabel('common[options][download]', __('Show Download Link')); ?>
</div>
<div class="inputs five columns omega">
<?php echo $view->formCheckbox('common[options][download]', null, array('checked' => $common['options']['download'])); ?>
</div>
</div>
</div>
4 changes: 2 additions & 2 deletions plugin.ini
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ license="GPLv3"
link="https://github.com/zerocrates/Html5Media#readme"
support_link="https://github.com/zerocrates/Html5Media/issues"
omeka_minimum_version="2.0"
omeka_target_version="2.2"
version="2.6"
omeka_target_version="2.6"
version="2.7"

0 comments on commit 3fa7c1d

Please sign in to comment.