Commit 93ad7022152b0dcf0d35125b61d4bfa09c0e1261
1 parent
412954c1
Basic Import
Showing
1 changed file
with
75 additions
and
0 deletions
maintain.inc.php
0 → 100644
1 | +<?php | |
2 | +defined('PHPWG_ROOT_PATH') or die('Hacking attempt!'); | |
3 | + | |
4 | +include_once('class.ldap.php'); | |
5 | + | |
6 | +/** | |
7 | + * This class is used to expose maintenance methods to the plugins manager | |
8 | + * It must extends PluginMaintain and be named "PLUGINID_maintain" | |
9 | + * where PLUGINID is the directory name of your plugin | |
10 | + */ | |
11 | +class Ldap_Login_maintain extends PluginMaintain | |
12 | +{ | |
13 | + /* | |
14 | + * My pattern uses a single installation method, which handles both installation | |
15 | + * and activation, where Piwigo always calls 'activate' just after 'install' | |
16 | + * As a result I use a marker in order to not execute the installation method twice | |
17 | + * | |
18 | + * The installation function is called by main.inc.php and maintain.inc.php | |
19 | + * in order to install and/or update the plugin. | |
20 | + * | |
21 | + * That's why all operations must be conditionned : | |
22 | + * - use "if empty" for configuration vars | |
23 | + * - use "IF NOT EXISTS" for table creation | |
24 | + */ | |
25 | + private $installed = false; | |
26 | + | |
27 | + /** | |
28 | + * plugin installation | |
29 | + * | |
30 | + * perform here all needed step for the plugin installation | |
31 | + * such as create default config, add database tables, | |
32 | + * add fields to existing tables, create local folders... | |
33 | + */ | |
34 | + function install($plugin_version, &$errors=array()) | |
35 | + { | |
36 | + global $conf; | |
37 | + $config=new Ldap(); | |
38 | + | |
39 | + if (file_exists(LDAP_LOGIN_PATH.'data.dat' )) { | |
40 | + $config->load_config(); | |
41 | + } | |
42 | + | |
43 | + else { | |
44 | + $config->load_default_config(); | |
45 | + } | |
46 | + | |
47 | + $config->save_config(); | |
48 | + | |
49 | + $this->installed = true; | |
50 | + } | |
51 | + | |
52 | + /** | |
53 | + * plugin activation | |
54 | + * | |
55 | + * this function is triggered after installation, by manual activation | |
56 | + * or after a plugin update | |
57 | + * for this last case you must manage updates tasks of your plugin in this function | |
58 | + */ | |
59 | + function activate($plugin_version, &$errors=array()) | |
60 | + { | |
61 | + if (!$this->installed) | |
62 | + { | |
63 | + $this->install($plugin_version, $errors); | |
64 | + } | |
65 | + } | |
66 | + | |
67 | + function deactivate() | |
68 | + { | |
69 | + } | |
70 | + | |
71 | + function uninstall() | |
72 | + { | |
73 | + } | |
74 | + | |
75 | +} | |
0 | 76 | \ No newline at end of file |
... | ... |