Ejemplo n.º 1
0
 /**
  * Update the plugins parameters. OptionsLinks can be an array associating keys of $data
  * to pluginID/plugin_parameter_name
  *
  * @param AbstractConfDriver $confDriver
  * @param array $data
  * @param null|array $optionsLinks
  */
 public function feedPluginsOptions($confDriver, $data, $optionsLinks = null)
 {
     if (isset($optionsLinks)) {
         $direct = $optionsLinks;
     } else {
         $data["ENABLE_NOTIF"] = true;
         // Prepare plugins configs
         $direct = array("APPLICATION_TITLE" => "core.ajaxplorer/APPLICATION_TITLE", "APPLICATION_LANGUAGE" => "core.ajaxplorer/DEFAULT_LANGUAGE", "ENABLE_NOTIF" => "core.notifications/USER_EVENTS", "APPLICATION_WELCOME" => "gui.ajax/CUSTOM_WELCOME_MESSAGE");
         $mailerEnabled = $data["MAILER_ENABLE"]["status"];
         if ($mailerEnabled == "yes") {
             // Enable core.mailer
             $data["MAILER_SYSTEM"] = $data["MAILER_ENABLE"]["MAILER_SYSTEM"];
             $data["MAILER_ADMIN"] = $data["MAILER_ENABLE"]["MAILER_ADMIN"];
             $direct = array_merge($direct, array("MAILER_SYSTEM" => "mailer.phpmailer-lite/MAILER", "MAILER_ADMIN" => "core.mailer/FROM"));
         }
     }
     foreach ($direct as $key => $value) {
         list($pluginId, $param) = explode("/", $value);
         $options = array();
         $confDriver->_loadPluginConfig($pluginId, $options);
         $options[$param] = $data[$key];
         $confDriver->_savePluginConfig($pluginId, $options);
     }
 }