e107 Preferences

Core Preferences

How to get the value of one needed preference?

Example for the list of installed plugins:

$builder_pluglist = e107::getPref('plug_installed');

Where to find used core pref name?

In admin area: Tools / Database / Preferences Editor

How to manage core prefs from custom plugins

This is the way I have confirmed as working... 

$pref = e107::getPref();
$core_pref = e107::getConfig();

the form works with $pref

$core_pref->setPref($pref)->save(false, true);

if pref is multilanguage, it's a bit complicated according to admin/meta.php file 

How to change only one core pref

e107::getConfig('core')->setPref('prefnamet', $new_value);
* Save object data to DB
* @param boolean $from_post merge post data
* @param boolean $force
* @param mixed $session_messages null: normal messages displayed, true: session messages used, false: no messages displayed. 
* @return boolean|integer 0 - no change, true - saved, false - error

Not clear what $from_post means. With one pref true, with full $pref false?

Custom plugin preferences

Load all plugin preferences

[prism]$plugPrefs = e107::getPlugConfig('your_plugin')->getPref();[/prism]

for using in class:

[prism]private $plugPrefs = array();
$this->plugPrefs = $plugPrefs;[/prism]

update one preference

To save new value:

[prism]e107::getPlugConfig('your_plugin')->set('your_preference', $addonsList)->save(true);[/prism]

save(true) - value will be replaced
save(false) - value will be added

empty array:
[prism]e107::getPlugConfig('visualbuilder')->set('visualbuilder', array())->save(true);[/prism]

Other links

Follow us