in einigen modulen wird der normale/erweiterte-konfigurationsmodus damit realisiert bestimmte mod-variablen zu verstecken in dem man die mip-form-deklaration von "cat" (bspw. $mip_form['78']['cat'] = 'chk';) mit dem wert "hidden" überschreibt.
dies funktioniert grundsätzlich problemlos - NUR bei folgender (üblicher) mip-forms-definition von checkbox
QUELLTEXT
//Mehrfachauswahl
$mip_form['78']['desc'] = 'Mehrfachauswahl aktivieren';
$mip_form['78']['cat'] = 'chk';
$mip_form['78']['option_var']['0'] = 'MOD_VAR[78]';
$mip_form['78']['option_val']['0'] = $cms_mod['value']['78'];
$mip_form['78']['option_desc']['0'] = 'ja';
$mip_form['78']['option_val_select']['0'] = 'true';
$mip_form['78']['desc'] = 'Mehrfachauswahl aktivieren';
$mip_form['78']['cat'] = 'chk';
$mip_form['78']['option_var']['0'] = 'MOD_VAR[78]';
$mip_form['78']['option_val']['0'] = $cms_mod['value']['78'];
$mip_form['78']['option_desc']['0'] = 'ja';
$mip_form['78']['option_val_select']['0'] = 'true';
produziert $mip_form['78']['cat'] = 'hidden'; ein leeres hidden-feld im output der modul-konfiguration und löscht somit die modul-variable.
dieses verhalten kann grundsätzlich umgangen werden in dem man zusätzlich zu ['cat'] = 'hidden' die modul-variable und den entsprechenden wert neu zuweist.
$mip_form['78']['cat'] = 'hidden';
$mip_form['78']['cms_var'] = 'MOD_VAR[78]';
$mip_form['78']['cms_val'] = $cms_mod['value']['78'];
in einigen modulen wird der normale/erweiterte-modus mit einer schleife zum überschreiben der "cat" produziert.
QUELLTEXT
//if simple mode
if($cms_mod['value']['0'] == ''){
foreach ($mip_form['hide_in_standard_mode'] AS $ke=>$va){
$mip_form[$va]['cat'] = 'hidden';
}
}
if($cms_mod['value']['0'] == ''){
foreach ($mip_form['hide_in_standard_mode'] AS $ke=>$va){
$mip_form[$va]['cat'] = 'hidden';
}
}
dies erzeugt das erwähntes löschen aller checkbox-werte
durch einfaches hinzufügen 2er zeilen kann dieses problem umgangen werden:
QUELLTEXT
//if simple mode
if($cms_mod['value']['0'] == ''){
foreach ($mip_form['hide_in_standard_mode'] AS $ke=>$va){
$mip_form[$va]['cat'] = 'hidden';
$mip_form[$va]['cms_var'] = 'MOD_VAR[' . $va . ']';
$mip_form[$va]['cms_val'] = $cms_mod['value'][$va];
}
}
if($cms_mod['value']['0'] == ''){
foreach ($mip_form['hide_in_standard_mode'] AS $ke=>$va){
$mip_form[$va]['cat'] = 'hidden';
$mip_form[$va]['cms_var'] = 'MOD_VAR[' . $va . ']';
$mip_form[$va]['cms_val'] = $cms_mod['value'][$va];
}
}