protected function setProperties()
{
global $plugin_param;
$hide_structure = false;
if ($plugin_param['export_type'] == 'table' && !$plugin_param['single_table']) {
$hide_structure = true;
}
$exportPluginProperties = new ExportPluginProperties();
$exportPluginProperties->setText('OpenDocument Text');
$exportPluginProperties->setExtension('odt');
$exportPluginProperties->setMimeType('application/vnd.oasis.opendocument.text');
$exportPluginProperties->setForceFile(true);
$exportPluginProperties->setOptionsText(__('Options'));
// create the root group that will be the options field for
// $exportPluginProperties
// this will be shown as "Format specific options"
$exportSpecificOptions = new OptionsPropertyRootGroup("Format Specific Options");
// what to dump (structure/data/both) main group
$dumpWhat = new OptionsPropertyMainGroup("general_opts", __('Dump table'));
// create primary items and add them to the group
$leaf = new RadioPropertyItem("structure_or_data");
$leaf->setValues(array('structure' => __('structure'), 'data' => __('data'), 'structure_and_data' => __('structure and data')));
$dumpWhat->addProperty($leaf);
// add the main group to the root group
$exportSpecificOptions->addProperty($dumpWhat);
// structure options main group
if (!$hide_structure) {
$structureOptions = new OptionsPropertyMainGroup("structure", __('Object creation options'));
$structureOptions->setForce('data');
// create primary items and add them to the group
if (!empty($GLOBALS['cfgRelation']['relation'])) {
$leaf = new BoolPropertyItem("relation", __('Display foreign key relationships'));
$structureOptions->addProperty($leaf);
}
$leaf = new BoolPropertyItem("comments", __('Display comments'));
$structureOptions->addProperty($leaf);
if (!empty($GLOBALS['cfgRelation']['mimework'])) {
$leaf = new BoolPropertyItem("mime", __('Display MIME types'));
$structureOptions->addProperty($leaf);
}
// add the main group to the root group
$exportSpecificOptions->addProperty($structureOptions);
}
// data options main group
$dataOptions = new OptionsPropertyMainGroup("data", __('Data dump options'));
$dataOptions->setForce('structure');
// create primary items and add them to the group
$leaf = new BoolPropertyItem("columns", __('Put columns names in the first row'));
$dataOptions->addProperty($leaf);
$leaf = new TextPropertyItem('null', __('Replace NULL with:'));
$dataOptions->addProperty($leaf);
// add the main group to the root group
$exportSpecificOptions->addProperty($dataOptions);
// set the options for the export plugin property item
$exportPluginProperties->setOptions($exportSpecificOptions);
$this->properties = $exportPluginProperties;
}