source: extensions/AdditionalPages/maintain.inc.php @ 9310

Last change on this file since 9310 was 9310, checked in by patdenice, 13 years ago

Lot of optimization.
Add privacy level management.

File size: 2.0 KB
Line 
1<?php
2
3function plugin_install()
4{
5  global $prefixeTable, $conf;
6
7  $query = 'SHOW TABLES LIKE "' . $prefixeTable . 'additionalpages"';
8  $result = pwg_query($query);
9  if (!mysql_fetch_row($result))
10  {
11    $query = 'CREATE TABLE ' . $prefixeTable . 'additionalpages (
12id SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT,
13pos SMALLINT( 5 ) NULL default NULL ,
14lang VARCHAR( 255 ) NULL default NULL ,
15title VARCHAR( 255 ) NOT NULL ,
16content LONGTEXT NOT NULL ,
17users VARCHAR( 255 ) NULL DEFAULT NULL ,
18groups VARCHAR( 255 ) NULL DEFAULT NULL ,
19level TINYINT( 3 ) UNSIGNED NOT NULL DEFAULT "0" ,
20permalink VARCHAR( 64 ) NULL DEFAULT NULL ,
21standalone ENUM( "true", "false" ) NOT NULL DEFAULT "false" ,
22PRIMARY KEY (id) ,
23INDEX (pos) ,
24INDEX (lang))
25DEFAULT CHARACTER SET utf8;';
26    pwg_query($query);
27  }
28
29  if (!isset($conf['additional_pages']))
30  {
31    $config = array(
32      'languages' => array('default' => 'Additional Pages'),
33      'show_home' => true,
34      'level_perm' => false,
35      'group_perm' => false,
36      'user_perm' => false,
37      'homepage' => null,
38    );
39
40    $query = 'INSERT INTO ' . CONFIG_TABLE . ' (param,value,comment)
41VALUES ("additional_pages" , "'.pwg_db_real_escape_string(serialize($config)).'" , "Additional Pages config configuration");';
42    pwg_query($query);
43  }
44}
45
46function plugin_activate()
47{
48  global $prefixeTable;
49
50  $q = pwg_query('SHOW COLUMNS FROM ' . HISTORY_TABLE . ' LIKE "section"');
51  $section = mysql_fetch_array($q);
52  $type = $section['Type'];
53
54  // Add additional page section into history table
55  if (strpos($type, 'additional_page') === false)
56  {
57    $type = strtr($type , array(')' => ',\'additional_page\')'));
58    pwg_query('ALTER TABLE ' . HISTORY_TABLE . ' CHANGE section section ' . $type . ' DEFAULT NULL');
59  }
60}
61
62function plugin_uninstall()
63{
64  global $prefixeTable;
65
66        $q = 'DROP TABLE ' . $prefixeTable . 'additionalpages;';
67  pwg_query($q);
68
69        $q = 'DELETE FROM ' . CONFIG_TABLE . ' WHERE param="additional_pages" LIMIT 1;';
70  pwg_query($q);
71}
72
73?>
Note: See TracBrowser for help on using the repository browser.