Merge pull request #4 from griffaurel/Bridges_Formats

Bridges formats
This commit is contained in:
Badet Aurélien 2016-11-19 00:40:35 +01:00 committed by GitHub
commit c7b749422b
2 changed files with 25 additions and 10 deletions

View File

@ -8,6 +8,7 @@ abstract class BridgeAbstract implements BridgeInterface {
const MAINTAINER = 'No maintainer';
const CACHE_TIMEOUT = 3600;
const PARAMETERS = array();
const FORMATS = array(); // array of compatibles formats or null
protected $cache;
protected $items = array();

View File

@ -1,17 +1,37 @@
<?php
function displayBridgeCard($bridgeName, $formats, $isActive = true){
$getHelperButtonsFormat = function($formats){
$bridgeElement = Bridge::create($bridgeName);
$bridgeClass = $bridgeName . 'Bridge';
if($bridgeElement == false)
return "";
// If we have a defined array of compatibles formats : show only helperbuttons for thoses formats.
// If we dont have any defined array of compatibles formats : show helperbuttons for every availables formats.
$compatiblesFormats = array();
if (defined($bridgeClass::FORMATS)&&(count($bridgeClass::FORMATS) > 0)){
$bridgeFormats = $bridgeClass::FORMATS;
//check if format exists
foreach($bridgeFormats as $name){
if(in_array($name , $formats){
$compatiblesFormats[] = $name ;
}
}
}
// if no compatible format, nevermind
if (count($compatibles)==0){$compatiblesFormats = $formats};
$getHelperButtonsFormat = function($compatiblesFormats){
$buttons = '';
foreach($formats as $name){
foreach($compatiblesFormats as $name){
$buttons .= '<button type="submit" name="format" value="'
. $name
. '">'
. $name
. '</button>'
. PHP_EOL;
. PHP_EOL;
}
return $buttons;
};
@ -23,12 +43,6 @@ function displayBridgeCard($bridgeName, $formats, $isActive = true){
EOD;
};
$bridgeElement = Bridge::create($bridgeName);
$bridgeClass = $bridgeName . 'Bridge';
if($bridgeElement == false)
return "";
$name = '<a href="' . $bridgeClass::URI . '">' . $bridgeClass::NAME . '</a>';
$description = $bridgeClass::DESCRIPTION;