Subversion Repositories eFlore/Applications.cel

Rev

Rev 1947 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1947 Rev 2065
Line 6... Line 6...
6
-- -----------------------------------------------------
6
-- -----------------------------------------------------
7
-- Table `cel_obs_images`
7
-- Table `cel_obs_images`
8
-- -----------------------------------------------------
8
-- -----------------------------------------------------
9
DROP TABLE IF EXISTS `cel_obs_images` ;
9
DROP TABLE IF EXISTS `cel_obs_images` ;
Line 10... Line 10...
10
 
10
 
11
CREATE TABLE IF NOT EXISTS `cel_obs_images` (
11
CREATE  TABLE IF NOT EXISTS `cel_obs_images` (
12
  `id_image` BIGINT NOT NULL,
12
  `id_image` BIGINT NOT NULL ,
13
  `id_observation` BIGINT NOT NULL,
13
  `id_observation` BIGINT NOT NULL ,
14
  `date_liaison` DATETIME NOT NULL,
14
  `date_liaison` DATETIME NOT NULL ,
15
  PRIMARY KEY (`id_image`, `id_observation`),
15
  PRIMARY KEY (`id_image`, `id_observation`) ,
16
  INDEX `observation` (`id_observation` ASC),
16
  INDEX `observation` (`id_observation` ASC) ,
17
  INDEX `image` (`id_image` ASC))
17
  INDEX `image` (`id_image` ASC) )
18
ENGINE = MyISAM
18
ENGINE = MyISAM
19
DEFAULT CHARACTER SET = utf8
19
DEFAULT CHARACTER SET = utf8
Line 20... Line 20...
20
COLLATE = utf8_unicode_ci;
20
COLLATE = utf8_unicode_ci;
21
 
21
 
22
 
22
 
23
-- -----------------------------------------------------
23
-- -----------------------------------------------------
Line 24... Line 24...
24
-- Table `cel_utilisateurs`
24
-- Table `cel_utilisateurs`
25
-- -----------------------------------------------------
25
-- -----------------------------------------------------
26
DROP TABLE IF EXISTS `cel_utilisateurs` ;
26
DROP TABLE IF EXISTS `cel_utilisateurs` ;
27
 
27
 
28
CREATE TABLE IF NOT EXISTS `cel_utilisateurs` (
28
CREATE  TABLE IF NOT EXISTS `cel_utilisateurs` (
29
  `id_utilisateur` INT NOT NULL,
29
  `id_utilisateur` INT NOT NULL ,
30
  `prenom` VARCHAR(255) NULL DEFAULT NULL,
30
  `prenom` VARCHAR(255) NULL DEFAULT NULL ,
31
  `nom` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
31
  `nom` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
32
  `courriel` VARCHAR(255) NOT NULL,
32
  `courriel` VARCHAR(255) NOT NULL ,
33
  `mot_de_passe` VARCHAR(45) NOT NULL,
33
  `mot_de_passe` VARCHAR(45) NOT NULL ,
34
  `admin` TINYINT(1) NULL DEFAULT '0',
34
  `admin` TINYINT(1) NULL DEFAULT '0' ,
35
  `licence_acceptee` TINYINT(1) NULL DEFAULT '0' COMMENT 'Acceptation de la licence utilisateur pour le cel\n',
35
  `licence_acceptee` TINYINT(1) NULL DEFAULT '0' COMMENT 'Acceptation de la licence utilisateur pour le cel\n' ,
36
  `preferences` LONGTEXT NULL DEFAULT NULL COMMENT 'Préférences utilisateur sérialisées sous une forme à définir\n',
36
  `preferences` LONGTEXT NULL DEFAULT NULL COMMENT 'Préférences utilisateur sérialisées sous une forme à définir\n' ,
37
  `date__premiere_utilisation` DATETIME NOT NULL,
37
  `date__premiere_utilisation` DATETIME NOT NULL ,
Line 38... Line 38...
38
  PRIMARY KEY (`id_utilisateur`))
38
  PRIMARY KEY (`id_utilisateur`) )
39
ENGINE = MyISAM
39
ENGINE = MyISAM
40
DEFAULT CHARACTER SET = utf8
40
DEFAULT CHARACTER SET = utf8
41
COLLATE = utf8_general_ci;
41
COLLATE = utf8_general_ci;
Line 42... Line 42...
42
 
42
 
43
 
43
 
44
-- -----------------------------------------------------
44
-- -----------------------------------------------------
45
-- Table `cel_mots_cles_images`
-
 
46
-- -----------------------------------------------------
-
 
47
DROP TABLE IF EXISTS `cel_mots_cles_images` ;
-
 
48
 
-
 
49
CREATE TABLE IF NOT EXISTS `cel_mots_cles_images` (
-
 
50
  `id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL COMMENT 'Identifiant du mot-clé pour une position donnée dans l\'arbre d\'utilisateur.\nLe même mot-clé peut être placé à plusieurs endroits de l\'arbre et aura donc deux id distincts.',
45
-- Table `cel_arbre_mots_cles_images`
51
  `id_utilisateur` VARCHAR(255) NOT NULL,
-
 
52
  `mot_cle` VARCHAR(50) NOT NULL COMMENT 'Mot clé de l\'utilisateur pour une position dans l\'arbre.',
-
 
53
  `md5` VARCHAR(32) NOT NULL COMMENT 'MD5 du mot clé en minuscule.',
-
 
54
  `bg` BIGINT NOT NULL COMMENT 'Bordure gauche.',
46
-- -----------------------------------------------------
55
  `bd` BIGINT NOT NULL COMMENT 'bordure droite.',
-
 
56
  `niveau` INT NOT NULL COMMENT 'Niveau du mot clé dans l\'arbre.',
-
 
57
  `ce_mot_cle_image_parent` VARCHAR(128) NOT NULL,
-
 
58
  PRIMARY KEY (`id_mot_cle_image`, `id_utilisateur`),
47
DROP TABLE IF EXISTS `cel_arbre_mots_cles_images` ;
59
  CONSTRAINT `fk_cel_mots_cles_images_cel_utilisateur1`
-
 
60
    FOREIGN KEY (`id_utilisateur`)
-
 
61
    REFERENCES `cel_utilisateurs` (`id_utilisateur`)
-
 
62
    ON DELETE NO ACTION
48
 
63
    ON UPDATE NO ACTION,
-
 
64
  CONSTRAINT `fk_cel_mots_cles_images_cel_mots_cles_images1`
-
 
65
    FOREIGN KEY (`ce_mot_cle_image_parent`)
-
 
66
    REFERENCES `cel_mots_cles_images` (`id_mot_cle_image`)
-
 
Line 67... Line 49...
67
    ON DELETE NO ACTION
49
CREATE  TABLE IF NOT EXISTS `cel_arbre_mots_cles_images` (
68
    ON UPDATE NO ACTION)
50
  `id_mot_cle` INT NOT NULL ,
69
ENGINE = InnoDB
51
  `chemin` VARCHAR(2048) NULL ,
70
DEFAULT CHARACTER SET = utf8
52
  `mot_cle` VARCHAR(80) NULL ,
Line 71... Line 53...
71
COLLATE = utf8_general_ci
53
  `id_utilisateur` VARCHAR(255) NULL ,
72
COMMENT = 'Table des mots clés, à utiliser avec des transactions !\n'
54
  PRIMARY KEY (`id_mot_cle`) )
73
ROW_FORMAT = COMPACT;
-
 
74
 
55
ENGINE = MyISAM;
75
 
56
 
76
-- -----------------------------------------------------
-
 
77
-- Table `cel_images_mots_cles`
57
 
78
-- -----------------------------------------------------
-
 
79
DROP TABLE IF EXISTS `cel_images_mots_cles` ;
-
 
Line 80... Line 58...
80
 
58
-- -----------------------------------------------------
81
CREATE TABLE IF NOT EXISTS `cel_images_mots_cles` (
59
-- Table `cel_mots_cles_images_liaison`
82
  `id_image` BIGINT NOT NULL,
60
-- -----------------------------------------------------
83
  `id_mot_cle_image` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
61
DROP TABLE IF EXISTS `cel_mots_cles_images_liaison` ;
Line 84... Line 62...
84
  `id_utilisateur` VARCHAR(128) NOT NULL,
62
 
85
  PRIMARY KEY (`id_image`, `id_mot_cle_image`, `id_utilisateur`),
63
CREATE  TABLE IF NOT EXISTS `cel_mots_cles_images_liaison` (
86
  INDEX `image` (`id_image` ASC))
64
  `id_element_lie` INT NOT NULL ,
87
ENGINE = MyISAM
65
  `id_mot_cle` INT NOT NULL ,
88
DEFAULT CHARACTER SET = utf8
66
  PRIMARY KEY (`id_element_lie`, `id_mot_cle`) )
89
COLLATE = utf8_general_ci;
67
ENGINE = MyISAM;
90
 
68
 
91
 
69
 
92
-- -----------------------------------------------------
70
-- -----------------------------------------------------
93
-- Table `cel_images`
71
-- Table `cel_images`
94
-- -----------------------------------------------------
72
-- -----------------------------------------------------
95
DROP TABLE IF EXISTS `cel_images` ;
73
DROP TABLE IF EXISTS `cel_images` ;
96
 
74
 
97
CREATE TABLE IF NOT EXISTS `cel_images` (
75
CREATE  TABLE IF NOT EXISTS `cel_images` (
98
  `id_image` BIGINT NOT NULL AUTO_INCREMENT,
76
  `id_image` BIGINT NOT NULL AUTO_INCREMENT ,
99
  `ordre` BIGINT NOT NULL,
77
  `ordre` BIGINT NOT NULL ,
100
  `ce_utilisateur` VARCHAR(255) NOT NULL COMMENT 'L\'id utilisateur est un int mais on utilise un varchar pour stocker des observations avec des identifiants temporaires\n',
78
  `ce_utilisateur` VARCHAR(255) NOT NULL COMMENT 'L\'id utilisateur est un int mais on utilise un varchar pour stocker des observations avec des identifiants temporaires\n' ,
101
  `prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
79
  `prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
102
  `nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
80
  `nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
103
  `courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
81
  `courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
104
  `hauteur` INT NOT NULL,
82
  `hauteur` INT NOT NULL ,
105
  `largeur` INT NOT NULL,
83
  `largeur` INT NOT NULL ,
106
  `appareil_fabriquant` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
84
  `appareil_fabriquant` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
107
  `appareil_modele` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
85
  `appareil_modele` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
108
  `date_prise_de_vue` DATETIME NULL DEFAULT NULL,
86
  `date_prise_de_vue` DATETIME NULL DEFAULT NULL ,
109
  `note_qualite` DECIMAL(1,0) NULL DEFAULT NULL,
87
  `note_qualite` DECIMAL(1,0) NULL DEFAULT NULL ,
110
  `mots_cles_texte` LONGTEXT NULL DEFAULT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.\n',
88
  `mots_cles_texte` LONGTEXT NULL DEFAULT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.\n' ,
111
  `commentaire` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
89
  `commentaire` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
112
  `nom_original` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
90
  `nom_original` VARCHAR(255) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
113
  `md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
91
  `md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
114
  `meta_exif` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
92
  `meta_exif` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
Line 115... Line 93...
115
  `meta_iptc` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL,
93
  `meta_iptc` LONGTEXT CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NULL DEFAULT NULL ,
116
  `meta_xmp` LONGTEXT NULL DEFAULT NULL,
94
  `meta_xmp` LONGTEXT NULL DEFAULT NULL ,
117
  `meta_makernote` LONGTEXT NULL DEFAULT NULL,
95
  `meta_makernote` LONGTEXT NULL DEFAULT NULL ,
118
  `meta_autres` LONGTEXT NULL DEFAULT NULL,
96
  `meta_autres` LONGTEXT NULL DEFAULT NULL ,
Line 119... Line 97...
119
  `date_modification` DATETIME NOT NULL,
97
  `date_modification` DATETIME NOT NULL ,
120
  `date_creation` DATETIME NOT NULL COMMENT 'Date d\'ajout de l\'image au CEL.',
98
  `date_creation` DATETIME NOT NULL COMMENT 'Date d\'ajout de l\'image au CEL.' ,
121
  `publiable_eflore` TINYINT(1) NOT NULL DEFAULT 1,
99
  `publiable_eflore` TINYINT(1) NOT NULL DEFAULT 1 ,
122
  PRIMARY KEY (`id_image`),
100
  PRIMARY KEY (`id_image`) ,
123
  INDEX `id_image` (`id_image` ASC, `ordre` ASC, `ce_utilisateur` ASC))
101
  INDEX `id_image` (`id_image` ASC, `ordre` ASC, `ce_utilisateur` ASC) )
124
ENGINE = MyISAM
102
ENGINE = MyISAM
125
AUTO_INCREMENT = 265
103
AUTO_INCREMENT = 265
126
DEFAULT CHARACTER SET = utf8
104
DEFAULT CHARACTER SET = utf8
127
COLLATE = utf8_general_ci;
105
COLLATE = utf8_general_ci;
128
 
106
 
129
 
107
 
130
-- -----------------------------------------------------
108
-- -----------------------------------------------------
131
-- Table `cel_mots_cles_obs`
-
 
132
-- -----------------------------------------------------
109
-- Table `cel_zones_geo`
133
DROP TABLE IF EXISTS `cel_mots_cles_obs` ;
110
-- -----------------------------------------------------
134
 
-
 
135
CREATE TABLE IF NOT EXISTS `cel_mots_cles_obs` (
111
DROP TABLE IF EXISTS `cel_zones_geo` ;
136
  `id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
-
 
137
  `id_utilisateur` VARCHAR(255) NOT NULL,
-
 
138
  `mot_cle` VARCHAR(50) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
112
 
139
  `md5` VARCHAR(32) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
113
CREATE  TABLE IF NOT EXISTS `cel_zones_geo` (
140
  `bg` BIGINT NOT NULL,
114
  `id_zone_geo` VARCHAR(50) NOT NULL ,
141
  `bd` BIGINT NOT NULL,
115
  `code` VARCHAR(10) NOT NULL ,
142
  `niveau` INT NOT NULL,
-
 
143
  `ce_mot_cle_obs_parent` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
-
 
Line 144... Line 116...
144
  PRIMARY KEY (`id_mot_cle_obs`, `id_utilisateur`),
116
  `nom` VARCHAR(255) NOT NULL ,
145
  CONSTRAINT `fk_cel_mots_cles_obs_cel_utilisateur1`
117
  `utm_secteur` CHAR(3) NOT NULL ,
146
    FOREIGN KEY (`id_utilisateur`)
118
  `utm_x` INT NOT NULL DEFAULT '0' ,
147
    REFERENCES `cel_utilisateurs` (`id_utilisateur`)
119
  `utm_y` INT NOT NULL DEFAULT '0' ,
Line 148... Line 120...
148
    ON DELETE NO ACTION
120
  `wgs84_latitude` FLOAT NOT NULL ,
149
    ON UPDATE NO ACTION,
121
  `wgs84_longitude` FLOAT NOT NULL ,
150
  CONSTRAINT `fk_cel_mots_cles_obs_cel_mots_cles_obs1`
122
  `date_modification` DATETIME NOT NULL ,
151
    FOREIGN KEY (`ce_mot_cle_obs_parent`)
123
  `ce_zone_geo_parente` VARCHAR(50) NULL DEFAULT NULL ,
152
    REFERENCES `cel_mots_cles_obs` (`id_mot_cle_obs`)
124
  `bg` BIGINT NULL ,
153
    ON DELETE NO ACTION
125
  `bd` BIGINT NULL ,
154
    ON UPDATE NO ACTION)
126
  `niveau` INT NULL ,
155
ENGINE = InnoDB
127
  PRIMARY KEY (`id_zone_geo`) ,
156
DEFAULT CHARACTER SET = utf8
128
  INDEX `nom` (`nom` ASC) )
-
 
129
ENGINE = MyISAM
Line 157... Line 130...
157
COLLATE = utf8_general_ci
130
DEFAULT CHARACTER SET = utf8
158
COMMENT = 'Table des mots clés, à utiliser avec des transactions !'
131
COLLATE = utf8_general_ci;
159
ROW_FORMAT = COMPACT;
132
 
160
 
133
 
Line 161... Line 134...
161
 
134
-- -----------------------------------------------------
162
-- -----------------------------------------------------
135
-- Table `cel_obs_etendues`
163
-- Table `cel_obs_mots_cles`
136
-- -----------------------------------------------------
164
-- -----------------------------------------------------
137
DROP TABLE IF EXISTS `cel_obs_etendues` ;
165
DROP TABLE IF EXISTS `cel_obs_mots_cles` ;
138
 
166
 
-
 
167
CREATE TABLE IF NOT EXISTS `cel_obs_mots_cles` (
-
 
168
  `id_observation` BIGINT NOT NULL,
-
 
169
  `id_mot_cle_obs` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_unicode_ci' NOT NULL,
-
 
170
  `id_utilisateur` VARCHAR(128) NOT NULL,
-
 
171
  PRIMARY KEY (`id_observation`, `id_mot_cle_obs`, `id_utilisateur`),
-
 
172
  INDEX `observation` (`id_observation` ASC))
-
 
173
ENGINE = MyISAM
-
 
174
DEFAULT CHARACTER SET = utf8
-
 
175
COLLATE = utf8_general_ci;
139
CREATE  TABLE IF NOT EXISTS `cel_obs_etendues` (
176
 
-
 
177
 
140
  `id_observation` BIGINT NOT NULL ,
178
-- -----------------------------------------------------
-
 
179
-- Table `cel_zones_geo`
-
 
Line 180... Line 141...
180
-- -----------------------------------------------------
141
  `cle` VARCHAR(255) NOT NULL COMMENT 'Clé du champ au format chat mot (sans accents).\nEx. : maCle, uneAutreCle' ,
181
DROP TABLE IF EXISTS `cel_zones_geo` ;
142
  `label` VARCHAR(255) NOT NULL COMMENT 'Intitulé du champ à afficher dans les formulaires.' ,
182
 
143
  `valeur` TEXT NOT NULL COMMENT 'Valeur du champ.' ,
183
CREATE TABLE IF NOT EXISTS `cel_zones_geo` (
144
  PRIMARY KEY (`id_observation`, `cle`) )
Line 184... Line 145...
184
  `id_zone_geo` VARCHAR(50) NOT NULL,
145
ENGINE = MyISAM
185
  `code` VARCHAR(10) NOT NULL,
146
DEFAULT CHARACTER SET = utf8
186
  `nom` VARCHAR(255) NOT NULL,
-
 
187
  `utm_secteur` CHAR(3) NOT NULL,
-
 
188
  `utm_x` INT NOT NULL DEFAULT '0',
147
COLLATE = utf8_general_ci
189
  `utm_y` INT NOT NULL DEFAULT '0',
148
COMMENT = 'Stockage d\'infos supplémentaires sur une observation';
190
  `wgs84_latitude` FLOAT NOT NULL,
149
 
191
  `wgs84_longitude` FLOAT NOT NULL,
-
 
192
  `date_modification` DATETIME NOT NULL,
-
 
193
  `ce_zone_geo_parente` VARCHAR(50) NULL DEFAULT NULL,
-
 
Line 194... Line 150...
194
  `bg` BIGINT NULL,
150
 
195
  `bd` BIGINT NULL,
151
-- -----------------------------------------------------
196
  `niveau` INT NULL,
152
-- Table `cel_arbre_mots_cles_obs`
197
  PRIMARY KEY (`id_zone_geo`),
153
-- -----------------------------------------------------
Line 198... Line 154...
198
  INDEX `nom` (`nom` ASC))
154
DROP TABLE IF EXISTS `cel_arbre_mots_cles_obs` ;
199
ENGINE = MyISAM
155
 
200
DEFAULT CHARACTER SET = utf8
156
CREATE  TABLE IF NOT EXISTS `cel_arbre_mots_cles_obs` (
201
COLLATE = utf8_general_ci;
157
  `id_mot_cle` INT NOT NULL ,
202
 
158
  `chemin` VARCHAR(2048) NULL ,
203
 
159
  `mot_cle` VARCHAR(80) NULL ,
204
-- -----------------------------------------------------
160
  `id_utilisateur` VARCHAR(255) NULL ,
205
-- Table `cel_obs_etendues`
161
  PRIMARY KEY (`id_mot_cle`) )
206
-- -----------------------------------------------------
162
ENGINE = MyISAM;
207
DROP TABLE IF EXISTS `cel_obs_etendues` ;
163
 
208
 
164
 
209
CREATE TABLE IF NOT EXISTS `cel_obs_etendues` (
165
-- -----------------------------------------------------
210
  `id_observation` BIGINT NOT NULL,
166
-- Table `cel_mots_cles_obs_liaison`
211
  `cle` VARCHAR(255) NOT NULL COMMENT 'Clé du champ au format chat mot (sans accents).\nEx. : maCle, uneAutreCle',
167
-- -----------------------------------------------------
212
  `label` VARCHAR(255) NOT NULL COMMENT 'Intitulé du champ à afficher dans les formulaires.',
168
DROP TABLE IF EXISTS `cel_mots_cles_obs_liaison` ;
213
  `valeur` TEXT NOT NULL COMMENT 'Valeur du champ.',
169
 
214
  PRIMARY KEY (`id_observation`, `cle`))
170
CREATE  TABLE IF NOT EXISTS `cel_mots_cles_obs_liaison` (
215
ENGINE = MyISAM
171
  `id_element_lie` INT NOT NULL ,
216
DEFAULT CHARACTER SET = utf8
172
  `id_mot_cle` INT NOT NULL ,
217
COLLATE = utf8_general_ci
173
  PRIMARY KEY (`id_element_lie`, `id_mot_cle`) )
218
COMMENT = 'Stockage d\'infos supplémentaires sur une observation';
174
ENGINE = MyISAM;
219
 
175
 
220
 
176
 
221
-- -----------------------------------------------------
177
-- -----------------------------------------------------
222
-- Table `cel_obs`
178
-- Table `cel_obs`
223
-- -----------------------------------------------------
179
-- -----------------------------------------------------
224
DROP TABLE IF EXISTS `cel_obs` ;
180
DROP TABLE IF EXISTS `cel_obs` ;
225
 
181
 
226
CREATE TABLE IF NOT EXISTS `cel_obs` (
182
CREATE  TABLE IF NOT EXISTS `cel_obs` (
227
  `id_observation` BIGINT NOT NULL AUTO_INCREMENT,
183
  `id_observation` BIGINT NOT NULL AUTO_INCREMENT ,
228
  `ordre` BIGINT NOT NULL,
184
  `ordre` BIGINT NOT NULL ,
229
  `ce_utilisateur` VARCHAR(255) NOT NULL,
185
  `ce_utilisateur` VARCHAR(255) NOT NULL ,
230
  `prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
186
  `prenom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
231
  `nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
187
  `nom_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
232
  `courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL,
188
  `courriel_utilisateur` VARCHAR(255) NULL DEFAULT NULL ,
233
  `nom_sel` VARCHAR(601) NULL DEFAULT NULL COMMENT 'doit pouvoir contenir CONCAT(bdtfx.nom_sci, \" \", bdtfx.auteur) soit 601 caractères',
189
  `nom_sel` VARCHAR(601) NULL DEFAULT NULL COMMENT 'doit pouvoir contenir CONCAT(bdtfx.nom_sci, \" \", bdtfx.auteur) soit 601 caractères' ,
234
  `nom_sel_nn` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro du nom sélectionné.',
190
  `nom_sel_nn` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro du nom sélectionné.' ,
235
  `nom_ret` VARCHAR(601) NULL DEFAULT NULL COMMENT 'doit pouvoir contenir CONCAT(bdtfx.nom_sci, \" \", bdtfx.auteur) soit 601 caractères',
191
  `nom_ret` VARCHAR(601) NULL DEFAULT NULL COMMENT 'doit pouvoir contenir CONCAT(bdtfx.nom_sci, \" \", bdtfx.auteur) soit 601 caractères' ,
236
  `nom_ret_nn` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro du nom retenu = num_nom_retenu dans bdtfx',
192
  `nom_ret_nn` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro du nom retenu = num_nom_retenu dans bdtfx' ,
237
  `nt` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro taxonomique.',
-
 
238
  `famille` VARCHAR(255) NULL DEFAULT NULL,
193
  `nt` DECIMAL(9,0) NULL DEFAULT NULL COMMENT 'Numéro taxonomique.' ,
239
  `nom_referentiel` VARCHAR(255) NULL DEFAULT NULL,
194
  `famille` VARCHAR(255) NULL DEFAULT NULL ,
240
  `ce_zone_geo` VARCHAR(50) NULL DEFAULT NULL,
195
  `nom_referentiel` VARCHAR(255) NULL DEFAULT NULL ,
-
 
196
  `ce_zone_geo` VARCHAR(50) NULL DEFAULT NULL ,
241
  `zone_geo` VARCHAR(255) NULL DEFAULT NULL,
197
  `zone_geo` VARCHAR(255) NULL DEFAULT NULL ,
242
  `lieudit` VARCHAR(255) NULL DEFAULT NULL,
198
  `lieudit` VARCHAR(255) NULL DEFAULT NULL ,
243
  `station` VARCHAR(255) NULL DEFAULT NULL,
199
  `station` VARCHAR(255) NULL DEFAULT NULL ,
Line 244... Line 200...
244
  `milieu` VARCHAR(255) NULL DEFAULT NULL,
200
  `milieu` VARCHAR(255) NULL DEFAULT NULL ,
245
  `latitude` DECIMAL(8,5) NULL DEFAULT NULL,
201
  `latitude` DECIMAL(8,5) NULL DEFAULT NULL ,
246
  `longitude` DECIMAL(8,5) NULL DEFAULT NULL,
202
  `longitude` DECIMAL(8,5) NULL DEFAULT NULL ,
247
  `altitude` INT(5) NULL DEFAULT NULL,
203
  `altitude` INT(5) NULL DEFAULT NULL ,
Line 248... Line 204...
248
  `geodatum` VARCHAR(25) NULL DEFAULT NULL COMMENT 'Référentiel géographique utilisé.\nPar exmple : WGS84',
204
  `geodatum` VARCHAR(25) NULL DEFAULT NULL COMMENT 'Référentiel géographique utilisé.\nPar exmple : WGS84' ,
249
  `date_observation` DATETIME NULL DEFAULT NULL,
205
  `date_observation` DATETIME NULL DEFAULT NULL ,
250
  `mots_cles_texte` LONGTEXT NULL DEFAULT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.',
206
  `mots_cles_texte` LONGTEXT NULL DEFAULT NULL COMMENT 'Champ calculé contenant la liste des mots clés utilisateurs séparé par des virgules.' ,
251
  `commentaire` TEXT NULL DEFAULT NULL,
207
  `commentaire` TEXT NULL DEFAULT NULL ,
252
  `transmission` TINYINT(1) NULL DEFAULT NULL,
208
  `transmission` TINYINT(1) NULL DEFAULT NULL ,
253
  `date_creation` DATETIME NULL DEFAULT NULL,
209
  `date_creation` DATETIME NULL DEFAULT NULL ,
254
  `date_modification` DATETIME NULL DEFAULT NULL,
210
  `date_modification` DATETIME NULL DEFAULT NULL ,
255
  `date_transmission` DATETIME NULL DEFAULT NULL,
211
  `date_transmission` DATETIME NULL DEFAULT NULL ,
256
  `abondance` VARCHAR(50) NULL DEFAULT NULL,
212
  `abondance` VARCHAR(50) NULL DEFAULT NULL ,
257
  `certitude` VARCHAR(255) NULL DEFAULT NULL,
213
  `certitude` VARCHAR(255) NULL DEFAULT NULL ,
258
  `phenologie` VARCHAR(255) NULL DEFAULT NULL,
214
  `phenologie` VARCHAR(255) NULL DEFAULT NULL ,
Line 292... Line 248...
292
-- -----------------------------------------------------
248
-- -----------------------------------------------------
293
-- Table `cel_images_etendues`
249
-- Table `cel_images_etendues`
294
-- -----------------------------------------------------
250
-- -----------------------------------------------------
295
DROP TABLE IF EXISTS `cel_images_etendues` ;
251
DROP TABLE IF EXISTS `cel_images_etendues` ;
Line 296... Line 252...
296
 
252
 
297
CREATE TABLE IF NOT EXISTS `cel_images_etendues` (
253
CREATE  TABLE IF NOT EXISTS `cel_images_etendues` (
298
  `id_observation` BIGINT NOT NULL,
254
  `id_observation` BIGINT NOT NULL ,
299
  `cle` VARCHAR(255) NOT NULL COMMENT 'Clé du champ au format chat mot (sans accents).\nEx. : maCle, uneAutreCle',
255
  `cle` VARCHAR(255) NOT NULL COMMENT 'Clé du champ au format chat mot (sans accents).\nEx. : maCle, uneAutreCle' ,
300
  `label` VARCHAR(45) NOT NULL COMMENT 'Intitulé du champ à afficher dans les formulaires.',
256
  `label` VARCHAR(45) NOT NULL COMMENT 'Intitulé du champ à afficher dans les formulaires.' ,
301
  `valeur` TEXT NOT NULL COMMENT 'Valeur du champ.',
257
  `valeur` TEXT NOT NULL COMMENT 'Valeur du champ.' ,
302
  PRIMARY KEY (`id_observation`, `cle`))
258
  PRIMARY KEY (`id_observation`, `cle`) )
303
ENGINE = MyISAM
259
ENGINE = MyISAM
304
DEFAULT CHARACTER SET = utf8
260
DEFAULT CHARACTER SET = utf8
305
COLLATE = utf8_general_ci
261
COLLATE = utf8_general_ci
Line 319... Line 275...
319
-- -----------------------------------------------------
275
-- -----------------------------------------------------
320
-- View `cel_utilisateurs`
276
-- View `cel_utilisateurs`
321
-- -----------------------------------------------------
277
-- -----------------------------------------------------
322
DROP VIEW IF EXISTS `cel_utilisateurs` ;
278
DROP VIEW IF EXISTS `cel_utilisateurs` ;
323
DROP TABLE IF EXISTS `cel_utilisateurs`;
279
DROP TABLE IF EXISTS `cel_utilisateurs`;
324
CREATE  OR REPLACE VIEW `cel_utilisateurs` AS 
280
CREATE  OR REPLACE VIEW `cel_utilisateurs` AS 
325
	SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,  
281
	SELECT at.U_ID AS id_utilisateur, at.U_SURNAME AS prenom, at.U_NAME AS nom, at.U_MAIL AS courriel, at.U_PASSWD AS mot_de_passe,  
326
		ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation 
282
		ui.licence_acceptee, ui.admin, ui.preferences, ui.date_premiere_utilisation 
327
	FROM tela_prod_v4.annuaire_tela AS at
283
	FROM tela_prod_v4.annuaire_tela AS at
328
		LEFT JOIN cel_utilisateurs_infos AS ui ON (ui.id_utilisateur = at.U_ID);
284
		LEFT JOIN cel_utilisateurs_infos AS ui ON (ui.id_utilisateur = at.U_ID);
Line 329... Line 285...
329
 
285
 
330
-- -----------------------------------------------------
286
-- -----------------------------------------------------
331
-- View `cel_tapir`
287
-- View `cel_tapir`
332
-- -----------------------------------------------------
288
-- -----------------------------------------------------
333
DROP VIEW IF EXISTS `cel_tapir` ;
289
DROP VIEW IF EXISTS `cel_tapir` ;
334
DROP TABLE IF EXISTS `cel_tapir`;
290
DROP TABLE IF EXISTS `cel_tapir`;
335
CREATE VIEW `cel_tapir` AS 
291
CREATE  OR REPLACE VIEW `cel_tapir` AS 
336
	select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
292
	select concat(_utf8'urn:lsid:tela-botanica.org:cel:',`o`.`id_observation`) AS `guid`,
337
		`o`.`id_observation` AS `observation_id`,
293
		`o`.`id_observation` AS `observation_id`,
338
		date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
294
		date_format(`o`.`date_observation`,'%Y-%m-%d') AS `observation_date`,
339
		`o`.`nom_sel` AS `nom_scientifique_complet`,
295
		`o`.`nom_sel` AS `nom_scientifique_complet`,
Line 349... Line 305...
349
		`o`.`geodatum` AS `lieu_geodatum`,
305
		`o`.`geodatum` AS `lieu_geodatum`,
350
		if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
306
		if((`o`.`geodatum` <> ''), 'Coordonnées issues de l''utilisation de Google Map', NULL) AS `lieu_georeference_source`,
351
		`o`.`lieudit` AS `lieu_localite`,
307
		`o`.`lieudit` AS `lieu_localite`,
352
		`o`.`prenom_utilisateur` AS `observateur_prenom`,
308
		`o`.`prenom_utilisateur` AS `observateur_prenom`,
353
		`o`.`nom_utilisateur` AS `observateur_nom`,
309
		`o`.`nom_utilisateur` AS `observateur_nom`,
354
		concat(_utf8'',substring_index(`o`.`courriel_utilisateur`,'@',1), '@...') AS `observateur_courriel`,
310
		`o`.`courriel_utilisateur` AS `observateur_courriel`,
355
		concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
311
		concat(`o`.`prenom_utilisateur`,_utf8' ',`o`.`nom_utilisateur`) AS `observateur_nom_complet`,
356
		concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',concat(_utf8'',substring_index(`o`.`courriel_utilisateur`,'@',1), '@...'),'>')) AS `observateur_intitule`,
312
		concat_ws(' ',`o`.`prenom_utilisateur`,`o`.`nom_utilisateur`,concat('<',`o`.`courriel_utilisateur`,'>')) AS `observateur_intitule`,
357
		`o`.`commentaire` AS `observation_commentaire`,
313
		`o`.`commentaire` AS `observation_commentaire`,
358
		concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
314
		concat(_utf8'nom_num_nomenclatural=',`o`.`nom_sel_nn`,'; ',
359
			'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
315
			'nom_ret=',encodeToDcsv(`o`.`nom_ret`),'; ',
360
			'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
316
			'nom_num_ret=',`o`.`nom_ret_nn`,'; ',
361
			'nom_num_taxonomique=',`o`.`nt`,'; ',
317
			'nom_num_taxonomique=',`o`.`nt`,'; ',
Line 373... Line 329...
373
	from (`cel_obs` `o` 
329
	from (`cel_obs` `o` 
374
		left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`))) 
330
		left join `cel_zones_geo` `zg` on((`o`.`ce_zone_geo` = `zg`.`id_zone_geo`))) 
375
	where `o`.`transmission` = 1 
331
	where `o`.`transmission` = 1 
376
		AND (`o`.`mots_cles_texte` NOT LIKE '%sensible%' OR `o`.`mots_cles_texte` IS NULL);
332
		AND (`o`.`mots_cles_texte` NOT LIKE '%sensible%' OR `o`.`mots_cles_texte` IS NULL);
Line -... Line 333...
-
 
333
 
377
 
334
 
378
SET SQL_MODE=@OLD_SQL_MODE;
335
SET SQL_MODE=@OLD_SQL_MODE;
379
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
336
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
-
 
337
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;