Dotclear

source: plugins/importExport/inc/class.dc.ieModule.php @ 840:f7157873644c

Revision 840:f7157873644c, 1.9 KB checked in by JcDenis, 13 years ago (diff)

Clean up structure, added (un)zip to flat import/export, fixes #1319

Line 
1<?php
2# -- BEGIN LICENSE BLOCK ---------------------------------------
3#
4# This file is part of importExport, a plugin for DotClear2.
5#
6# Copyright (c) 2003-2012 Olivier Meunier & Association Dotclear
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_RC_PATH')) { return; }
13
14abstract class dcIeModule
15{
16     public $type;
17     public $id;
18     public $name;
19     public $description;
20     
21     protected $import_url;
22     protected $export_url;
23     protected $core;
24     
25     public function __construct($core)
26     {
27          $this->core =& $core;
28          $this->setInfo();
29         
30          if (!in_array($this->type,array('import','export'))) {
31               throw new Exception(sprintf('Unknow type for module %s',get_class($this)));
32          }
33         
34          if (!$this->name) {
35               $this->name = get_class($this);
36          }
37         
38          $this->id = get_class($this);
39          $this->url = sprintf('plugin.php?p=importExport&type=%s&module=%s',$this->type,$this->id);
40     }
41     
42     public function init()
43     {
44     }
45     
46     abstract protected function setInfo();
47     
48     final public function getURL($escape=false)
49     {
50          return $escape ? html::escapeHTML($this->url) : $this->url;
51     }
52     
53     abstract public function process($do);
54     
55     abstract public function gui();
56     
57     protected function progressBar($percent)
58     {
59          $percent = ceil($percent);
60          if ($percent > 100) {
61               $percent = 100;
62          }
63          return '<div class="ie-progress"><div style="width:'.$percent.'%">'.$percent.' %</div></div>';
64     }
65     
66     protected function autoSubmit()
67     {
68          return form::hidden(array('autosubmit'),1);
69     }
70     
71     protected function congratMessage()
72     {
73          return
74          '<h3>'.__('Congratulation!').'</h3>'.
75          '<p>'.__('Your blog has been successfully imported. Welcome on Dotclear 2!').'</p>'.
76          '<ul><li><strong><a href="post.php">'.__('Why don\'t you blog this now?').'</a></strong></li>'.
77          '<li>'.__('or').' <a href="index.php">'.__('visit your dashboard').'</a></li></ul>';
78     }
79}
80?>
Note: See TracBrowser for help on using the repository browser.

Sites map