source: extensions/ContestResults/maintain.inc.php @ 9200

Last change on this file since 9200 was 9200, checked in by mistic100, 13 years ago

ContestResults :

  • Code revision
  • Add Letton (lv_LV) language, thanks to Aivars Baldone
  • Delete display options
  • Fix languages bugs
  • Improve public appearence
File size: 2.4 KB
Line 
1<?php
2if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
3
4// Configuration par défaut
5define('default_config' , serialize(array(
6        'menubar_mode' => array(
7                'link' => 0,
8                'block' => 1
9        ),
10        'menubar_link' => array(
11                'menu' => 1,
12                'specials' => 0
13        ),
14        'menubar_block' => array(
15                'number' => 5
16        )
17)));
18
19// Installtion
20function plugin_install() {
21        global $prefixeTable;
22
23        pwg_query("CREATE TABLE `" . $prefixeTable . "contests` (
24                `id` INT NOT NULL AUTO_INCREMENT ,
25                `name` VARCHAR( 255 ) NOT NULL ,
26                `date_begin` DATE NOT NULL ,
27                `date_end` DATE NOT NULL ,
28                `status` VARCHAR( 255 ) NOT NULL ,
29                `visible` TINYINT(1) NOT NULL ,
30                `logo` VARCHAR( 255 ) NULL ,
31                `banner` VARCHAR( 255 ) NULL ,
32                `summary` TEXT NULL ,
33                `presentation` TEXT NULL ,
34                `rules` TEXT NULL ,
35                `prices` TEXT NULL ,
36                `final` TEXT NULL
37                PRIMARY KEY ( `id` )
38        );");
39       
40        pwg_query("CREATE TABLE `" . $prefixeTable . "contests_results` (
41                `image_id` INT NOT NULL ,
42                `contest_id` INT NOT NULL ,
43                `rank` INT NOT NULL ,
44                `author` VARCHAR( 255 ) NOT NULL ,
45                `comment` TEXT NULL,
46                UNIQUE ( `image_id` , `contest_id` )
47        );");
48       
49        pwg_query("INSERT INTO " . CONFIG_TABLE . "(param,value,comment) VALUES('ContestResults', '" . default_config . "', 'Parametres du plugin ContestResults');");
50}
51
52// Activation
53function plugin_activate(){
54        global $conf, $prefixeTable;
55
56        // compatibilité avec les versions < 1.1 (ajout d'une entrée de configuration)
57        if (!isset($conf['ContestResults'])) {
58                pwg_query("INSERT INTO " . CONFIG_TABLE . "(param,value,comment) VALUES('ContestResults', '" . default_config . "', 'Parametres du plugin ContestResults');");
59        }
60       
61        // compatibilité avec les versions < 1.2 (suppression option d'affichage)
62        $field = pwg_query("SHOW COLUMNS FROM `" . $prefixeTable . "contests` LIKE 'presentation_display'");
63        if (pwg_db_num_rows($field)) {
64                pwg_query("ALTER TABLE `" . $prefixeTable . "contests` DROP `presentation_display`");
65                pwg_query("ALTER TABLE `" . $prefixeTable . "contests` DROP `rules_display`");
66                pwg_query("ALTER TABLE `" . $prefixeTable . "contests` DROP `prices_display`");
67                pwg_query("ALTER TABLE `" . $prefixeTable . "contests` DROP `final_display`");
68        }
69}
70
71// Désinstallation
72function plugin_uninstall() {
73        global $prefixeTable;
74
75        pwg_query("DROP TABLE `" . $prefixeTable . "contests`;");
76        pwg_query("DROP TABLE `" . $prefixeTable . "contests_results`;");
77        pwg_query("DELETE FROM " . CONFIG_TABLE . " WHERE `param` = 'ContestResults';");
78}
79?>
Note: See TracBrowser for help on using the repository browser.