Fixed gh-108 to insure that all fields get added if multiple zeros are found. Improved the default value options in global config to allow for array of default values. Fixed typo forward slash.
This commit is contained in:
@ -61,6 +61,13 @@ class Fields extends Structure
|
||||
*/
|
||||
public $layoutBuilder = array();
|
||||
|
||||
/**
|
||||
* used to fix the zero order
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
private $zeroOrderFix = array();
|
||||
|
||||
/**
|
||||
* Site field data
|
||||
*
|
||||
@ -470,7 +477,6 @@ class Fields extends Structure
|
||||
{
|
||||
$dynamcfields .= $this->setDynamicField($field, $view, $view['settings']->type, $langView, $viewName, $listViewName, $spacerCounter, $this->placeholders, $dbkey, true);
|
||||
}
|
||||
|
||||
// set the defautl fields
|
||||
$fieldSet = array();
|
||||
$fieldSet[] = '<fieldset name="details">';
|
||||
@ -1161,6 +1167,26 @@ class Fields extends Structure
|
||||
*/
|
||||
public function setLayoutBuilder(&$viewName,&$tabName,&$name,&$field)
|
||||
{
|
||||
// first fix the zero order
|
||||
// to insure it lands before all the other fields
|
||||
// as zero is expected to behave
|
||||
if ($field['order_edit'] == 0)
|
||||
{
|
||||
if (!isset($this->zeroOrderFix[$viewName]))
|
||||
{
|
||||
$this->zeroOrderFix[$viewName] = array();
|
||||
}
|
||||
if (!isset($this->zeroOrderFix[$viewName][(int) $field['tab']]))
|
||||
{
|
||||
$this->zeroOrderFix[$viewName][(int) $field['tab']] = -999;
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->zeroOrderFix[$viewName][(int) $field['tab']]++;
|
||||
}
|
||||
$field['order_edit'] = $this->zeroOrderFix[$viewName][(int) $field['tab']];
|
||||
}
|
||||
// now build the layout
|
||||
if (ComponentbuilderHelper::checkString($tabName) && $tabName != 'publishing')
|
||||
{
|
||||
$this->tabCounter[$viewName][(int) $field['tab']] = $tabName;
|
||||
|
@ -1772,7 +1772,7 @@ class Interpretation extends Fields
|
||||
{
|
||||
$string = "if (isset(" . $whe['value_key']. ") && ".$this->fileContentStatic['###Component###']."Helper::checkArray(" . $whe['value_key']. "))";
|
||||
$string .= PHP_EOL."\t".$tabe."\t{";
|
||||
$string .= PHP_EOL."\t".$tabe."\t\t\//".$this->setLine(__LINE__)." Get where ".$whe['table_key']." is " . $whe['value_key'];
|
||||
$string .= PHP_EOL."\t".$tabe."\t\t//".$this->setLine(__LINE__)." Get where ".$whe['table_key']." is " . $whe['value_key'];
|
||||
$string .= PHP_EOL."\t".$tabe."\t\t\$query->where('".$whe['table_key']." ".$whe['operator'].$value;
|
||||
$string .= PHP_EOL."\t".$tabe."\t}";
|
||||
$string .= PHP_EOL."\t".$tabe."\telse";
|
||||
@ -2950,7 +2950,7 @@ class Interpretation extends Fields
|
||||
{
|
||||
foreach ($view['settings']->custom_buttons as $custom_button)
|
||||
{
|
||||
if ($custom_button['target'] != 2 || $this->target === 'site')
|
||||
if (3 !== $type && ($custom_button['target'] != 2 || $this->target === 'site'))
|
||||
{
|
||||
// Load to lang
|
||||
$keyLang = $this->langPrefix.'_'.ComponentbuilderHelper::safeString($custom_button['name'],'U');
|
||||
@ -2971,7 +2971,7 @@ class Interpretation extends Fields
|
||||
$buttons[] = "\t".$tab."\t}";
|
||||
}
|
||||
// load the list button
|
||||
elseif (3 == $type && ($custom_button['target'] == 2 || $custom_button['target'] == 3))
|
||||
elseif (3 == $type && $custom_button['target'] != 1)
|
||||
{
|
||||
// Load to lang
|
||||
$keyLang = $this->langPrefix.'_'.ComponentbuilderHelper::safeString($custom_button['name'],'U');
|
||||
@ -12042,8 +12042,17 @@ class Interpretation extends Fields
|
||||
$fieldDefault = ComponentbuilderHelper::getBetween($xmlField,'default="','"');
|
||||
if (isset($field['custom_value']) && ComponentbuilderHelper::checkString($field['custom_value']))
|
||||
{
|
||||
// load the Global checkin defautls
|
||||
$this->paramsBuilder .= ',"'.$fieldName.'":"'.$field['custom_value'].'"';
|
||||
// add array if found
|
||||
if ((strpos($field['custom_value'], '["') !== false) && (strpos($field['custom_value'], '"]') !== false))
|
||||
{
|
||||
// load the Global checkin defautls
|
||||
$this->paramsBuilder .= ',"'.$fieldName.'":'.$field['custom_value'];
|
||||
}
|
||||
else
|
||||
{
|
||||
// load the Global checkin defautls
|
||||
$this->paramsBuilder .= ',"'.$fieldName.'":"'.$field['custom_value'].'"';
|
||||
}
|
||||
}
|
||||
elseif (ComponentbuilderHelper::checkString($fieldDefault))
|
||||
{
|
||||
|
Reference in New Issue
Block a user