Skip to content

Commit

Permalink
Version 6.0.0-rc7
Browse files Browse the repository at this point in the history
  • Loading branch information
HitkoDev committed Dec 20, 2016
1 parent cdf8571 commit 4bdfeda
Show file tree
Hide file tree
Showing 7 changed files with 62 additions and 32 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
### 6.0.0 rc 7 - *20. December 2016*
* customise nothumb colour
* fix HTML5 player template
* update the video.js

### 6.0.0 rc 6 - *16. December 2016*
* add bindings to close a player
* add an option to hide pop-up footer
Expand Down
2 changes: 1 addition & 1 deletion _build/build.transport.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
define('PKG_NAME','Videobox');
define('PKG_NAME_LOWER','videobox');
define('PKG_VERSION','6.0.0');
define('PKG_RELEASE','rc6');
define('PKG_RELEASE','rc7');

/* define build paths */
$root = dirname(dirname(__FILE__)).'/';
Expand Down
2 changes: 1 addition & 1 deletion _build/data/properties/properties.videobox.php
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
<?php
$properties = json_decode('[{"name":"cache","desc":"Cache thumbnails","xtype":"combo-boolean","options":[],"value":true,"lexicon":"","overridden":false,"desc_trans":"Cache thumbnails","area":"system","area_trans":"System","menu":null},{"name":"processors","desc":"Comma-separated list of processors to use for parsing input","xtype":"textfield","options":[],"value":"Twitch, YouTube, Vimeo, SoundCloud, HTML5","lexicon":"","overridden":false,"desc_trans":"Comma-separated list of processors to use for parsing input","area":"system","area_trans":"System","menu":null},{"name":"color","desc":"Player colour (where applicable), hex format","xtype":"textfield","options":[],"value":"50bf82","lexicon":"","overridden":false,"desc_trans":"Player colour (where applicable), hex format","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"delimiter","desc":"Delimiter for multiple links","xtype":"textfield","options":[],"value":", ","lexicon":"","overridden":false,"desc_trans":"Delimiter for multiple links","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"hColor","desc":"Hover colour for Videobox content","xtype":"textfield","options":[],"value":"50bf82","lexicon":"","overridden":false,"desc_trans":"Hover colour for Videobox content","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"multipleDisplay","desc":"Display method for multiple videos","xtype":"list","options":[{"text":"Gallery","value":"gallery","name":"Gallery"},{"text":"Links","value":"links","name":"Links"},{"text":"Slider","value":"slider","name":"Slider"}],"value":"gallery","lexicon":"","overridden":false,"desc_trans":"Display method for multiple videos","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"pHeight","desc":"Player height","xtype":"textfield","options":[],"value":"405","lexicon":"","overridden":false,"desc_trans":"Player height","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"pWidth","desc":"Player width","xtype":"textfield","options":[],"value":"720","lexicon":"","overridden":false,"desc_trans":"Player width","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"perPage","desc":"Number of thumbnails per page (0 means all)","xtype":"textfield","options":[],"value":"12","lexicon":"","overridden":false,"desc_trans":"Number of thumbnails per page (0 means all)","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"player","desc":"Player effect","xtype":"list","options":[{"text":"Lightbox","value":"videobox","name":"Lightbox"},{"text":"Inline","value":"vbinline","name":"Inline"}],"value":"videobox","lexicon":"","overridden":false,"desc_trans":"Player effect","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"singleDisplay","desc":"Display method for single video","xtype":"list","options":[{"text":"Direct player","value":"player","name":"Direct player"},{"text":"Box","value":"box","name":"Box"},{"text":"Link","value":"links","name":"Link"}],"value":"player","lexicon":"","overridden":false,"desc_trans":"Display method for single video","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tColor","desc":"Main (text) colour for Videobox content","xtype":"textfield","options":[],"value":"005723","lexicon":"","overridden":false,"desc_trans":"Main (text) colour for Videobox content","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tHeight","desc":"Thumbnail height","xtype":"textfield","options":[],"value":"360","lexicon":"","overridden":false,"desc_trans":"Thumbnail height","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tWidth","desc":"Thumbnail width","xtype":"textfield","options":[],"value":"480","lexicon":"","overridden":false,"desc_trans":"Thumbnail width","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"boxTpl","desc":"Template for Box display","xtype":"textfield","options":[],"value":"vb.boxTpl","lexicon":"","overridden":false,"desc_trans":"Template for Box display","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"galleryItemTpl","desc":"Template for gallery item","xtype":"textfield","options":[],"value":"vb.galleryItemTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery item","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"galleryTpl","desc":"Template for gallery wraper","xtype":"textfield","options":[],"value":"vb.galleryTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery wraper","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"linkTpl","desc":"Template for link","xtype":"textfield","options":[],"value":"vb.linkTpl","lexicon":"","overridden":false,"desc_trans":"Template for link","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"playerTpl","desc":"","xtype":"textfield","options":[],"value":"vb.playerTpl","lexicon":"","overridden":false,"desc_trans":"","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"sliderItemTpl","desc":"Template for slider item","xtype":"textfield","options":[],"value":"vb.galleryItemTpl","lexicon":"","overridden":false,"desc_trans":"Template for slider item","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"sliderTpl","desc":"Wrapper template for slider","xtype":"textfield","options":[],"value":"vb.sliderTpl","lexicon":"","overridden":false,"desc_trans":"Wrapper template for slider","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"thumbTpl","desc":"Template for gallery thumbnails","xtype":"textfield","options":[],"value":"vb.thumbTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery thumbnails","area":"vb.templates","area_trans":"vb.templates","menu":null}]', true);
$properties = json_decode('[{"name":"cache","desc":"Cache thumbnails","xtype":"combo-boolean","options":[],"value":true,"lexicon":"","overridden":false,"desc_trans":"Cache thumbnails","area":"system","area_trans":"System","menu":null},{"name":"processors","desc":"Comma-separated list of processors to use for parsing input","xtype":"textfield","options":[],"value":"Twitch, YouTube, Vimeo, SoundCloud, HTML5","lexicon":"","overridden":false,"desc_trans":"Comma-separated list of processors to use for parsing input","area":"system","area_trans":"System","menu":null},{"name":"bgColor","desc":"Colour for missing thumbnails","xtype":"textfield","options":[],"value":"00a645","lexicon":"","overridden":false,"desc_trans":"Colour for missing thumbnails","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"color","desc":"Player colour (where applicable), hex format","xtype":"textfield","options":[],"value":"50bf82","lexicon":"","overridden":false,"desc_trans":"Player colour (where applicable), hex format","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"delimiter","desc":"Delimiter for multiple links","xtype":"textfield","options":[],"value":", ","lexicon":"","overridden":false,"desc_trans":"Delimiter for multiple links","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"hColor","desc":"Hover colour for Videobox content","xtype":"textfield","options":[],"value":"50bf82","lexicon":"","overridden":false,"desc_trans":"Hover colour for Videobox content","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"multipleDisplay","desc":"Display method for multiple videos","xtype":"list","options":[{"text":"Gallery","value":"gallery","name":"Gallery"},{"text":"Links","value":"links","name":"Links"},{"text":"Slider","value":"slider","name":"Slider"}],"value":"gallery","lexicon":"","overridden":false,"desc_trans":"Display method for multiple videos","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"pHeight","desc":"Player height","xtype":"textfield","options":[],"value":"405","lexicon":"","overridden":false,"desc_trans":"Player height","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"pWidth","desc":"Player width","xtype":"textfield","options":[],"value":"720","lexicon":"","overridden":false,"desc_trans":"Player width","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"perPage","desc":"Number of thumbnails per page (0 means all)","xtype":"textfield","options":[],"value":"12","lexicon":"","overridden":false,"desc_trans":"Number of thumbnails per page (0 means all)","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"player","desc":"Player effect","xtype":"list","options":[{"text":"Lightbox","value":"videobox","name":"Lightbox"},{"text":"Inline","value":"vbinline","name":"Inline"}],"value":"videobox","lexicon":"","overridden":false,"desc_trans":"Player effect","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"singleDisplay","desc":"Display method for single video","xtype":"list","options":[{"text":"Direct player","value":"player","name":"Direct player"},{"text":"Box","value":"box","name":"Box"},{"text":"Link","value":"links","name":"Link"}],"value":"player","lexicon":"","overridden":false,"desc_trans":"Display method for single video","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tColor","desc":"Main (text) colour for Videobox content","xtype":"textfield","options":[],"value":"005723","lexicon":"","overridden":false,"desc_trans":"Main (text) colour for Videobox content","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tHeight","desc":"Thumbnail height","xtype":"textfield","options":[],"value":"360","lexicon":"","overridden":false,"desc_trans":"Thumbnail height","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"tWidth","desc":"Thumbnail width","xtype":"textfield","options":[],"value":"480","lexicon":"","overridden":false,"desc_trans":"Thumbnail width","area":"vb.appearance","area_trans":"vb.appearance","menu":null},{"name":"boxTpl","desc":"Template for Box display","xtype":"textfield","options":[],"value":"vb.boxTpl","lexicon":"","overridden":false,"desc_trans":"Template for Box display","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"galleryItemTpl","desc":"Template for gallery item","xtype":"textfield","options":[],"value":"vb.galleryItemTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery item","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"galleryTpl","desc":"Template for gallery wraper","xtype":"textfield","options":[],"value":"vb.galleryTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery wraper","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"linkTpl","desc":"Template for link","xtype":"textfield","options":[],"value":"vb.linkTpl","lexicon":"","overridden":false,"desc_trans":"Template for link","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"playerTpl","desc":"","xtype":"textfield","options":[],"value":"vb.playerTpl","lexicon":"","overridden":false,"desc_trans":"","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"sliderItemTpl","desc":"Template for slider item","xtype":"textfield","options":[],"value":"vb.galleryItemTpl","lexicon":"","overridden":false,"desc_trans":"Template for slider item","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"sliderTpl","desc":"Wrapper template for slider","xtype":"textfield","options":[],"value":"vb.sliderTpl","lexicon":"","overridden":false,"desc_trans":"Wrapper template for slider","area":"vb.templates","area_trans":"vb.templates","menu":null},{"name":"thumbTpl","desc":"Template for gallery thumbnails","xtype":"textfield","options":[],"value":"vb.thumbTpl","lexicon":"","overridden":false,"desc_trans":"Template for gallery thumbnails","area":"vb.templates","area_trans":"vb.templates","menu":null}]', true);
return $properties;
31 changes: 16 additions & 15 deletions core/components/videobox/elements/chunks/chunk.html5player.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -7,39 +7,40 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="[[+assets]]css/videobox.min.css" rel="stylesheet" type="text/css">
<style>
[[+style_override]]
</style>
<style>[[+style_override]]</style>
</head>
<body class="vb-html5-player">
<video id="vb-html5-video" class="video-js [[+type]] vjs-default-skin" controls="controls" preload="auto" poster="[[+poster]]"
data-setup='{}'>
<video id="vb-html5-video" class="video-js [[+type]] vjs-default-skin" controls="controls" preload="auto" poster="[[+poster]]">
[[+sources]]
<p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="http://videojs.com/html5-video-support/"
target="_blank">supports HTML5 video</a></p>
</video>
<script src="[[+assets]]video-js/video.min.js"></script>
<script>
var vid = videojs("vb-html5-video");
<script>
var auto = !!([[+auto]]);
var vid = videojs(document.getElementById("vb-html5-video"), {
autoplay: auto,
poster: "[[+poster]]",
preload: "auto",
controls: true
});
var start = [[+start]];
vid.on('loadedmetadata', function(){
if(start > 0) vid.currentTime(start);
var auto = [[+auto]];
if(auto) vid.play();
vid.on('loadedmetadata', function () {
if (start > 0) vid.currentTime(start);
});
var end = [[+end]];
var onEnd = function(){
if(vid.currentTime() >= end) {
var onEnd = function () {
if (vid.currentTime() >= end) {
vid.pause();
vid.off('timeupdate', onEnd);
}
};
if(end > 0) vid.on('timeupdate', onEnd);
if (end > 0) vid.on('timeupdate', onEnd);
</script>
</body>
Expand Down
13 changes: 4 additions & 9 deletions core/components/videobox/elements/snippets/snippet.videobox.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,12 @@
$v = $videobox->parseTemplate($scriptProperties['videos']);
if($v) $scriptProperties['videos'] = $v;
if(!isset($scriptProperties['videos'])) return;
$scriptProperties['color'] = trim(str_replace('#', '', $scriptProperties['color']));
if(strlen($scriptProperties['color']) != 6) $scriptProperties['color'] = '';
if(!$scriptProperties['color']) $scriptProperties['color'] = '00a645';
$scriptProperties['tColor'] = trim(str_replace('#', '', $scriptProperties['tColor']));
if(strlen($scriptProperties['tColor']) != 6) $scriptProperties['tColor'] = '';
if(!$scriptProperties['tColor']) $scriptProperties['tColor'] = '005723';
$scriptProperties['hColor'] = trim(str_replace('#', '', $scriptProperties['hColor']));
if(strlen($scriptProperties['hColor']) != 6) $scriptProperties['hColor'] = '';
if(!$scriptProperties['hColor']) $scriptProperties['hColor'] = '84d1a4';

$videobox->setConfig($scriptProperties);
$scriptProperties['color'] = $videobox->config['color'];
$scriptProperties['tColor'] = $videobox->config['tColor'];
$scriptProperties['hColor'] = $videobox->config['hColor'];
$scriptProperties['bgColor'] = $videobox->config['bgColor'];

$videos = explode('|,', $scriptProperties['videos']);

Expand Down
39 changes: 34 additions & 5 deletions core/components/videobox/model/videobox/videobox.class.php
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,21 @@ function setConfig(array $config = array()){
'assets_path' => $this->modx->getOption('videobox.assets_path', null, MODX_ASSETS_PATH.'components/videobox/'),
'core_path' => $this->modx->getOption('videobox.core_path', null, $this->modx->getOption('core_path').'components/videobox/')
), $config);

$this->setColor('color', '00a645');
$this->setColor('tColor', '005723');
$this->setColor('hColor', '84d1a4');
$this->setColor('bgColor', '00a645');

$this->processors = null;
}


function setColor($name, $default){
$this->config[$name] = trim(str_replace('#', '', $this->config[$name]));
if(strlen($this->config[$name]) != 6) $this->config[$name] = '';
if(!$this->config[$name]) $this->config[$name] = $default;
}

function getProcessors(){
if($this->processors) return $this->processors;

Expand Down Expand Up @@ -133,15 +145,17 @@ function videoThumbnail($video, $no_border = false, $n = 0) {
}

// If $video is a VideoboxAdapter object, get its data, otherwise get nobg data
$isNobg = false;
if($video instanceof VideoboxAdapter){
$nobg = 'nobg_' . ($video->type == 'a' ? 'audio' : 'video');
$hash = md5($video->id . $name);
$img = $video->getThumb();
} else {
// Video is a NOBG name
$nobg = $video;
$hash = md5($video . $name);
$hash = md5($video . $name . '-' . $this->config['bgColor']);
$img = array($this->config['assets_path'] . 'img/'.$nobg.'.png', IMAGETYPE_PNG);
$isNobg = true;
}

if(!is_dir($this->config['assets_path'] . 'cache')) mkdir($this->config['assets_path'] . 'cache');
Expand Down Expand Up @@ -245,8 +259,13 @@ function videoThumbnail($video, $no_border = false, $n = 0) {
$tWidth = $imagedata[0];
$tHeight = $imagedata[1];
$newimg = imagecreatetruecolor($tWidth, $tHeight);
$black = imagecolorallocate($newimg, 0, 0, 0);
imagefilledrectangle($newimg, 0, 0, $tWidth, $tHeight, $black);
if($isNobg){
list($r, $g, $b) = sscanf($this->config['bgColor'], "%02x%02x%02x");
$bgColor = imagecolorallocate($newimg, $r, $g, $b);
} else {
$bgColor = imagecolorallocate($newimg, 0, 0, 0);
}
imagefilledrectangle($newimg, 0, 0, $tWidth, $tHeight, $bgColor);
imagecopyresampled($newimg, $src_img, 0, 0, $b_l, $b_t, $tWidth, $tHeight, $tWidth, $tHeight);
} else {

Expand All @@ -268,6 +287,11 @@ function videoThumbnail($video, $no_border = false, $n = 0) {
$newimg = imagecreatetruecolor($tWidth, $tHeight);
$black = imagecolorallocate($newimg, 0, 0, 0);
imagefilledrectangle($newimg, 0, 0, $tWidth, $tHeight, $black);
if($isNobg){
list($r, $g, $b) = sscanf($this->config['bgColor'], "%02x%02x%02x");
$bgColor = imagecolorallocate($newimg, $r, $g, $b);
imagefilledrectangle($newimg, $off_w, $off_h, $new_w + $off_w, $new_h + $off_h, $bgColor);
}
imagecopyresampled($newimg, $src_img, $off_w, $off_h, $b_l, $b_t, $new_w, $new_h, $imagedata[0], $imagedata[1]);
}

Expand Down Expand Up @@ -354,7 +378,12 @@ function videoThumbnail($video, $no_border = false, $n = 0) {
$new_h = (int)$new_h;
$off_w = (int)(($tWidth - $new_w)/2);
$off_h = (int)(($tHeight - $new_h)/2);


if($isNobg){
$imgM->setImageBackgroundColor(new ImagickPixel('#'.$this->config['bgColor']));
$imgM->setImageAlphaChannel(Imagick::ALPHACHANNEL_REMOVE);
$imgM->mergeImageLayers(Imagick::LAYERMETHOD_FLATTEN);
}
$imgM->setImageBackgroundColor(new ImagickPixel("rgb(0, 0, 0)"));
$imgM->resizeImage($new_w, $new_h, imagick::FILTER_CATROM, 1);
$imgM->extentImage($tWidth, $tHeight, -$off_w, -$off_h);
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"license": "GPL-3.0",
"readme": "README.md",
"version": "6.0.0-rc6",
"version": "6.0.0-rc7",
"name": "Videobox-MODX",
"copyright": "Hitko",
"homepage": "https://hitko.eu/videobox/",
Expand Down

0 comments on commit 4bdfeda

Please sign in to comment.