Current oav website
This commit is contained in:
104
dotclear._no/plugins/importExport/index.php
Normal file
104
dotclear._no/plugins/importExport/index.php
Normal file
@ -0,0 +1,104 @@
|
||||
<?php
|
||||
/**
|
||||
* @brief importExport, a plugin for Dotclear 2
|
||||
*
|
||||
* @package Dotclear
|
||||
* @subpackage Plugins
|
||||
*
|
||||
* @copyright Olivier Meunier & Association Dotclear
|
||||
* @copyright GPL-2.0-only
|
||||
*/
|
||||
|
||||
if (!defined('DC_CONTEXT_ADMIN')) {return;}
|
||||
|
||||
function listImportExportModules($core, $modules)
|
||||
{
|
||||
$res = '';
|
||||
foreach ($modules as $id) {
|
||||
$o = new $id($core);
|
||||
|
||||
$res .=
|
||||
'<dt><a href="' . $o->getURL(true) . '">' . html::escapeHTML($o->name) . '</a></dt>' .
|
||||
'<dd>' . html::escapeHTML($o->description) . '</dd>';
|
||||
|
||||
unset($o);
|
||||
}
|
||||
return '<dl class="modules">' . $res . '</dl>';
|
||||
}
|
||||
|
||||
$modules = new ArrayObject(['import' => [], 'export' => []]);
|
||||
|
||||
# --BEHAVIOR-- importExportModules
|
||||
$core->callBehavior('importExportModules', $modules, $core);
|
||||
|
||||
$type = null;
|
||||
if (!empty($_REQUEST['type']) && in_array($_REQUEST['type'], ['export', 'import'])) {
|
||||
$type = $_REQUEST['type'];
|
||||
}
|
||||
|
||||
$module = null;
|
||||
if ($type && !empty($_REQUEST['module'])) {
|
||||
|
||||
if (isset($modules[$type]) && in_array($_REQUEST['module'], $modules[$type])) {
|
||||
|
||||
$module = new $_REQUEST['module']($core);
|
||||
$module->init();
|
||||
}
|
||||
}
|
||||
|
||||
if ($type && $module !== null && !empty($_REQUEST['do'])) {
|
||||
try {
|
||||
$module->process($_REQUEST['do']);
|
||||
} catch (Exception $e) {
|
||||
$core->error->add($e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
$title = __('Import/Export');
|
||||
|
||||
echo '
|
||||
<html>
|
||||
<head>
|
||||
<title>' . $title . '</title>' .
|
||||
dcPage::cssLoad(dcPage::getPF('importExport/style.css')) .
|
||||
dcPage::jsJson('ie_msg', ['please_wait' => __('Please wait...')]) .
|
||||
dcPage::jsLoad(dcPage::getPF('importExport/js/script.js')) .
|
||||
'</head>
|
||||
<body>';
|
||||
|
||||
if ($type && $module !== null) {
|
||||
echo dcPage::breadcrumb(
|
||||
[
|
||||
__('Plugins') => '',
|
||||
$title => $p_url,
|
||||
html::escapeHTML($module->name) => ''
|
||||
]) .
|
||||
dcPage::notices();
|
||||
|
||||
echo
|
||||
'<div id="ie-gui">';
|
||||
|
||||
$module->gui();
|
||||
|
||||
echo '</div>';
|
||||
} else {
|
||||
echo dcPage::breadcrumb(
|
||||
[
|
||||
__('Plugins') => '',
|
||||
$title => ''
|
||||
]) .
|
||||
dcPage::notices();
|
||||
|
||||
echo '<h3>' . __('Import') . '</h3>' . listImportExportModules($core, $modules['import']);
|
||||
|
||||
echo
|
||||
'<h3>' . __('Export') . '</h3>' .
|
||||
'<p class="info">' . sprintf(
|
||||
__('Export functions are in the page %s.'),
|
||||
'<a href="' . $core->adminurl->get('admin.plugin.maintenance', ['tab' => 'backup']) . '#backup">' . __('Maintenance') . '</a>'
|
||||
) . '</p>';
|
||||
}
|
||||
|
||||
dcPage::helpBlock('import');
|
||||
|
||||
echo '</body></html>';
|
||||
Reference in New Issue
Block a user