resolve conflict

This commit is contained in:
Mike Ng
2018-01-08 15:57:13 +04:00
parent bddc3781ba
commit 30f49bdd35
27 changed files with 564 additions and 467 deletions

View File

@@ -33,9 +33,9 @@ class SubdefsController extends Controller
$subviews_mapping = $this->getSubviewsMapping();
return $this->render('admin/subdefs.html.twig', [
'databox' => $databox,
'subdefs' => $databox->get_subdef_structure(),
'config' => $config,
'databox' => $databox,
'subdefs' => $databox->get_subdef_structure(),
'config' => $config,
'subviews_mapping' => $subviews_mapping
]);
}
@@ -53,7 +53,7 @@ class SubdefsController extends Controller
$databox = $this->findDataboxById((int) $sbas_id);
$add_subdef = ['class' => null, 'name' => null, 'group' => null, 'mediaType' => null, 'presets' => null];
$add_subdef = ['class' => null, 'name' => null, 'group' => null, 'mediaType' => null, 'presets' => null];
foreach ($add_subdef as $k => $v) {
if (!isset($toadd_subdef[$k]) || trim($toadd_subdef[$k]) === '') {
unset($add_subdef[$k]);
@@ -68,7 +68,8 @@ class SubdefsController extends Controller
$name = $delete_subef[1];
$subdefs = $databox->get_subdef_structure();
$subdefs->delete_subdef($group, $name);
} elseif (count($add_subdef) === 5) {
}
elseif (count($add_subdef) === 5) {
$subdefs = $databox->get_subdef_structure();
$group = $add_subdef['group'];
@@ -87,7 +88,7 @@ class SubdefsController extends Controller
$config = $this->getConfiguration();
//On applique directement les valeurs du preset à la sous def
switch($mediatype) {
switch ($mediatype) {
case Subdef::TYPE_IMAGE :
$options["path"] = "";
$options["meta"] = true;
@@ -98,7 +99,7 @@ class SubdefsController extends Controller
$options[Image::OPTION_FLATTEN] = $config["image"]["definitions"][$preset][Image::OPTION_FLATTEN];
$options[Image::OPTION_QUALITY] = $config["image"]["definitions"][$preset][Image::OPTION_QUALITY];
$options[Image::OPTION_ICODEC] = $config["image"]["definitions"][$preset][Image::OPTION_ICODEC];
foreach($config["image"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
foreach ($config["image"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
$options[Subdef::OPTION_DEVICE][] = $devices;
}
break;
@@ -114,7 +115,7 @@ class SubdefsController extends Controller
$options[Video::OPTION_FRAMERATE] = $config["video"]["definitions"][$preset][Video::OPTION_FRAMERATE];
$options[Video::OPTION_VCODEC] = $config["video"]["definitions"][$preset][Video::OPTION_VCODEC];
$options[Video::OPTION_ACODEC] = $config["video"]["definitions"][$preset][Video::OPTION_ACODEC];
foreach($config["video"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
foreach ($config["video"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
$options[Subdef::OPTION_DEVICE][] = $devices;
}
break;
@@ -122,7 +123,7 @@ class SubdefsController extends Controller
$options["path"] = "";
$options["meta"] = true;
$options["mediatype"] = $mediatype;
foreach($config["document"]["definitions"][$preset]["devices"] as $devices) {
foreach ($config["document"]["definitions"][$preset]["devices"] as $devices) {
$options["devices"][] = $devices;
}
break;
@@ -132,7 +133,7 @@ class SubdefsController extends Controller
$options["mediatype"] = $mediatype;
$options[Gif::OPTION_SIZE] = $config["gif"]["definitions"][$preset][Gif::OPTION_SIZE];
$options[Gif::OPTION_DELAY] = $config["gif"]["definitions"][$preset][Gif::OPTION_DELAY];
foreach($config["gif"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
foreach ($config["gif"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
$options[Subdef::OPTION_DEVICE][] = $devices;
}
break;
@@ -143,7 +144,7 @@ class SubdefsController extends Controller
$options[Audio::OPTION_AUDIOBITRATE] = $config["audio"]["definitions"][$preset][Audio::OPTION_AUDIOBITRATE];
$options[Audio::OPTION_AUDIOSAMPLERATE] = $config["audio"]["definitions"][$preset][Audio::OPTION_AUDIOSAMPLERATE];
$options[Audio::OPTION_ACODEC] = $config["audio"]["definitions"][$preset][Audio::OPTION_ACODEC];
foreach($config["audio"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
foreach ($config["audio"]["definitions"][$preset][Subdef::OPTION_DEVICE] as $devices) {
$options[Subdef::OPTION_DEVICE][] = $devices;
}
break;
@@ -206,13 +207,13 @@ class SubdefsController extends Controller
*/
protected function getSubviewsMapping()
{
$mapping = array(
Type::TYPE_IMAGE => array(Subdef::TYPE_IMAGE),
Type::TYPE_VIDEO => array(Subdef::TYPE_IMAGE, Subdef::TYPE_VIDEO, Subdef::TYPE_ANIMATION),
Type::TYPE_AUDIO => array(Subdef::TYPE_IMAGE, Subdef::TYPE_AUDIO),
Type::TYPE_DOCUMENT => array(Subdef::TYPE_IMAGE, Subdef::TYPE_FLEXPAPER),
Type::TYPE_FLASH => array(Subdef::TYPE_IMAGE)
);
$mapping = [
Type::TYPE_IMAGE => [Subdef::TYPE_IMAGE],
Type::TYPE_VIDEO => [Subdef::TYPE_IMAGE, Subdef::TYPE_VIDEO, Subdef::TYPE_ANIMATION],
Type::TYPE_AUDIO => [Subdef::TYPE_IMAGE, Subdef::TYPE_AUDIO],
Type::TYPE_DOCUMENT => [Subdef::TYPE_IMAGE, Subdef::TYPE_FLEXPAPER],
Type::TYPE_FLASH => [Subdef::TYPE_IMAGE]
];
return $mapping;
}
@@ -222,135 +223,135 @@ class SubdefsController extends Controller
*/
protected function getConfiguration()
{
$config = array(
Subdef::TYPE_IMAGE => array(
"definitions" => array(
"JPG" => null,
"160px JPG" => array(
$config = [
Subdef::TYPE_IMAGE => [
"definitions" => [
"JPG" => null,
"160px JPG" => [
Image::OPTION_SIZE => "160",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "jpeg",
Subdef::OPTION_DEVICE => ["all"]
),
"320 px JPG (thumbnail Phraseanet)" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"320 px JPG (thumbnail Phraseanet)" => [
Image::OPTION_SIZE => "320",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "jpeg",
Subdef::OPTION_DEVICE => ["all"]
),
"640px JPG" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"640px JPG" => [
Image::OPTION_SIZE => "640",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "jpeg",
Subdef::OPTION_DEVICE => ["all"]
),
"1280px JPG (preview Phraseanet)" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"1280px JPG (preview Phraseanet)" => [
Image::OPTION_SIZE => "1280",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "jpeg",
Subdef::OPTION_DEVICE => ["all"]
),
"2560px JPG" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"2560px JPG" => [
Image::OPTION_SIZE => "2560",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "jpeg",
Subdef::OPTION_DEVICE => ["all"]
),
"PNG" => null,
"160px PNG 8 bits" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"PNG" => null,
"160px PNG 8 bits" => [
Image::OPTION_SIZE => "160",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "png",
Subdef::OPTION_DEVICE => ["all"]
),
"320px PNG 8 bits" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"320px PNG 8 bits" => [
Image::OPTION_SIZE => "320",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "png",
Subdef::OPTION_DEVICE => ["all"]
),
"640px PNG 8 bits" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"640px PNG 8 bits" => [
Image::OPTION_SIZE => "640",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "png",
Subdef::OPTION_DEVICE => ["all"]
),
"1280px PNG 8 bits" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"1280px PNG 8 bits" => [
Image::OPTION_SIZE => "1280",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "png",
Subdef::OPTION_DEVICE => ["all"]
),
"2560px PNG 8 bits" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"2560px PNG 8 bits" => [
Image::OPTION_SIZE => "2560",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "png",
Subdef::OPTION_DEVICE => ["all"]
),
"TIFF" => null,
"1280 TIFF" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"TIFF" => null,
"1280 TIFF" => [
Image::OPTION_SIZE => "1280",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "tiff",
Subdef::OPTION_DEVICE => ["all"]
),
"2560px TIFF" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"2560px TIFF" => [
Image::OPTION_SIZE => "2560",
Image::OPTION_RESOLUTION => "75",
Image::OPTION_STRIP => "yes",
Image::OPTION_FLATTEN => "yes",
Image::OPTION_QUALITY => "75",
Image::OPTION_ICODEC => "tiff",
Subdef::OPTION_DEVICE => ["all"]
),
),
"form" => array(
Subdef::OPTION_DEVICE => ["all"]
],
],
"form" => [
Image::OPTION_SIZE => "slide",
Image::OPTION_RESOLUTION => "slide",
Image::OPTION_STRIP => "radio",
Image::OPTION_FLATTEN => "radio",
Image::OPTION_QUALITY => "slide",
Image::OPTION_ICODEC => "select",
Subdef::OPTION_DEVICE => "checkbox",
),
),
Subdef::TYPE_VIDEO => array(
"definitions" => array(
"video codec H264" => null,
"144P H264 128 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => "checkbox",
],
],
Subdef::TYPE_VIDEO => [
"definitions" => [
"video codec H264" => null,
"144P H264 128 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "128",
@@ -359,9 +360,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libx264",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"240P H264 256 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"240P H264 256 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "256",
@@ -370,9 +371,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libx264",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"360P H264 576 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"360P H264 576 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "576",
@@ -381,9 +382,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libtheora",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"480P H264 750 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"480P H264 750 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "750",
@@ -392,9 +393,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libx264",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"720P H264 1492 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"720P H264 1492 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "1492",
@@ -403,9 +404,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libx264",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"1080P H264 2420 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"1080P H264 2420 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "2420",
@@ -414,10 +415,10 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libx264",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"video codec libvpx" => null,
"144P webm 128 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"video codec libvpx" => null,
"144P webm 128 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "128",
@@ -426,9 +427,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"240P webm 256 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"240P webm 256 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "256",
@@ -437,9 +438,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"360P webm 576 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"360P webm 576 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "576",
@@ -448,9 +449,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"480P webm 750 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"480P webm 750 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "750",
@@ -459,9 +460,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"720P webm 1492 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"720P webm 1492 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "1492",
@@ -470,9 +471,9 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
"1080P webm 2420 kbps ACC 128kbps" => array(
Subdef::OPTION_DEVICE => ["all"]
],
"1080P webm 2420 kbps ACC 128kbps" => [
Video::OPTION_AUDIOBITRATE => "128",
Video::OPTION_AUDIOSAMPLERATE => "44100",
Video::OPTION_BITRATE => "2420",
@@ -481,10 +482,10 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "25",
Video::OPTION_VCODEC => "libvpx",
Video::OPTION_ACODEC => "libfaac",
Subdef::OPTION_DEVICE => ["all"]
),
),
"form" => array(
Subdef::OPTION_DEVICE => ["all"]
],
],
"form" => [
Video::OPTION_AUDIOBITRATE => "slide",
Video::OPTION_AUDIOSAMPLERATE => "select",
Video::OPTION_BITRATE => "slide",
@@ -493,67 +494,67 @@ class SubdefsController extends Controller
Video::OPTION_FRAMERATE => "slide",
Video::OPTION_VCODEC => "select",
Video::OPTION_ACODEC => "select",
Subdef::OPTION_DEVICE => "checkbox",
),
),
Subdef::TYPE_ANIMATION => array(
"definitions" => array(
"256 px fast 200 ms" => array(
Gif::OPTION_SIZE => "256",
Gif::OPTION_DELAY => "200",
Subdef::OPTION_DEVICE => ["all"]
),
"256 px very fast 120 ms" => array(
Gif::OPTION_SIZE => "256",
Gif::OPTION_DELAY => "120",
Subdef::OPTION_DEVICE => ["all"]
),
"320 px fast 200 ms" => array(
Gif::OPTION_SIZE => "320",
Gif::OPTION_DELAY => "200",
Subdef::OPTION_DEVICE => ["all"]
),
),
"form" => array(
Gif::OPTION_SIZE => "slide",
Gif::OPTION_DELAY => "slide",
Subdef::OPTION_DEVICE => "checkbox",
),
),
Subdef::TYPE_AUDIO => array(
"definitions" => array(
"Low AAC 96 kbit/s" => array(
Audio::OPTION_AUDIOBITRATE => "100",
Audio::OPTION_AUDIOSAMPLERATE => "8000",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
),
"Normal AAC 128 kbit/s" => array(
Audio::OPTION_AUDIOBITRATE => "180",
Audio::OPTION_AUDIOSAMPLERATE => "44100",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
),
"High AAC 320 kbit/s" => array(
Audio::OPTION_AUDIOBITRATE => "230",
Audio::OPTION_AUDIOSAMPLERATE => "50000",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
),
),
"form" => array(
Audio::OPTION_AUDIOBITRATE => "slide",
Audio::OPTION_AUDIOSAMPLERATE => "select",
Audio::OPTION_ACODEC => "select",
Subdef::OPTION_DEVICE => "checkbox",
),
),
Subdef::TYPE_FLEXPAPER => array(
"definitions" => array(
),
"form" => array(),
),
);
Subdef::OPTION_DEVICE => "checkbox",
],
],
Subdef::TYPE_ANIMATION => [
"definitions" => [
"256 px fast 200 ms" => [
Gif::OPTION_SIZE => "256",
Gif::OPTION_DELAY => "200",
Subdef::OPTION_DEVICE => ["all"]
],
"256 px very fast 120 ms" => [
Gif::OPTION_SIZE => "256",
Gif::OPTION_DELAY => "120",
Subdef::OPTION_DEVICE => ["all"]
],
"320 px fast 200 ms" => [
Gif::OPTION_SIZE => "320",
Gif::OPTION_DELAY => "200",
Subdef::OPTION_DEVICE => ["all"]
],
],
"form" => [
Gif::OPTION_SIZE => "slide",
Gif::OPTION_DELAY => "slide",
Subdef::OPTION_DEVICE => "checkbox",
],
],
Subdef::TYPE_AUDIO => [
"definitions" => [
"Low AAC 96 kbit/s" => [
Audio::OPTION_AUDIOBITRATE => "100",
Audio::OPTION_AUDIOSAMPLERATE => "8000",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
],
"Normal AAC 128 kbit/s" => [
Audio::OPTION_AUDIOBITRATE => "180",
Audio::OPTION_AUDIOSAMPLERATE => "44100",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
],
"High AAC 320 kbit/s" => [
Audio::OPTION_AUDIOBITRATE => "230",
Audio::OPTION_AUDIOSAMPLERATE => "50000",
Audio::OPTION_ACODEC => "libmp3lame",
Subdef::OPTION_DEVICE => ["all"]
],
],
"form" => [
Audio::OPTION_AUDIOBITRATE => "slide",
Audio::OPTION_AUDIOSAMPLERATE => "select",
Audio::OPTION_ACODEC => "select",
Subdef::OPTION_DEVICE => "checkbox",
],
],
Subdef::TYPE_FLEXPAPER => [
"definitions" => [
],
"form" => [],
],
];
return $config;
}

View File

@@ -41,7 +41,7 @@ class MoveCollectionController extends Controller
$settings = $this->app['settings'];
$userOrderSetting = $settings->getUserSetting($this->app->getAuthenticatedUser(), 'order_collection_by');
// a temporary array to sort the collections
$aName = array();
$aName = [];
list($ukey, $uorder) = ["order", SORT_ASC]; // default ORDER_BY_ADMIN
switch ($userOrderSetting) {
case $settings::ORDER_ALPHA_ASC :
@@ -52,9 +52,10 @@ class MoveCollectionController extends Controller
break;
}
foreach ($collections as $key => $row) {
if($ukey == "order") {
if ($ukey == "order") {
$aName[$key] = $row->get_ord();
}else {
}
else {
$aName[$key] = $row->get_name();
}
}

View File

@@ -31,7 +31,7 @@ class ShareController extends Controller
$databoxSubdefs = $record->getDatabox()->get_subdef_structure()->getSubdefGroup($record->getType());
$acl = $this->getAclForUser();
$subdefList = [];
$defaultKey = null;
$defaultKey = null;
foreach ($subdefs as $subdef) {
$subdefName = $subdef->get_name();
if ($subdefName == 'document') {
@@ -55,7 +55,7 @@ class ShareController extends Controller
$defaultKey = $value; // will set a default option if neither preview,thumbnail or document is present
if ( ($previewLink = $preview->get_permalink()) !== null ) {
if (($previewLink = $preview->get_permalink()) !== null) {
$permalinkUrl = $previewLink->get_url()->__toString();
$permaviewUrl = $previewLink->get_page();
$previewWidth = $preview->get_width();
@@ -74,7 +74,7 @@ class ShareController extends Controller
}
// candidates as best default selected option
foreach(["preview", "thumbnail", "document"] as $k) {
foreach (["preview", "thumbnail", "document"] as $k) {
if (array_key_exists($k, $subdefList)) {
$defaultKey = $k;
break;
@@ -84,8 +84,8 @@ class ShareController extends Controller
// the twig MUST handle that
$outputVars = [
'isAvailable' => !empty($subdefList),
'subdefList' => $subdefList,
'defaultKey' => $defaultKey
'subdefList' => $subdefList,
'defaultKey' => $defaultKey
];
return $this->renderResponse('prod/Share/record.html.twig', $outputVars);

View File

@@ -247,7 +247,7 @@ class UploadController extends Controller
$sbasId = $databox->get_sbas_id();
foreach ($acl->get_granted_base([\ACL::CANADDRECORD], [$sbasId]) as $collection) {
$databox = $collection->get_databox();
if ( ! isset($collections[$sbasId])) {
if (!isset($collections[$sbasId])) {
$collections[$databox->get_sbas_id()] = [
'databox' => $databox,
'databox_collections' => []

View File

@@ -48,13 +48,13 @@ class Share implements ControllerProviderInterface, ServiceProviderInterface
$controllers->get('/record/{base_id}/{record_id}/', 'controller.prod.share:shareRecord')
->before(function (Request $request) use ($app, $firewall) {
$socialTools = $app['conf']->get(['registry', 'actions', 'social-tools']);
if($socialTools === "all") {
if ($socialTools === "all") {
return;
}
elseif($socialTools === "none") {
elseif ($socialTools === "none") {
$app->abort(403, 'social tools disabled');
}
elseif($socialTools === "publishers") {
elseif ($socialTools === "publishers") {
$firewall->requireRightOnSbas(
\phrasea::sbasFromBas($app, $request->attributes->get('base_id')),
\ACL::BAS_CHUPUB

View File

@@ -7,9 +7,11 @@
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Alchemy\Phrasea\Core\Configuration;
use Alchemy\Phrasea\Application;
/**
* Class StructureTemplate
* @package Alchemy\Phrasea\Core\Configuration
@@ -23,6 +25,7 @@ class StructureTemplate
{
$this->app = $app;
}
/**
* @return $this
* @throws \Exception
@@ -30,59 +33,72 @@ class StructureTemplate
public function getAvailable()
{
$templateList = new \DirectoryIterator($this->app['root.path'] . '/lib/conf.d/data_templates');
if(empty($templateList)) throw new \Exception('No available structure template');
if (empty($templateList)) {
throw new \Exception('No available structure template');
}
$templates = [];
$abbreviationLength = 2;
foreach ($templateList as $template)
{
if($template->isDot()
foreach ($templateList as $template) {
if ($template->isDot()
|| !$template->isFile()
|| $template->getExtension() !== self::TEMPLATE_EXTENSION) continue;
$name = $template->getFilename();
$abbreviation = strtolower(substr($name,0,$abbreviationLength));
if(array_key_exists($abbreviation,$templates) ){
$abbreviation = strtolower(substr($name,0,++$abbreviationLength));
|| $template->getExtension() !== self::TEMPLATE_EXTENSION
) {
continue;
}
$templates[$abbreviation] = $template->getBasename('.'.self::TEMPLATE_EXTENSION);
$name = $template->getFilename();
$abbreviation = strtolower(substr($name, 0, $abbreviationLength));
if (array_key_exists($abbreviation, $templates)) {
$abbreviation = strtolower(substr($name, 0, ++$abbreviationLength));
}
$templates[$abbreviation] = $template->getBasename('.' . self::TEMPLATE_EXTENSION);
}
$this->templates = $templates;
return $this;
}
/**
* @return string
*/
public function __toString()
{
if(!$this->templates){
if (!$this->templates) {
return '';
}
$templateToString = '';
$cpt = 1;
$templateLength = count($this->templates);
foreach ($this->templates as $key => $value){
foreach ($this->templates as $key => $value) {
if (($templateLength - 1) == $cpt) {
$separator = ' and ';
}elseif(end($this->templates) == $value){
$separator = '';
}else{
}
elseif (end($this->templates) == $value) {
$separator = '';
}
else {
$separator = ', ';
}
$templateToString .= $key.' ('.$value.')'. $separator;
$templateToString .= $key . ' (' . $value . ')' . $separator;
$cpt++;
}
return $templateToString;
}
/**
* @param $template
* @return mixed
* @throws \Exception
*/
public function getTemplateName($template = 'en'){
if(!array_key_exists($template,$this->templates)){
throw new \Exception('Not found template : '.$template);
public function getTemplateName($template = 'en')
{
if (!array_key_exists($template, $this->templates)) {
throw new \Exception('Not found template : ' . $template);
}
return $this->templates[$template];
}
/**
* @return mixed
*/

View File

@@ -16,6 +16,7 @@ class SubdefPreset
* @var array
*/
private $definitions;
/**
* @param string $mediaType
* @param array $definitions
@@ -23,12 +24,13 @@ class SubdefPreset
public function __construct($mediaType, array $definitions)
{
foreach ($definitions as $definition) {
if (! $definition instanceof Subdef) {
if (!$definition instanceof Subdef) {
}
}
$this->mediaType = (string) $mediaType;
$this->mediaType = (string)$mediaType;
$this->definitions = $definitions;
}
/**
* @return string
*/
@@ -36,6 +38,7 @@ class SubdefPreset
{
return $this->label;
}
/**
* @return array
*/

View File

@@ -5,15 +5,17 @@ namespace Alchemy\Phrasea\Databox\Subdef;
class SubdefPresetProvider
{
private $presets = [];
/**
* @param string $type Type of media for which to get presets
* @return SubdefPreset[]
*/
public function getPresets($type)
{
if (! isset($this->presets[$type])) {
if (!isset($this->presets[$type])) {
throw new \InvalidArgumentException('Invalid type');
}
return $this->presets[$type];
}
}

View File

@@ -46,9 +46,9 @@ class Prod extends Helper
$selected = $saveSettings ? ((isset($searchSet['bases']) && isset($searchSet['bases'][$sbasId])) ? (in_array($coll->get_base_id(), $searchSet['bases'][$sbasId])) : true) : true;
$bases[$sbasId]['collections'][] = array(
'selected' => $selected,
'base_id' => $coll->get_base_id(),
'name' => $coll->get_name(),
'order' => $coll->get_ord()
'base_id' => $coll->get_base_id(),
'name' => $coll->get_name(),
'order' => $coll->get_ord()
);
}
@@ -57,7 +57,7 @@ class Prod extends Helper
$userOrderSetting = $settings->getUserSetting($this->app->getAuthenticatedUser(), 'order_collection_by');
// a temporary array to sort the collections
$aName = array();
$aName = [];
list($ukey, $uorder) = ["order", SORT_ASC]; // default ORDER_BY_ADMIN
switch ($userOrderSetting) {
case $settings::ORDER_ALPHA_ASC :

View File

@@ -39,12 +39,12 @@ class databox_subdef
protected $downloadable;
protected $translator;
protected static $mediaTypeToSubdefTypes = [
SubdefType::TYPE_AUDIO => [SubdefSpecs::TYPE_IMAGE, SubdefSpecs::TYPE_AUDIO],
SubdefType::TYPE_AUDIO => [SubdefSpecs::TYPE_IMAGE, SubdefSpecs::TYPE_AUDIO],
SubdefType::TYPE_DOCUMENT => [SubdefSpecs::TYPE_IMAGE, SubdefSpecs::TYPE_FLEXPAPER],
SubdefType::TYPE_FLASH => [SubdefSpecs::TYPE_IMAGE],
SubdefType::TYPE_IMAGE => [SubdefSpecs::TYPE_IMAGE],
SubdefType::TYPE_VIDEO => [SubdefSpecs::TYPE_IMAGE, SubdefSpecs::TYPE_VIDEO, SubdefSpecs::TYPE_ANIMATION],
SubdefType::TYPE_UNKNOWN => [SubdefSpecs::TYPE_IMAGE],
SubdefType::TYPE_FLASH => [SubdefSpecs::TYPE_IMAGE],
SubdefType::TYPE_IMAGE => [SubdefSpecs::TYPE_IMAGE],
SubdefType::TYPE_VIDEO => [SubdefSpecs::TYPE_IMAGE, SubdefSpecs::TYPE_VIDEO, SubdefSpecs::TYPE_ANIMATION],
SubdefType::TYPE_UNKNOWN => [SubdefSpecs::TYPE_IMAGE],
];
const CLASS_THUMBNAIL = 'thumbnail';
const CLASS_PREVIEW = 'preview';
@@ -303,7 +303,7 @@ class databox_subdef
return $this->downloadable;
}
/**
/**
* @return bool
*/
public function isOrderable()