Dotclear

source: plugins/importExport/index.php @ 1358:f117338392dc

Revision 1358:f117338392dc, 2.4 KB checked in by franck <carnet.franck.paul@…>, 12 years ago (diff)

Messages are now displayed below the breadcrumb, fixes #1528

RevLine 
[0]1<?php
2# -- BEGIN LICENSE BLOCK ---------------------------------------
3#
[840]4# This file is part of importExport, a plugin for DotClear2.
[0]5#
[840]6# Copyright (c) 2003-2012 Olivier Meunier & Association Dotclear
[0]7# Licensed under the GPL version 2.0 license.
8# See LICENSE file or
9# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
10#
11# -- END LICENSE BLOCK -----------------------------------------
12if (!defined('DC_CONTEXT_ADMIN')) { return; }
13
[840]14function listImportExportModules($core,$modules)
15{
16     $res = '';
17     foreach ($modules as $id)
18     {
19          $o = new $id($core);
20         
21          $res .= 
22          '<dt><a href="'.$o->getURL(true).'">'.html::escapeHTML($o->name).'</a></dt>'.
23          '<dd>'.html::escapeHTML($o->description).'</dd>';
24         
25          unset($o);
26     }
27     return '<dl class="modules">'.$res.'</dl>';
28}
[0]29
[840]30$modules = new ArrayObject(array('import' => array(),'export' => array()));
[0]31
32# --BEHAVIOR-- importExportModules
33$core->callBehavior('importExportModules',$modules);
34
35$type = null;
[840]36if (!empty($_REQUEST['type'])  && in_array($_REQUEST['type'],array('export','import'))) {
37     $type = $_REQUEST['type'];
[0]38}
39
[840]40$module = null;
41if ($type && !empty($_REQUEST['module'])) {
42
43     if (isset($modules[$type]) && in_array($_REQUEST['module'],$modules[$type])) {
44     
45          $module = new $_REQUEST['module']($core);
46          $module->init();
[0]47     }
48}
49
[840]50if ($type && $module !== null && !empty($_REQUEST['do']))
[0]51{
52     try {
[840]53          $module->process($_REQUEST['do']);
[0]54     } catch (Exception $e) {
55          $core->error->add($e->getMessage());
56     }
57}
[840]58
59$title = __('Import/Export');
60
61echo '
[0]62<html>
63<head>
[840]64     <title>'.$title.'</title>
65     <link rel="stylesheet" type="text/css" href="index.php?pf=importExport/style.css" />
66     '.dcPage::jsLoad('index.php?pf=importExport/js/script.js').'
[0]67     <script type="text/javascript">
68     //<![CDATA[
[840]69     '.dcPage::jsVar('dotclear.msg.please_wait',__('Please wait...')).'
[0]70     //]]>
71     </script>
72</head>
[840]73<body>';
[0]74
[840]75if ($type && $module !== null) {
[1358]76     echo dcPage::breadcrumb(
[1339]77          array(
78               __('Plugins') => '',
79               $title => $p_url,
80               '<span class="page-title">'.html::escapeHTML($module->name).'</span>' => ''
81          ));
82
[840]83     echo
84     '<div id="ie-gui">';
[0]85     
[840]86     $module->gui();
87     
[0]88     echo '</div>';
89}
[840]90else {
[1358]91     echo dcPage::breadcrumb(
[1339]92          array(
93               __('Plugins') => '',
94               '<span class="page-title">'.$title.'</span>' => ''
95          ));
96
[840]97     echo
98     '<h3>'.__('Import').'</h3>'.listImportExportModules($core,$modules['import']).
99     '<h3>'.__('Export').'</h3>'.listImportExportModules($core,$modules['export']);
[0]100}
101
[840]102echo '
[0]103</body>
[840]104</html>';
105?>
Note: See TracBrowser for help on using the repository browser.

Sites map