diff --git a/src/module_extraction/web_service/sql/sqlQueries.xml b/src/module_extraction/web_service/sql/sqlQueries.xml
index 8e670ca0bc49b68c16652a51c89d590d64b6aa17..dcd6d8658025ce1a73fa7c65d9c898393ee270ed 100755
--- a/src/module_extraction/web_service/sql/sqlQueries.xml
+++ b/src/module_extraction/web_service/sql/sqlQueries.xml
@@ -7,21 +7,27 @@
 			<version>2017-01-00</version>
 			<code>
 				<![CDATA[
-					--Partie pour le module extraction version 2017-01-00 généré par WAB le 22/05/2018 à 09:09:32
+					--Partie pour le module extraction version 2017-01-00 généré par WAB le 15/11/2018 à 14:05:26
+					--Insertions des privilèges postgres
+					SELECT s_vitis.create_role_if_not_exists('extraction_admin', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
+					SELECT s_vitis.create_role_if_not_exists('extraction_user', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
+					--SQL Métier de la version 2017-01-00
 					--Partie pour le module extraction version 2017-01-01 généré par WAB le 18/07/2017 à 09:52:00
 					CREATE SCHEMA s_extraction AUTHORIZATION u_vitis;
 					GRANT ALL ON SCHEMA s_extraction TO u_vitis;
-					
 					GRANT USAGE ON SCHEMA s_extraction TO extraction_admin;
 					GRANT USAGE ON SCHEMA s_extraction TO extraction_user;
-					
 					CREATE SEQUENCE s_extraction.bo_id_extraction_seq START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1;
 					ALTER TABLE s_extraction.bo_id_extraction_seq OWNER TO u_vitis;
 					GRANT ALL ON SEQUENCE s_extraction.bo_id_extraction_seq TO u_vitis;
 					GRANT ALL ON SEQUENCE s_extraction.bo_id_extraction_seq TO extraction_admin;
 					GRANT ALL ON SEQUENCE s_extraction.bo_id_extraction_seq TO extraction_user;
-					
-					CREATE TABLE s_extraction.extraction (bo_id integer NOT NULL, status character varying(100), history text, creation_date date DEFAULT ('now'::text)::date, requestor character varying(50) DEFAULT "current_user"(), ae character varying(255), extent text, company character varying(50), layers text, vector_format_id character varying(100), coordsys_id character varying(50), note text, note_line text, raster_format_id character varying(100), extent_method character varying(50), signed boolean, accepted_by_cpa boolean, identification_complete boolean, definition_complete boolean, comment text, priority_id integer, id_com text, id_conseil text);
+					CREATE SEQUENCE s_extraction.seq_common START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1;
+					ALTER TABLE s_extraction.seq_common OWNER TO u_vitis;
+					GRANT ALL ON SEQUENCE s_extraction.seq_common TO u_vitis;
+					GRANT ALL ON SEQUENCE s_extraction.seq_common TO extraction_admin;
+					GRANT ALL ON SEQUENCE s_extraction.seq_common TO extraction_user;		
+					CREATE TABLE s_extraction.extraction (bo_id integer NOT NULL, status character varying(100), history text, creation_date date DEFAULT ('now'::text)::date, requestor character varying(50) DEFAULT "current_user"(), ae character varying(255), extent text, company character varying(50), layers text, vector_format_id character varying(100), coordsys_id character varying(50), note text, note_line text, raster_format_id character varying(100), extent_method character varying(50), signed boolean, accepted_by_cpa boolean, identification_complete boolean, definition_complete boolean, comment text, priority_id integer, id_com text, id_conseil text, email varchar(100),status_id integer);
 					ALTER TABLE s_extraction.extraction OWNER TO u_vitis;
 					CREATE TABLE s_extraction.rt_coordsys (coordsys_id character varying(50) NOT NULL, coordsys character varying(100));
 					ALTER TABLE s_extraction.rt_coordsys OWNER TO u_vitis;
@@ -31,7 +37,7 @@
 					ALTER TABLE s_extraction.rt_format OWNER TO u_vitis;
 					CREATE TABLE s_extraction.rt_layer (layer_id character varying(100) NOT NULL, layer character varying(255), category character varying(50), restriction character varying(50), unused_attributes text);
 					ALTER TABLE s_extraction.rt_layer OWNER TO u_vitis;
-					CREATE TABLE s_extraction.version(version character varying(100) NOT NULL, build integer NOT NULL, date timestamp with time zone NOT NULL, active boolean NOT NULL, CONSTRAINT version_pkey PRIMARY KEY (version));
+					CREATE TABLE s_extraction.version(version character varying(10) NOT NULL, build integer NOT NULL, date timestamp with time zone NOT NULL, active boolean NOT NULL, CONSTRAINT version_pkey PRIMARY KEY (version));
 					ALTER TABLE s_extraction.version OWNER TO u_vitis;
 					INSERT INTO s_extraction.rt_coordsys (coordsys_id, coordsys) VALUES ('EPSG:27572', 'Lambert 2 étendu');
 					INSERT INTO s_extraction.rt_coordsys (coordsys_id, coordsys) VALUES ('Lambert93', 'Lambert 93');
@@ -86,7 +92,6 @@
 					INSERT INTO s_extraction.rt_layer (layer_id, layer, category, restriction, unused_attributes) VALUES ('geofla.arrondissement', 'Arrondissement', 'Arrondissement', 'interne', 'x_centroid;y_centroid');
 					INSERT INTO s_extraction.rt_layer (layer_id, layer, category, restriction, unused_attributes) VALUES ('geofla.canton', 'Canton', 'Arrondissement', 'restreinit', 'x_centroid;y_centroid');
 					INSERT INTO s_extraction.rt_layer (layer_id, layer, category, restriction, unused_attributes) VALUES ('geofla.commune', 'Commune', 'Commune', 'public', 'x_centroid;y_centroid');
-					
 					ALTER TABLE ONLY s_extraction.extraction ADD CONSTRAINT pk_plan_bo_id PRIMARY KEY (bo_id);
 					ALTER TABLE ONLY s_extraction.rt_layer ADD CONSTRAINT pk_projet_type PRIMARY KEY (layer_id);
 					ALTER TABLE ONLY s_extraction.rt_format ADD CONSTRAINT pk_reseau PRIMARY KEY (format_id);
@@ -94,7 +99,6 @@
 					ALTER TABLE ONLY s_extraction.rt_feature_model ADD CONSTRAINT pk_rt_feature_model PRIMARY KEY (feature_type, attribute_name);
 					ALTER TABLE ONLY s_extraction.extraction ADD CONSTRAINT fk_coordsys_id FOREIGN KEY (coordsys_id) REFERENCES s_extraction.rt_coordsys(coordsys_id);
 					ALTER TABLE ONLY s_extraction.extraction ADD CONSTRAINT fk_format_id FOREIGN KEY (vector_format_id) REFERENCES s_extraction.rt_format(format_id);
-					
 					GRANT ALL ON TABLE s_extraction.extraction TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.extraction TO extraction_user;
 					GRANT ALL ON TABLE s_extraction.rt_coordsys TO u_vitis;
@@ -104,185 +108,16 @@
 					GRANT ALL ON TABLE s_extraction.rt_format TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.rt_format TO extraction_admin;
 					GRANT ALL ON TABLE s_extraction.rt_layer TO u_vitis;
-					GRANT ALL ON TABLE s_extraction.rt_layer TO extraction_admin;
-					
-					CREATE SEQUENCE s_extraction.seq_common START WITH 1 INCREMENT BY 1 NO MINVALUE NO MAXVALUE CACHE 1;
-					ALTER TABLE s_extraction.seq_common OWNER TO u_vitis;
-					GRANT ALL ON SEQUENCE s_extraction.seq_common TO u_vitis;
-					GRANT ALL ON SEQUENCE s_extraction.seq_common TO extraction_admin;
-					GRANT ALL ON SEQUENCE s_extraction.seq_common TO extraction_user;
-					
+					GRANT ALL ON TABLE s_extraction.rt_layer TO extraction_admin;			
 					CREATE TABLE s_extraction.rt_extraction_status (status_id int4 NOT NULL DEFAULT nextval('s_extraction.seq_common'::regclass), name varchar(50) NOT NULL, progress int4 NOT NULL, PRIMARY KEY (status_id));
-					GRANT ALL ON TABLE s_extraction.rt_extraction_status TO u_vitis;
+					ALTER TABLE s_extraction.rt_extraction_status OWNER TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.rt_extraction_status TO extraction_admin;
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('START', 0);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('Nouveau', 10);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('AE Demandé', 20);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('AE Généré', 30);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('AE Soumis', 40);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('Autorisée', 70);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('Refusée', 100);
-					INSERT INTO s_extraction.rt_extraction_status(name, progress) VALUES('Terminée', 100);
-					
-					--Partie s_vitis généré par WAB le 18/07/2017 à 09:52:00
-					DELETE FROM s_vitis.vm_section WHERE label_id ~ '^extraction_([0-9]+)$';
-					DELETE FROM s_vitis.vm_table_field WHERE label_id ~ '^extraction_([0-9]+)$';
-					DELETE FROM s_vitis.vm_table_button WHERE label_id ~ '^extraction_([0-9]+)$';
-					DELETE FROM s_vitis.vm_module WHERE module_id='extraction';
-					DELETE FROM s_vitis.vm_string WHERE string_id ~ '^extraction_([0-9]+)$';
-					INSERT INTO s_vitis.vm_module (module_id, description, version, label) VALUES ('extraction','Module Extraction',0.1,'extraction');
-					INSERT INTO s_vitis.group (group_id, name) SELECT (SELECT nextval('s_vitis.seq_common'::regclass)), 'demandeur' WHERE NOT EXISTS (SELECT group_id FROM s_vitis.group WHERE name='demandeur');
-					INSERT INTO s_vitis.group (group_id, name) SELECT (SELECT nextval('s_vitis.seq_common'::regclass)), 'controleur' WHERE NOT EXISTS (SELECT group_id FROM s_vitis.group WHERE name='controleur');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_1');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field bo_id', 'extraction_4');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field status', 'extraction_6');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_extraction', 'extraction_0');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field progress_level', 'extraction_7');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_2');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field company', 'extraction_8');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_3');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field requestor', 'extraction_5');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field layers', 'extraction_9');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_coordsys', 'extraction_10');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_11');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_12');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_13');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_format', 'extraction_14');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_15');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_16');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_17');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_layer', 'extraction_18');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_19');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_20');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_21');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field coordsys_id', 'extraction_22');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field coordsys', 'extraction_23');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field format_id', 'extraction_24');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field format', 'extraction_25');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field use_for_raster', 'extraction_26');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field use_for_vector', 'extraction_27');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field layer_id', 'extraction_28');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field layer', 'extraction_29');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field category', 'extraction_30');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field restriction', 'extraction_31');
-					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field unused_attributes', 'extraction_32');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_1','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_1','fr','Informations générales');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_0','fr','Extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_0','en','Extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_2','fr','Supprimer les plans');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_2','en','Supprimer les plans');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_3','fr','Ajouter une extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_3','en','Ajouter une extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_4','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_4','fr','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_5','en','Demandeur');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_5','fr','Demandeur');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_6','fr','Etat');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_6','en','Status');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_7','fr','Avancement');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_7','en','Progress level');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_8','fr','Organisme');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_8','en','Company');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_9','fr','Couches');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_9','en','Layers');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_10','en','Coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_10','fr','Systèmes de coordonnées');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_11','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_11','fr','Informations générales');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_12','en','Delete coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_12','fr','Supprimer les systèmes de coordonnées');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_13','en','Add coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_13','fr','Ajouter un système de coordonnées');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_14','en','Formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_14','fr','Formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_15','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_15','fr','Informations générales');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_16','en','Delete formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_16','fr','Supprimer les formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_17','en','Add format');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_17','fr','Ajouter un format');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_18','en','Layers');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_18','fr','Couches');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_19','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_19','fr','Informations générales');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_20','en','Delete layers');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_20','fr','Supprimer les couches');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_21','en','Add layer');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_21','fr','Ajouter une couche');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_22','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_22','fr','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_23','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_23','fr','Nom');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_24','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_24','fr','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_25','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_25','fr','Nom');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_26','en','Raster');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_26','fr','Raster');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_27','en','Vector');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_27','fr','Vecteur');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_28','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_28','fr','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_29','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_29','fr','Nom');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_30','en','Category');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_30','fr','Catégorie');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_31','en','Restriction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_31','fr','Restriction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_32','en','Unused attributes');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_32','fr','Attributs inutilisés');
-					INSERT INTO s_vitis.vm_mode (mode_id, module_id) VALUES ('extraction','extraction');
-					INSERT INTO s_vitis.vm_mode (mode_id, module_id) VALUES ('extraction_ref','extraction');
-					INSERT INTO s_vitis.vm_mode_rolname(index, mode_id, rolname) VALUES (0, 'extraction', 'extraction_user');
-					INSERT INTO s_vitis.vm_mode_rolname(index, mode_id, rolname) VALUES (45, 'extraction_ref', 'extraction_admin');
-					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 0, 'extraction', 'extraction_0', 'extraction/extractions', 'editSectionForm', 'showSectionForm', 'bo_id', 'ASC', 'extraction_extraction');
-					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 0, 'extraction_ref', 'extraction_10', 'extraction/coordsyss', 'editSectionForm', 'showSectionForm', 'coordsys_id', 'ASC', 'extraction_coordsys');
-					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 1, 'extraction_ref', 'extraction_14', 'extraction/formats', 'editSectionForm', 'showSectionForm', 'format_id', 'ASC', 'extraction_format');
-					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 2, 'extraction_ref', 'extraction_18', 'extraction/layers', 'editSectionForm', 'showSectionForm', 'layer_id', 'ASC', 'extraction_layer');
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_2', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_3', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_12', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_13', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_16', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_17', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_20', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_21', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'bo_id', '1', '1', 1, 50, 'right', 'extraction_4', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'requestor', '1', '1', 2, 200, 'left', 'extraction_5', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'status', '1', '1', 3, 150, 'left', 'extraction_6', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'company', '1', '1', 5, 200, 'left', 'extraction_8', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'layers', '1', '1', 6, 60, 'center', 'extraction_9', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), '<div data-app-extraction-layers-column="{{row.entity[col.field]}}"></div>',(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'progress_level', '1', '1', 4, 150, 'center', 'extraction_7', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), '<div data-app-navbar data-mode="info" data-hidevalue data-striped data-active></div>',(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'coordsys_id', '1', '1', 0, 200, 'left', 'extraction_22', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'coordsys', '1', '1', 1, 200, 'left', 'extraction_23', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'format_id', '1', '1', 0, 100, 'left', 'extraction_24', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'format', '1', '1', 1, 200, 'left', 'extraction_25', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'use_for_raster', '1', '1', 2, 100, 'left', 'extraction_26', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), '<div data-app-set-boolean-icon-column="{{row.entity[col.field]}}"></div>', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'use_for_vector', '1', '1', 3, 100, 'left', 'extraction_27', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), '<div data-app-set-boolean-icon-column="{{row.entity[col.field]}}"></div>', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'layer_id', '1', '1', 0, 150, 'left', 'extraction_28', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'layer', '1', '1', 1, 150, 'left', 'extraction_29', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'category', '1', '1', 2, 150, 'left', 'extraction_30', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'restriction', '1', '1', 3, 100, 'left', 'extraction_31', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'unused_attributes', '1', '1', 4, 110, 'left', 'extraction_32', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), '<div data-app-extraction-ref-unused-attributes-column="{{row.entity[col.field]}}"></div>',(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
-					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_1', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'extraction');
-					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_11', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), 'extraction');
-					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_15', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), 'extraction');
-					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_19', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), 'extraction');
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','START', 0);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Nouveau', 10);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Demandé', 20);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Généré', 30);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Soumis', 40);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Autorisée', 70);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Refusée', 100);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Terminée', 100);
 					CREATE TABLE s_extraction.rt_extraction_status_group(  status_id integer NOT NULL,  group_id integer NOT NULL,  extraction_status_group_id integer NOT NULL,  CONSTRAINT pk_workspace_group PRIMARY KEY (extraction_status_group_id),  CONSTRAINT fk_group_id_workspace FOREIGN KEY (group_id)      REFERENCES s_vitis."group" (group_id) MATCH SIMPLE      ON UPDATE RESTRICT ON DELETE CASCADE,  CONSTRAINT fk_status_id FOREIGN KEY (status_id)      REFERENCES s_extraction.rt_extraction_status (status_id) MATCH SIMPLE      ON UPDATE RESTRICT ON DELETE CASCADE)WITH (  OIDS=FALSE);
 					ALTER TABLE s_extraction.rt_extraction_status_group  OWNER TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.rt_extraction_status_group TO u_vitis;
 					GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO extraction_user;
 					GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO extraction_admin;
-					CREATE OR REPLACE VIEW s_extraction.v_extraction AS SELECT extraction.bo_id,extraction.status,extraction.history,extraction.creation_date,extraction.requestor,extraction.ae,extraction.extent,extraction.company,extraction.layers,extraction.vector_format_id,extraction.vector_format_id AS format_id,extraction.coordsys_id,extraction.raster_format_id,extraction.extent_method,extraction.signed,extraction.accepted_by_cpa,extraction.identification_complete,extraction.definition_complete,extraction.priority_id,extraction.id_com,extraction.id_conseil,extraction.note,rt_extraction_status.progress AS progress_level,extraction.status AS status_name FROM s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON extraction.status::text = rt_extraction_status.name::text LEFT JOIN s_extraction.rt_extraction_status_group on rt_extraction_status.status_id = rt_extraction_status_group.status_id LEFT JOIN s_vitis.user_group ON "rt_extraction_status_group".group_id = user_group.group_id LEFT JOIN s_vitis."user" ON "user_group".user_id = "user".user_id WHERE "user".login::name = "current_user"();
+					CREATE VIEW s_extraction.v_extraction AS SELECT DISTINCT extraction.bo_id, extraction.status_id, extraction.history, extraction.creation_date, extraction.requestor, extraction.ae, extraction.extent, extraction.company, extraction.layers, extraction.vector_format_id, extraction.vector_format_id AS format_id, extraction.coordsys_id, extraction.raster_format_id, extraction.extent_method, extraction.signed, extraction.accepted_by_cpa, extraction.identification_complete, extraction.definition_complete, extraction.priority_id, extraction.id_com, extraction.id_conseil, extraction.note, rt_extraction_status.progress AS progress_level, rt_extraction_status.name AS status_name, rt_extraction_status.name AS status FROM ((((s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON ((extraction.status_id = rt_extraction_status.status_id))) LEFT JOIN s_extraction.rt_extraction_status_group ON ((rt_extraction_status.status_id = rt_extraction_status_group.status_id))) LEFT JOIN s_vitis.user_group ON ((rt_extraction_status_group.group_id = user_group.group_id))) LEFT JOIN s_vitis."user" ON ((user_group.user_id = "user".user_id))) WHERE ((("user".login)::name = "current_user"()) AND (((extraction.requestor)::name = "current_user"()) OR (rt_extraction_status_group.group_id = 12)));
 					ALTER TABLE s_extraction.v_extraction OWNER TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.v_extraction TO u_vitis;
 					GRANT ALL ON TABLE s_extraction.v_extraction TO extraction_admin;
@@ -301,17 +136,17 @@
 					GRANT SELECT ON TABLE s_extraction.rt_feature_model TO extraction_user;
 					--Partie WABSQL générée par WAB le 04/05/2018 à 14:31:04
 					-- Ces tables sont normalement prévues dans votre fichier VisualParadigm et sont necessaires pour le fonctionnement de vos objets WAB
-					--CREATE TABLE s_extraction.rt_extraction_status (status_id integer NOT NULL DEFAULT nextval('s_vitis.seq_common'::regclass), name character varying(50)  NOT NULL, progress integer NOT NULL, CONSTRAINT rt_extraction_status_pkey PRIMARY KEY (status_id));
-					--CREATE TABLE s_extraction.rt_extraction_status_group (status_id integer NOT NULL, group_id integer NOT NULL, link_id integer NOT NULL DEFAULT nextval('s_vitis.seq_common'::regclass), CONSTRAINT rt_extraction_status_group_pkey PRIMARY KEY (link_id), CONSTRAINT fk_extraction_status_group FOREIGN KEY (status_id) REFERENCES s_extraction.rt_extraction_status (status_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
-					CREATE TABLE s_extraction.extraction_history (history_id integer NOT NULL DEFAULT nextval('s_extraction.seq_common'::regclass), date timestamp with time zone NOT NULL, login character varying(50) NOT NULL, comment text NOT NULL, bo_id integer NOT NULL, CONSTRAINT extraction_history_pkey PRIMARY KEY (history_id), CONSTRAINT fk_extraction_history FOREIGN KEY (bo_id) REFERENCES s_extraction.extraction (bo_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
+					-- CREATE TABLE s_extraction.rt_extraction_status (status_id integer NOT NULL DEFAULT nextval('s_vitis.seq_common'::regclass), name character varying(50)  NOT NULL, progress integer NOT NULL, CONSTRAINT rt_extraction_status_pkey PRIMARY KEY (status_id));
+					-- CREATE TABLE s_extraction.rt_extraction_status_group (status_id integer NOT NULL, group_id integer NOT NULL, link_id integer NOT NULL DEFAULT nextval('s_vitis.seq_common'::regclass), CONSTRAINT rt_extraction_status_group_pkey PRIMARY KEY (link_id), CONSTRAINT fk_extraction_status_group FOREIGN KEY (status_id) REFERENCES s_extraction.rt_extraction_status (status_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
+					-- CREATE TABLE s_extraction.extraction_history (history_id integer NOT NULL DEFAULT nextval('s_extraction.seq_common'::regclass), date timestamp with time zone NOT NULL, login character varying(50) NOT NULL, comment text NOT NULL, bo_id integer NOT NULL, CONSTRAINT extraction_history_pkey PRIMARY KEY (history_id), CONSTRAINT fk_extraction_history FOREIGN KEY (bo_id) REFERENCES s_extraction.extraction (extraction_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
 					-- Vue basique pour vos objets WAB tenant compte de la restriction groupe état
-					--CREATE OR REPLACE VIEW s_extraction.v_extraction AS SELECT extraction.* FROM s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON rt_extraction_status.status_id = extraction.status_id JOIN s_extraction.rt_extraction_status_group ON rt_extraction_status.status_id = rt_extraction_status_group.status_id WHERE (rt_extraction_status_group.group_id IN ( SELECT user_group.group_id FROM s_vitis.user_group LEFT JOIN s_vitis."user" ON user_group.user_id = "user".user_id WHERE "user".login::name = "current_user"()));
+					CREATE OR REPLACE VIEW s_extraction.v_extraction AS SELECT extraction.* FROM s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON rt_extraction_status.status_id = extraction.status_id JOIN s_extraction.rt_extraction_status_group ON rt_extraction_status.status_id = rt_extraction_status_group.status_id WHERE (rt_extraction_status_group.group_id IN ( SELECT user_group.group_id FROM s_vitis.user_group LEFT JOIN s_vitis."user" ON user_group.user_id = "user".user_id WHERE "user".login::name = "current_user"()));
 					-- u_vitis est propriétaire de toutes vos tables
 					ALTER TABLE s_extraction.version OWNER TO u_vitis;
 					ALTER TABLE s_extraction.rt_feature_model OWNER TO u_vitis;
 					ALTER TABLE s_extraction.extraction OWNER TO u_vitis;
-					--ALTER TABLE s_extraction.ct OWNER TO u_vitis;
-					--ALTER TABLE s_extraction.commune OWNER TO u_vitis;
+					ALTER TABLE s_extraction.ct OWNER TO u_vitis;
+					ALTER TABLE s_extraction.commune OWNER TO u_vitis;
 					ALTER TABLE s_extraction.rt_coordsys OWNER TO u_vitis;
 					ALTER TABLE s_extraction.v_extraction OWNER TO u_vitis;
 					ALTER TABLE s_extraction.rt_format OWNER TO u_vitis;
@@ -332,35 +167,23 @@
 					GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE s_extraction.v_extraction TO extraction_user;
 					GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE s_extraction.rt_format TO extraction_admin;
 					GRANT SELECT, INSERT, UPDATE, DELETE ON TABLE s_extraction.rt_layer TO extraction_admin;
-					-- Droits sur les tables des objets WAB
-					GRANT SELECT ON TABLE s_extraction.rt_extraction_status TO extraction_user;
-					GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO extraction_user;
-					GRANT SELECT, INSERT ON TABLE s_extraction.extraction_history TO extraction_user;
-					INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('AE Généré','action');
-					INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('Extraction Aix','action');
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','BoAction',0,'bo_id_attribute=''bo_id''|method=''trGenerer''|class=''Extractions''|module=''extraction''');
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur AE généré'));
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email controleur données extraites'));
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',2,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur données extraites'));
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','BoAction',0,'bo_id_attribute=''bo_id''|method=''trTerminerExtraction''|class=''Extractions''|module=''extraction''');
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur AE généré', NULL, NULL, NULL, NULL, NULL, '$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new orderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || 'error_log( print_r($this->aObjects[''oOrder''], true));' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Acte d\''Engagement pour l\''utilisation des données SIG'';' || chr(13) || '$this->body =  $image.''<p>Bonjour</p>' || chr(13) || '<p></p>' || chr(13) || '<p>Suite à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' pour l\''extraction des données, <u>merci de bien vouloir déposer l\''acte d\''engagement</u> ci-joint complété et signé, à l\''adresse suivante:<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '    if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> (5*1024*1024)){' || chr(13) || '        $this->body .= ''<p>Le résultat est disponible par téléchargement :<br/><a href="'' . $this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || 'error_log(print_r($this->aObjects["oOrder"]->aFields, true));', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur AE à resoumettre', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '//$this->to = ''sig@agglo-paysdaix.fr'';' || chr(13) || '$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX- SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Acte d\''engagement non valide'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande n\''a pas encore été validée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= ''  - Le cadre d\''identification du dépositaire est incomplet<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject'']->aValues, true));' || chr(13) || '//$this->body .= ''<p>''.$this->aObjects[''oBusinessObject'']->aValues[''comment''].''</p>'';' || chr(13) || '$this->body .=''<p><u>Merci de bien vouloir déposer à nouveau l\''acte d\''engagement</u> à l\''adresse suivante :<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email controleur données extraites', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$aBo[''bo_id''].'' - Extraction des données'';' || chr(13) || '$this->body = ''<p>Les données concernant la demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' ont été envoyées au demandeur.</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || '', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('public', NULL, NULL, NULL, NULL, NULL, '$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'if ($this->aObjects["oOrder"]->aFields[''order_status_id''] == 3) {' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->cc = '''' . $this->aObjects["oOrder"]->aFields[''email_notifications''] . '''';' || chr(13) || '	$this->cci = '''';' || chr(13) || '	$this->subject = ''[Pays d\''Aix - SIGAM] - Données extraites'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '	$this->body .=''<p></p><p>Les données correspondant à votre demande  en date du ''.date(''d/m/Y'',strtotime($this->aObjects["oOrder"]->aFields[''order_date''])).'' sont disponibles '';' || chr(13) || '	 if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '			$this->body .= ''sur le lien de téléchargement suivant :<br/><a href="''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '		} else {' || chr(13) || '			 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '			$this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '		}' || chr(13) || '	$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || '	Conseil de Territoire du Pays d\''Aix<br/>' || chr(13) || '	Tel : 04 42 93 83 50<br/>' || chr(13) || '	Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || '	'';' || chr(13) || '}else{' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->subject = ''[GTF]-'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . '' - Echec du traitement'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '    $this->body .= ''<p>La demande n°'' . $this->aObjects["oOrder"]->aFields[''order_id''] . '' pour le traitement <strong>'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . ''</strong> n\''a pu être exécutée correctement suite à une erreur.<br/> Veuillez contactez votre administrateur.<br/>'';' || chr(13) || '    $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''log_file''];' || chr(13) || '}', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email contrôleur AE soumis', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->to = ''sofian.pujo@veremes.com'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Dépôt de l\''Acte d\''Engagement à valider'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''acte d\''engagement correspondant à la demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' a été déposé sur le serveur par le demandeur.</p>' || chr(13) || '	<p></p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || 'error_log($this->body);' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur Extraction refusée', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_vitis.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || '/*if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}*/' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject''], true));' || chr(13) || '//$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Rejet de votre demande d\''extraction de données'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande a été rejetée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''accepted_by_cpa''] == "false"){' || chr(13) || '	$this->body .= '' - La CPA ne valide pas l\''usage décrit pour les données du cadastre<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= '' - Le cadre d\''identification du dépositaire est incomplet</p>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || '$this->body .= $this->aObjects[''oBusinessObject'']->aValues[''comment''].''<br/>'';' || chr(13) || '$this->body .=''<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
-					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur données extraites', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$sUserLogin = $aBo[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oMessage"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Données SIG extraites'';' || chr(13) || '$this->body = ''<p>Bonjour</p>' || chr(13) || '<p></p><p>Les données correspondant à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' sont disponibles '';' || chr(13) || ' if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '        $this->body .= ''sur le lien de téléchargement suivant :<br/><a href="https://sigdata.agglo-paysdaix.fr/public/gtf/''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '	 	 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || '$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Terriroire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || ''';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '   ' || chr(13) || '', '1', 'gtf', NULL);
-					
 				]]>
 			</code>
 		</query>
 		<query>
 			<type>update</type>
-			<version>2018-00-00</version>
+			<version>2018-01-00</version>
 			<code>
 				<![CDATA[
-					--Partie pour le module extraction version 2018-00-00 généré par WAB le 22/05/2018 à 09:09:32
+					ALTER TABLE s_extraction.extraction ADD COLUMN status_id integer;
+					--ALTER TABLE s_extraction.extraction ADD COLUMN email varchar(100);
+					--Partie pour le module extraction version 2018-00-00 généré par WAB le 15/11/2018 à 14:05:26
+					--Insertions des privilèges postgres
+					SELECT s_vitis.create_role_if_not_exists('extraction_admin', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
+					SELECT s_vitis.create_role_if_not_exists('extraction_user', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
+					--SQL Métier de la version 2018-00-00
 					ALTER TABLE s_extraction.rt_layer ADD COLUMN ct_id integer;
+					ALTER TABLE s_extraction.rt_extraction_status_group RENAME COLUMN "extraction_status_group_id" TO "link_id";
 										UPDATE s_extraction.rt_layer set ct_id = 2;	
 										ALTER TABLE s_extraction.rt_layer DROP CONSTRAINT pk_projet_type;
 										ALTER TABLE s_extraction.rt_layer ADD COLUMN layer_ct_id serial;
@@ -399,11 +222,27 @@
 										GRANT SELECT ON TABLE s_extraction.commune TO extraction_admin;
 										GRANT SELECT ON TABLE s_extraction.commune TO extraction_user;
 										GRANT ALL ON TABLE s_extraction.commune TO u_vitis;
+										GRANT USAGE ON SCHEMA s_extraction TO u_scheduler;
+										GRANT SELECT ON TABLE s_extraction.commune TO u_scheduler;
+										GRANT SELECT ON TABLE s_extraction.ct TO u_scheduler;
+										GRANT SELECT, UPDATE ON TABLE s_extraction.extraction TO u_scheduler;
+										GRANT SELECT ON TABLE s_extraction.rt_extraction_status TO u_scheduler;
+										GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO u_scheduler;
+										ALTER TABLE s_extraction.rt_layer ADD COLUMN statistique boolean;
+										ALTER TABLE s_extraction.extraction ADD COLUMN statistique text;
+										CREATE OR REPLACE VIEW s_extraction.v_extraction AS  SELECT DISTINCT extraction.bo_id,     extraction.status_id,     extraction.history,     extraction.creation_date,     extraction.requestor,     extraction.ae,     extraction.extent,     extraction.company,     extraction.layers,     extraction.vector_format_id,     extraction.vector_format_id AS format_id,     extraction.coordsys_id,     extraction.raster_format_id,     extraction.extent_method,     extraction.signed,     extraction.accepted_by_cpa,     extraction.identification_complete,     extraction.definition_complete,     extraction.priority_id,     extraction.id_com,     extraction.id_conseil,     extraction.email,     extraction.note,     extraction.preco_tech,     extraction.chart_graph,     extraction.metadonnees,     rt_extraction_status.progress AS progress_level,     rt_extraction_status.name AS status_name,     rt_extraction_status.name AS status,     extraction.statistique    FROM s_extraction.extraction      LEFT JOIN s_extraction.rt_extraction_status ON extraction.status_id = rt_extraction_status.status_id      LEFT JOIN s_extraction.rt_extraction_status_group ON rt_extraction_status.status_id = rt_extraction_status_group.status_id      LEFT JOIN s_vitis.user_group ON rt_extraction_status_group.group_id = user_group.group_id      LEFT JOIN s_vitis."user" ON user_group.user_id = "user".user_id   WHERE "user".login::name = "current_user"() AND (extraction.requestor::name = "current_user"() OR rt_extraction_status_group.group_id = 12); 
+										ALTER TABLE s_extraction.v_extraction     OWNER TO u_vitis;  
+										GRANT ALL ON TABLE s_extraction.v_extraction TO extraction_user; 
+										GRANT ALL ON TABLE s_extraction.v_extraction TO u_vitis; 
+										GRANT ALL ON TABLE s_extraction.v_extraction TO extraction_admin; 
+										CREATE TABLE s_extraction.rt_qualigeo_schema ( schema_id integer CONSTRAINT pk_qualigeo_schema PRIMARY KEY, SCHEMA_NAME CHARACTER varying(100), schema_id_qualigeo integer NOT NULL, CONSTRAINT fk_schema_id_qualigep FOREIGN KEY (schema_id_qualigeo) REFERENCES q_constraint.schema (id_schema) MATCH SIMPLE ON UPDATE RESTRICT ON DELETE SET NULL);
+										CREATE OR REPLACE RULE update_v_extraction AS ON UPDATE TO s_extraction.v_extraction DO INSTEAD UPDATE s_extraction.extraction SET status_id = new.status_id, history = new.history, creation_date = new.creation_date, requestor = new.requestor, ae = new.ae, EXTENT = new.extent, company = new.company, layers = new.layers, vector_format_id = new.vector_format_id, coordsys_id = new.coordsys_id, raster_format_id = new.raster_format_id, extent_method = new.extent_method, signed = new.signed, accepted_by_cpa = new.accepted_by_cpa, identification_complete = new.identification_complete, definition_complete = new.definition_complete, priority_id = new.priority_id, id_com = new.id_com, id_conseil = new.id_conseil, email = new.email, note = new.note, preco_tech = new.preco_tech, chart_graph = new.chart_graph, metadonnees = new.metadonnees, status = new.status, statistique = new.statistique;
+										CREATE OR REPLACE VIEW s_extraction.v_extraction AS SELECT DISTINCT extraction.bo_id, extraction.status_id, extraction.history, extraction.creation_date, extraction.requestor, extraction.ae, extraction.extent, extraction.company, extraction.layers, extraction.vector_format_id, extraction.vector_format_id AS format_id, extraction.coordsys_id, extraction.raster_format_id, extraction.extent_method, extraction.signed, extraction.accepted_by_cpa, extraction.identification_complete, extraction.definition_complete, extraction.priority_id, extraction.id_com, extraction.id_conseil, extraction.email, extraction.note, extraction.preco_tech, extraction.chart_graph, extraction.metadonnees, rt_extraction_status.progress AS progress_level, rt_extraction_status.name AS status_name, rt_extraction_status.name AS status, extraction.statistique FROM s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON extraction.status_id = rt_extraction_status.status_id LEFT JOIN s_extraction.rt_extraction_status_group ON rt_extraction_status.status_id = rt_extraction_status_group.status_id LEFT JOIN s_vitis.user_group ON rt_extraction_status_group.group_id = user_group.group_id LEFT JOIN s_vitis."user" ON user_group.user_id = "user".user_id WHERE (((extraction.requestor = "current_user"()) OR (rt_extraction_status_group.group_id = 12) AND user_group.group_id = 12));
 					--Partie WABSQL générée par WAB le 04/05/2018 à 10:02:22
 					-- Ces tables sont normalement prévues dans votre fichier VisualParadigm et sont necessaires pour le fonctionnement de vos objets WAB
 					-- CREATE TABLE s_extraction.rt_extraction_status (status_id integer NOT NULL DEFAULT nextval('s_dtnet.seq_common'::regclass), name character varying(50)  NOT NULL, progress integer NOT NULL, CONSTRAINT rt_extraction_status_pkey PRIMARY KEY (status_id));
 					-- CREATE TABLE s_extraction.rt_extraction_status_group (status_id integer NOT NULL, group_id integer NOT NULL, link_id integer NOT NULL DEFAULT nextval('s_dtnet.seq_common'::regclass), CONSTRAINT rt_extraction_status_group_pkey PRIMARY KEY (link_id), CONSTRAINT fk_extraction_status_group FOREIGN KEY (status_id) REFERENCES s_extraction.rt_extraction_status (status_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
-					-- CREATE TABLE s_extraction.extraction_history (history_id integer NOT NULL DEFAULT nextval('s_extraction.seq_common'::regclass), date timestamp with time zone NOT NULL, login character varying(50) NOT NULL, comment text NOT NULL, bo_id integer NOT NULL, CONSTRAINT extraction_history_pkey PRIMARY KEY (history_id), CONSTRAINT fk_extraction_history FOREIGN KEY (bo_id) REFERENCES s_extraction.extraction (bo_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
+					CREATE TABLE s_extraction.extraction_history (history_id integer NOT NULL DEFAULT nextval('s_extraction.seq_common'::regclass), date timestamp with time zone NOT NULL, login character varying(50) NOT NULL, comment text NOT NULL, bo_id integer NOT NULL, CONSTRAINT extraction_history_pkey PRIMARY KEY (history_id), CONSTRAINT fk_extraction_history FOREIGN KEY (bo_id) REFERENCES s_extraction.extraction (bo_id) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION);
 					-- Vue basique pour vos objets WAB tenant compte de la restriction groupe état
 					--CREATE VIEW s_extraction.v_extraction AS SELECT extraction.* FROM s_extraction.extraction LEFT JOIN s_extraction.rt_extraction_status ON rt_extraction_status.status_id = extraction.status_id JOIN s_extraction.rt_extraction_status_group ON rt_extraction_status.status_id = rt_extraction_status_group.status_id WHERE (rt_extraction_status_group.group_id IN ( SELECT user_group.group_id FROM s_vitis.user_group LEFT JOIN s_vitis."user" ON user_group.user_id = "user".user_id WHERE "user".login::name = "current_user"()));
 					-- u_vitis est propriétaire de toutes vos tables
@@ -415,7 +254,7 @@
 					ALTER TABLE s_extraction.rt_layer OWNER TO u_vitis;
 					ALTER TABLE s_extraction.rt_feature_model OWNER TO u_vitis;
 					ALTER TABLE s_extraction.extraction OWNER TO u_vitis;
-					ALTER TABLE s_extraction.version OWNER TO u_vitis;
+					-- ALTER TABLE s_extraction.version OWNER TO u_vitis;
 					-- u_vitis propriétaire sur les tables des objets WAB
 					--ALTER TABLE s_extraction.rt_extraction_status OWNER to u_vitis;
 					--ALTER TABLE s_extraction.rt_extraction_status_group OWNER to u_vitis;
@@ -433,22 +272,48 @@
 					GRANT SELECT ON TABLE s_extraction.rt_extraction_status TO extraction_user;
 					GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO extraction_user;
 					GRANT SELECT, INSERT ON TABLE s_extraction.extraction_history TO extraction_user;
+					--INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('Extraction Aix','action');
+					--INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('AE Généré','action');
+					--INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email controleur données extraites'));
+					--INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',2,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur données extraites'));
+					--INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','BoAction',0,''bo_id_attribute=''bo_id''|method=''trTerminerExtraction''|class=''Extractions''|module=''extraction''');
+					--INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','BoAction',0,'bo_id_attribute=''bo_id''|method=''trGenerer''|class=''Extractions''|module=''extraction''');
+					--INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur AE généré'));
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur données extraites', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$sUserLogin = $aBo[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oMessage"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Données SIG extraites'';' || chr(13) || '$this->body = ''<p>Bonjour</p>' || chr(13) || '<p></p><p>Les données correspondant à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' sont disponibles '';' || chr(13) || ' if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '        $this->body .= ''sur le lien de téléchargement suivant :<br/><a href="https://sigdata.agglo-paysdaix.fr/public/gtf/''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '	 	 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || '$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Terriroire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || ''';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '   ' || chr(13) || '', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur Extraction refusée', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_vitis.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || '/*if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}*/' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject''], true));' || chr(13) || '//$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Rejet de votre demande d\''extraction de données'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande a été rejetée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''accepted_by_cpa''] == "false"){' || chr(13) || '	$this->body .= '' - La CPA ne valide pas l\''usage décrit pour les données du cadastre<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= '' - Le cadre d\''identification du dépositaire est incomplet</p>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || '$this->body .= $this->aObjects[''oBusinessObject'']->aValues[''comment''].''<br/>'';' || chr(13) || '$this->body .=''<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email contrôleur AE soumis', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->to = ''sofian.pujo@veremes.com'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Dépôt de l\''Acte d\''Engagement à valider'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''acte d\''engagement correspondant à la demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' a été déposé sur le serveur par le demandeur.</p>' || chr(13) || '	<p></p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || 'error_log($this->body);' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('public', NULL, NULL, NULL, NULL, NULL, '$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'if ($this->aObjects["oOrder"]->aFields[''order_status_id''] == 3) {' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->cc = '''' . $this->aObjects["oOrder"]->aFields[''email_notifications''] . '''';' || chr(13) || '	$this->cci = '''';' || chr(13) || '	$this->subject = ''[Pays d\''Aix - SIGAM] - Données extraites'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '	$this->body .=''<p></p><p>Les données correspondant à votre demande  en date du ''.date(''d/m/Y'',strtotime($this->aObjects["oOrder"]->aFields[''order_date''])).'' sont disponibles '';' || chr(13) || '	 if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '			$this->body .= ''sur le lien de téléchargement suivant :<br/><a href="''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '		} else {' || chr(13) || '			 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '			$this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '		}' || chr(13) || '	$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || '	Conseil de Territoire du Pays d\''Aix<br/>' || chr(13) || '	Tel : 04 42 93 83 50<br/>' || chr(13) || '	Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || '	'';' || chr(13) || '}else{' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->subject = ''[GTF]-'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . '' - Echec du traitement'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '    $this->body .= ''<p>La demande n°'' . $this->aObjects["oOrder"]->aFields[''order_id''] . '' pour le traitement <strong>'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . ''</strong> n\''a pu être exécutée correctement suite à une erreur.<br/> Veuillez contactez votre administrateur.<br/>'';' || chr(13) || '    $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''log_file''];' || chr(13) || '}', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email controleur données extraites', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$aBo[''bo_id''].'' - Extraction des données'';' || chr(13) || '$this->body = ''<p>Les données concernant la demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' ont été envoyées au demandeur.</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || '', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur AE à resoumettre', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '//$this->to = ''sig@agglo-paysdaix.fr'';' || chr(13) || '$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX- SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Acte d\''engagement non valide'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande n\''a pas encore été validée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= ''  - Le cadre d\''identification du dépositaire est incomplet<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject'']->aValues, true));' || chr(13) || '//$this->body .= ''<p>''.$this->aObjects[''oBusinessObject'']->aValues[''comment''].''</p>'';' || chr(13) || '$this->body .=''<p><u>Merci de bien vouloir déposer à nouveau l\''acte d\''engagement</u> à l\''adresse suivante :<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', '1', 'gtf', NULL);
+					--INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email demandeur AE généré', NULL, NULL, NULL, NULL, NULL, '$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new orderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || 'error_log( print_r($this->aObjects[''oOrder''], true));' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Acte d\''Engagement pour l\''utilisation des données SIG'';' || chr(13) || '$this->body =  $image.''<p>Bonjour</p>' || chr(13) || '<p></p>' || chr(13) || '<p>Suite à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' pour l\''extraction des données, <u>merci de bien vouloir déposer l\''acte d\''engagement</u> ci-joint complété et signé, à l\''adresse suivante:<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '    if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> (5*1024*1024)){' || chr(13) || '        $this->body .= ''<p>Le résultat est disponible par téléchargement :<br/><a href="'' . $this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || 'error_log(print_r($this->aObjects["oOrder"]->aFields, true));', '1', 'gtf', NULL);
+					
+					-- Droits sur les tables des objets WAB
+					GRANT SELECT ON TABLE s_extraction.rt_extraction_status TO extraction_user;
+					GRANT SELECT ON TABLE s_extraction.rt_extraction_status_group TO extraction_user;
+					GRANT SELECT, INSERT ON TABLE s_extraction.extraction_history TO extraction_user;
+					INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('Contrôle terminé','action');
+					INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('Fichier_invalide','action');
+					INSERT INTO s_gtf.messageclass (messageclass, messageclass_type) VALUES ('Fichier accepté','action');
+					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Fichier_invalide','BoAction',0,'bo_id_attribute=''bo_id''|method=''trInvalider''|class=''Extractions''|module=''extraction''');
+					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Fichier accepté','BoAction',1,'bo_id_attribute=''bo_id''|method=''trAccepter''|class=''Extractions''|module=''extraction''');
+					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email contrôle validé', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oBd = $this->oBd;' || chr(13) || '$oPDOresult = $oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oBusinessObject"]->aValues["order_id"];' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aProperties, "v_order");' || chr(13) || '$sUserLogin = $aBo[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_vitis.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oMessage"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Contrôle échoué'';' || chr(13) || '$this->body = ''<p>Bonjour</p>' || chr(13) || '<p></p><p>Le contrôle n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' à échoué.'';' || chr(13) || ' if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '        $this->body .= ''Vous pourrez trouver le rapport sur le lien de téléchargement suivant :<br/><a href="https://sigdata.agglo-paysdaix.fr/public/gtf/''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '	 	 $this->body .= ''<br/> Vous pourrez trouver le rapport en pièce jointe.</p>'';' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || '$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Terriroire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || ''';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '   ' || chr(13) || '', '1', 'gtf', NULL);
+					INSERT INTO s_gtf.email_template (name, subject, body, "to", cc, cci, code, use_advanced, rt_emailcontext_id, attachment) VALUES ('Email contrôle échoué', NULL, NULL, NULL, NULL, NULL, 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$sUserLogin = $aBo[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oMessage"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Contrôle'';' || chr(13) || '$this->body = ''<p>Bonjour</p>' || chr(13) || '<p></p><p>Le contrôle n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' à échouché.'';' || chr(13) || ' if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '        $this->body .= ''sur le lien de téléchargement suivant :<br/><a href="https://sigdata.agglo-paysdaix.fr/public/gtf/''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '	 	 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || '$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Terriroire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || ''';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '   ' || chr(13) || '', '1', 'gtf', NULL);
 					
 
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new orderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || 'error_log( print_r($this->aObjects[''oOrder''], true));' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Acte d\''Engagement pour l\''utilisation des données SIG'';' || chr(13) || '$this->body =  $image.''<p>Bonjour</p>' || chr(13) || '<p></p>' || chr(13) || '<p>Suite à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' pour l\''extraction des données, <u>merci de bien vouloir déposer l\''acte d\''engagement</u> ci-joint complété et signé, à l\''adresse suivante:<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '    if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> (5*1024*1024)){' || chr(13) || '        $this->body .= ''<p>Le résultat est disponible par téléchargement :<br/><a href="'' . $this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || 'error_log(print_r($this->aObjects["oOrder"]->aFields, true));', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur AE généré';
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '//$this->to = ''sig@agglo-paysdaix.fr'';' || chr(13) || '$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX- SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Acte d\''engagement non valide'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande n\''a pas encore été validée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= ''  - Le cadre d\''identification du dépositaire est incomplet<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject'']->aValues, true));' || chr(13) || '//$this->body .= ''<p>''.$this->aObjects[''oBusinessObject'']->aValues[''comment''].''</p>'';' || chr(13) || '$this->body .=''<p><u>Merci de bien vouloir déposer à nouveau l\''acte d\''engagement</u> à l\''adresse suivante :<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur AE à resoumettre';
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$aBo[''bo_id''].'' - Extraction des données'';' || chr(13) || '$this->body = ''<p>Les données concernant la demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' ont été envoyées au demandeur.</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email controleur données extraites';
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'if ($this->aObjects["oOrder"]->aFields[''order_status_id''] == 3) {' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->cc = '''' . $this->aObjects["oOrder"]->aFields[''email_notifications''] . '''';' || chr(13) || '	$this->cci = '''';' || chr(13) || '	$this->subject = ''[Pays d\''Aix - SIGAM] - Données extraites'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '	$this->body .=''<p></p><p>Les données correspondant à votre demande  en date du ''.date(''d/m/Y'',strtotime($this->aObjects["oOrder"]->aFields[''order_date''])).'' sont disponibles '';' || chr(13) || '	 if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '			$this->body .= ''sur le lien de téléchargement suivant :<br/><a href="''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '		} else {' || chr(13) || '			 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '			$this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '		}' || chr(13) || '	$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || '	Conseil de Territoire du Pays d\''Aix<br/>' || chr(13) || '	Tel : 04 42 93 83 50<br/>' || chr(13) || '	Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || '	'';' || chr(13) || '}else{' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->subject = ''[GTF]-'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . '' - Echec du traitement'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '    $this->body .= ''<p>La demande n°'' . $this->aObjects["oOrder"]->aFields[''order_id''] . '' pour le traitement <strong>'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . ''</strong> n\''a pu être exécutée correctement suite à une erreur.<br/> Veuillez contactez votre administrateur.<br/>'';' || chr(13) || '    $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''log_file''];' || chr(13) || '}', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='public';
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->to = ''sofian.pujo@veremes.com'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Dépôt de l\''Acte d\''Engagement à valider'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''acte d\''engagement correspondant à la demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' a été déposé sur le serveur par le demandeur.</p>' || chr(13) || '	<p></p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || 'error_log($this->body);' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email contrôleur AE soumis';
-					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_vitis.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || '/*if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}*/' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject''], true));' || chr(13) || '//$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Rejet de votre demande d\''extraction de données'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande a été rejetée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''accepted_by_cpa''] == "false"){' || chr(13) || '	$this->body .= '' - La CPA ne valide pas l\''usage décrit pour les données du cadastre<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= '' - Le cadre d\''identification du dépositaire est incomplet</p>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || '$this->body .= $this->aObjects[''oBusinessObject'']->aValues[''comment''].''<br/>'';' || chr(13) || '$this->body .=''<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur Extraction refusée';
 					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$sUserLogin = $aBo[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oMessage"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Données SIG extraites'';' || chr(13) || '$this->body = ''<p>Bonjour</p>' || chr(13) || '<p></p><p>Les données correspondant à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' sont disponibles '';' || chr(13) || ' if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '        $this->body .= ''sur le lien de téléchargement suivant :<br/><a href="https://sigdata.agglo-paysdaix.fr/public/gtf/''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '	 	 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || '$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Terriroire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || ''';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '   ' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur données extraites';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_vitis.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || '/*if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}*/' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject''], true));' || chr(13) || '//$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Rejet de votre demande d\''extraction de données'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande a été rejetée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''accepted_by_cpa''] == "false"){' || chr(13) || '	$this->body .= '' - La CPA ne valide pas l\''usage décrit pour les données du cadastre<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= '' - Le cadre d\''identification du dépositaire est incomplet</p>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || '$this->body .= $this->aObjects[''oBusinessObject'']->aValues[''comment''].''<br/>'';' || chr(13) || '$this->body .=''<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur Extraction refusée';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '' || chr(13) || '//$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->to = ''sofian.pujo@veremes.com'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Dépôt de l\''Acte d\''Engagement à valider'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''acte d\''engagement correspondant à la demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' a été déposé sur le serveur par le demandeur.</p>' || chr(13) || '	<p></p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p> </p>' || chr(13) || '	<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || 'error_log($this->body);' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email contrôleur AE soumis';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'if ($this->aObjects["oOrder"]->aFields[''order_status_id''] == 3) {' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->cc = '''' . $this->aObjects["oOrder"]->aFields[''email_notifications''] . '''';' || chr(13) || '	$this->cci = '''';' || chr(13) || '	$this->subject = ''[Pays d\''Aix - SIGAM] - Données extraites'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '	$this->body .=''<p></p><p>Les données correspondant à votre demande  en date du ''.date(''d/m/Y'',strtotime($this->aObjects["oOrder"]->aFields[''order_date''])).'' sont disponibles '';' || chr(13) || '	 if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> 5242880){' || chr(13) || '			$this->body .= ''sur le lien de téléchargement suivant :<br/><a href="''.$this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '		} else {' || chr(13) || '			 $this->body .= ''en pièce jointe.</p>'';' || chr(13) || '			$this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '		}' || chr(13) || '	$this->body .=''<p>Vous en souhaitant bonne réception,</p>' || chr(13) || '	<p>Cordialement,</p>' || chr(13) || '	<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || '	Conseil de Territoire du Pays d\''Aix<br/>' || chr(13) || '	Tel : 04 42 93 83 50<br/>' || chr(13) || '	Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>' || chr(13) || '' || chr(13) || '	'';' || chr(13) || '}else{' || chr(13) || '	$this->to = '''' . $this->aObjects["oOrder"]->getUser()->aFields[''email''] . '''';' || chr(13) || '	$this->subject = ''[GTF]-'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . '' - Echec du traitement'';' || chr(13) || '	$this->body = $image.''<p>Bonjour,</p>'';' || chr(13) || '    $this->body .= ''<p>La demande n°'' . $this->aObjects["oOrder"]->aFields[''order_id''] . '' pour le traitement <strong>'' . $this->aObjects["oOrder"]->getWorkspace()->aFields[''name''] . ''</strong> n\''a pu être exécutée correctement suite à une erreur.<br/> Veuillez contactez votre administrateur.<br/>'';' || chr(13) || '    $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''log_file''];' || chr(13) || '}', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='public';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new OrderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = ''sig.paysdaix@ampmetropole.fr'';' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[GTF] - Demande N° ''.$aBo[''bo_id''].'' - Extraction des données'';' || chr(13) || '$this->body = ''<p>Les données concernant la demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' ont été envoyées au demandeur.</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>L\''application d\''extraction de données de GTF</p>'';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email controleur données extraites';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || 'require_once("vmlib/logUtil.inc");' || chr(13) || '$iBoId = $this->aObjects["oBusinessObject"]->aValues[''bo_id''];' || chr(13) || '$sUserLogin = $this->aObjects["oBusinessObject"]->aValues[''requestor''];' || chr(13) || '$sSql = ''SELECT user_id FROM s_framework.user WHERE login=\''''.$this->aObjects[''oBusinessObject'']->aValues[''requestor''].''\'''';' || chr(13) || '//writeToErrorLog($sSql);' || chr(13) || '$oResult = $oBd->execute($sSql);' || chr(13) || 'if(!$oBd->erreurRencontree) {' || chr(13) || '	if ($oBd->nombreLigne ($oResult) > 0) {' || chr(13) || '		$this->aObjects[''oUser''] = new User($oBd, $oBd->objetSuivant($oResult)->user_id, $this->aObjects["oBusinessObject"]->aProperties);' || chr(13) || '	}' || chr(13) || '}' || chr(13) || '//$this->to = ''sig@agglo-paysdaix.fr'';' || chr(13) || '$this->to = $this->aObjects[''oBusinessObject'']->aValues[''email''];' || chr(13) || '$this->cc = '''';' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX- SIGAM] Demande N° ''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' - Acte d\''engagement non valide'';' || chr(13) || '$this->body = ''<p>Bonjour,</p>' || chr(13) || '	<p>Suite à votre demande n°''.$this->aObjects[''oBusinessObject'']->aValues[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($this->aObjects[''oBusinessObject'']->aValues[''creation_date''])).'' pour l\''extraction des données, votre demande n\''a pas encore été validée pour la ou les raisons suivantes :<br/>'';' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''signed''] == "false"){' || chr(13) || '	$this->body .= '' - L\''acte d\''engagement n\''est pas signé<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''identification_complete''] == "false"){' || chr(13) || '	$this->body .= ''  - Le cadre d\''identification du dépositaire est incomplet<br/>'';' || chr(13) || '}' || chr(13) || 'if($this->aObjects[''oBusinessObject'']->aValues[''definition_complete''] == "false"){' || chr(13) || '	$this->body .= '' - La définition des traitements pour l\''usage du cadastre est non renseignée<br/>'';' || chr(13) || '}' || chr(13) || 'error_log(print_r($this->aObjects[''oBusinessObject'']->aValues, true));' || chr(13) || '//$this->body .= ''<p>''.$this->aObjects[''oBusinessObject'']->aValues[''comment''].''</p>'';' || chr(13) || '$this->body .=''<p><u>Merci de bien vouloir déposer à nouveau l\''acte d\''engagement</u> à l\''adresse suivante :<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '$this->aAttachments[0] = '''';' || chr(13) || '', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur AE à resoumettre';
+					UPDATE s_gtf.email_template SET subject=NULL, body=NULL, "to"=NULL, cc=NULL, cci=NULL, code='$logo = $this->aProperties[''ws_data_dir'']."/gtf/LOGO_AMP.jpg";' || chr(13) || '$base64 = base64_encode(file_get_contents($logo));' || chr(13) || '$image = ''<img src="data:image/png;base64,''.$base64.''">'';' || chr(13) || 'require_once("gtf_lib/gtf_object/Order.class.inc");' || chr(13) || 'require_once("gtf_lib/gtf_object/User.class.inc");' || chr(13) || '$iBoId = $this->aObjects["oMessage"]->getBody(''bo_id'');' || chr(13) || '$sRequest = "SELECT * from s_extraction.extraction where bo_id = ".$iBoId;' || chr(13) || '$oPDOresult = $this->oBd->executeWithParams($sRequest, array());' || chr(13) || '$aBo = $this->oBd->ligneSuivante ($oPDOresult);' || chr(13) || '$iOrderId = $this->aObjects["oMessage"]->getBody(''order_id'');' || chr(13) || '$this->aObjects["oOrder"]= new orderLib($oBd, $iOrderId, $this->aObjects["oMessage"]->aProperties, "v_order");' || chr(13) || 'error_log( print_r($this->aObjects[''oOrder''], true));' || chr(13) || '$this->aObjects[''oUser''] = new User($oBd, $this->aObjects[''oOrder'']->aFields[''user_id''], $this->aObjects["oMessage"]->aProperties);' || chr(13) || '$this->to = $aBo[''email''];' || chr(13) || '$this->cc = $this->aObjects["oOrder"]->aFields[''email_notifications''];' || chr(13) || '$this->cci = '''';' || chr(13) || '$this->subject = ''[PAYS D\''AIX - SIGAM] Demande N° ''.$aBo[''bo_id''].'' - Acte d\''Engagement pour l\''utilisation des données SIG'';' || chr(13) || '$this->body =  $image.''<p>Bonjour</p>' || chr(13) || '<p></p>' || chr(13) || '<p>Suite à votre demande n°''.$aBo[''bo_id''].'' en date du ''.date(''d/m/Y'',strtotime($aBo[''creation_date''])).'' pour l\''extraction des données, <u>merci de bien vouloir déposer l\''acte d\''engagement</u> ci-joint complété et signé, à l\''adresse suivante:<br/>' || chr(13) || '<A HREF="https://scpa430.cpa.fr/extraction">Application Extraction</A></p>' || chr(13) || '<p>Une fois réceptionné, l\''acte d\''engagement sera soumis à la validation du Territoire du Pays d\''Aix.<br/>' || chr(13) || 'Si celui-ci est validé, vous recevrez les données par mail (taille < 5Mo) ou par lien de téléchargement (taille > 5Mo).</p>' || chr(13) || '<p>Cordialement,</p>' || chr(13) || '<p>Le service d\''Information Géographique et Applicatifs Métiers (SIGAM)<br/>' || chr(13) || 'Territoire du Pays d\''Aix<br/>' || chr(13) || 'Tel : 04 42 93 83 50<br/>' || chr(13) || 'Mail : <a href="mailto:sig.paysdaix@ampmetropole.fr">sig.paysdaix@ampmetropole.fr</a>  </p>'';' || chr(13) || '// les résultats de moins de 5 Mo sont envoyés en pièce jointe' || chr(13) || '    if (filesize($this->aObjects["oOrder"]->aFields[''result_file''])> (5*1024*1024)){' || chr(13) || '        $this->body .= ''<p>Le résultat est disponible par téléchargement :<br/><a href="'' . $this->aObjects["oOrder"]->aFields[''result_url''] . ''">Télécharger le résultat</a></p>'';' || chr(13) || '    } else {' || chr(13) || '        $this->aAttachments[0] = $this->aObjects["oOrder"]->aFields[''result_file''];' || chr(13) || '    }' || chr(13) || 'error_log(print_r($this->aObjects["oOrder"]->aFields, true));', use_advanced='1', rt_emailcontext_id='gtf', attachment=NULL WHERE "name"='Email demandeur AE généré';
 					DELETE FROM s_gtf.messageclass_action WHERE messageclass LIKE 'extraction_%';
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','BoAction',0,'bo_id_attribute=''bo_id''|method=''trGenerer''|class=''Extractions''|module=''extraction''');
-					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur AE généré'));
 					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email controleur données extraites'));
 					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','EmailAction',2,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur données extraites'));
 					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'Extraction Aix','BoAction',0,'bo_id_attribute=''bo_id''|method=''trTerminerExtraction''|class=''Extractions''|module=''extraction''');
-					--Partie s_vitis généré par WAB le 22/05/2018 à 09:09:31
+					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','BoAction',0,'bo_id_attribute=''bo_id''|method=''trGenerer''|class=''Extractions''|module=''extraction''');
+					INSERT INTO s_gtf.messageclass_action (messageclass_action_id, messageclass, actionclass, index, parameters) VALUES ((SELECT nextval('s_gtf.seq_common'::regclass)),'AE Généré','EmailAction',1,'template_id = ' || (SELECT email_template_id FROM s_gtf.email_template WHERE name = 'Email demandeur AE généré'));
+					--Partie s_vitis généré par WAB le 15/11/2018 à 14:05:26
 					DELETE FROM s_vitis.vm_section WHERE label_id ~ '^extraction_([0-9]+)$';
 					DELETE FROM s_vitis.vm_table_field WHERE label_id ~ '^extraction_([0-9]+)$';
 					DELETE FROM s_vitis.vm_table_button WHERE label_id ~ '^extraction_([0-9]+)$';
@@ -459,8 +324,20 @@
 					INSERT INTO s_vitis.group (group_id, name) SELECT (SELECT nextval('s_vitis.seq_common'::regclass)), 'controleur' WHERE NOT EXISTS (SELECT group_id FROM s_vitis.group WHERE name='controleur');
 					INSERT INTO s_vitis.privileges (rolname, description) SELECT 'extraction_admin', 'administrateur extraction' WHERE NOT EXISTS (SELECT rolname FROM s_vitis.privileges WHERE rolname='extraction_admin');
 					INSERT INTO s_vitis.privileges (rolname, description) SELECT 'extraction_user', 'utilisateur extraction' WHERE NOT EXISTS (SELECT rolname FROM s_vitis.privileges WHERE rolname='extraction_user');
-					SELECT s_vitis.create_role_if_not_exists('extraction_admin', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
-					SELECT s_vitis.create_role_if_not_exists('extraction_user', 'NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_extraction', 'extraction_62');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_63');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_64');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_65');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field bo_id', 'extraction_66');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field status', 'extraction_67');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field progress_level', 'extraction_68');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field company', 'extraction_69');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field requestor', 'extraction_70');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field layers', 'extraction_71');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_73');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Supprimer', 'extraction_74');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Boutton Ajout', 'extraction_75');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('objet extraction_extraction_depot', 'extraction_72');
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('Section General', 'extraction_1');
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field bo_id', 'extraction_4');
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field status', 'extraction_6');
@@ -523,88 +400,125 @@
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field restriction', 'extraction_59');
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('field unused_attributes', 'extraction_60');
 					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('section extractionConfig', 'extraction_61');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_1','fr','Informations générales');
+					INSERT INTO s_vitis.vm_string (string, string_id) VALUES ('section extractionConfig', 'extraction_76');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_62','en','Extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_62','fr','Extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_63','en','General');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_63','fr','Informations générales');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_64','en','Supprimer les plans');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_64','fr','Supprimer les plans');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_65','en','Ajouter une extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_65','fr','Ajouter une extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_66','en','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_66','fr','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_67','en','Status');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_67','fr','Etat');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_68','en','Progress level');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_68','fr','Avancement');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_69','en','Company');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_69','fr','Organisme');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_70','en','Demandeur');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_70','fr','Demandeur');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_71','en','Layers');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_71','fr','Couches');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_73','en',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_73','fr',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_74','en',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_74','fr',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_75','en',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_75','fr',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_72','fr',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_72','en',NULL);
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_1','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_4','fr','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_1','fr','Informations générales');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_4','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_6','en','Status');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_4','fr','ID');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_6','fr','Etat');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_0','en','Extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_6','en','Status');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_0','fr','Extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_7','en','Progress level');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_0','en','Extraction');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_7','fr','Avancement');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_2','en','Supprimer les plans');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_7','en','Progress level');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_2','fr','Supprimer les plans');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_8','en','Company');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_2','en','Supprimer les plans');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_8','fr','Organisme');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_3','en','Ajouter une extraction');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_8','en','Company');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_3','fr','Ajouter une extraction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_5','fr','Demandeur');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_3','en','Ajouter une extraction');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_5','en','Demandeur');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_9','en','Layers');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_5','fr','Demandeur');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_9','fr','Couches');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_10','fr','Systèmes de coordonnées');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_9','en','Layers');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_10','en','Coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_11','fr','Informations générales');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_10','fr','Systèmes de coordonnées');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_11','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_12','fr','Supprimer les systèmes de coordonnées');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_11','fr','Informations générales');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_12','en','Delete coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_13','fr','Ajouter un système de coordonnées');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_12','fr','Supprimer les systèmes de coordonnées');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_13','en','Add coordinate systems');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_14','fr','Formats');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_13','fr','Ajouter un système de coordonnées');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_14','en','Formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_15','fr','Informations générales');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_14','fr','Formats');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_15','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_16','fr','Supprimer les formats');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_15','fr','Informations générales');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_16','en','Delete formats');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_17','fr','Ajouter un format');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_16','fr','Supprimer les formats');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_17','en','Add format');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_18','fr','Couches');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_17','fr','Ajouter un format');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_18','en','Layers');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_19','fr','Informations générales');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_18','fr','Couches');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_19','en','General');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_20','fr','Supprimer les couches');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_19','fr','Informations générales');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_20','en','Delete layers');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_21','fr','Ajouter une couche');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_20','fr','Supprimer les couches');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_21','en','Add layer');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_22','fr','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_21','fr','Ajouter une couche');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_22','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_23','fr','Nom');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_22','fr','ID');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_23','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_24','en','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_23','fr','Nom');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_24','fr','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_25','fr','Nom');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_24','en','ID');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_25','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_26','fr','Raster');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_25','fr','Nom');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_26','en','Raster');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_27','fr','Vecteur');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_26','fr','Raster');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_27','en','Vector');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_28','fr','ID');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_27','fr','Vecteur');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_28','en','ID');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_29','fr','Nom');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_28','fr','ID');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_29','en','Name');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_30','fr','Catégorie');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_29','fr','Nom');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_30','en','Category');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_30','fr','Catégorie');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_31','fr','Restriction');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_31','en','Restriction');
-					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_32','fr','Attributs inutilisés');
 					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_32','en','Unused attributes');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_32','fr','Attributs inutilisés');
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_76','fr',NULL);
+					INSERT INTO s_vitis.vm_translation (translation_id, lang, translation) VALUES ('extraction_76','en',NULL);
 					INSERT INTO s_vitis.vm_mode (mode_id, module_id) VALUES ('extraction','extraction');
 					INSERT INTO s_vitis.vm_mode (mode_id, module_id) VALUES ('extraction_ref','extraction');
+					INSERT INTO s_vitis.vm_mode (mode_id, module_id) VALUES ('extraction_depot','extraction');
 					INSERT INTO s_vitis.vm_mode_rolname (index,mode_id, rolname) VALUES (0,'extraction','extraction_user');
 					INSERT INTO s_vitis.vm_mode_rolname (index,mode_id, rolname) VALUES (1,'extraction_ref','extraction_admin');
+					INSERT INTO s_vitis.vm_mode_rolname (index,mode_id, rolname) VALUES (2,'extraction_depot','extraction_admin');
+					INSERT INTO s_vitis.vm_mode_rolname (index,mode_id, rolname) VALUES (2,'extraction_depot','extraction_user');
+					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 0, 'extraction', 'extraction_0', 'extraction/extractions', 'editSectionForm', 'showSectionForm', 'bo_id', 'ASC', 'extraction_extraction');
 					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 1, 'extraction_ref', 'extraction_14', 'extraction/formats', 'editSectionForm', 'showSectionForm', 'format_id', 'ASC', 'extraction_format');
 					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 0, 'extraction_ref', 'extraction_10', 'extraction/coordsyss', 'editSectionForm', 'showSectionForm', 'coordsys_id', 'ASC', 'extraction_coordsys');
 					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 2, 'extraction_ref', 'extraction_18', 'extraction/layers', 'editSectionForm', 'showSectionForm', 'layer_id', 'ASC', 'extraction_layer');
-					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadList()', 0, 'extraction', 'extraction_0', 'extraction/extractions', 'editSectionForm', 'showSectionForm', 'bo_id', 'ASC', 'extraction_extraction');
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_21', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
+					INSERT INTO s_vitis.vm_tab (tab_id, event, index, mode_id, label_id, ressource_id, edit_column, show_column, sorted_by, sorted_dir, name) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)),'loadFileTreeview()', 0, 'extraction_depot', 'extraction_72', 'extraction/extraction_depots', 'editSectionForm', 'showSectionForm', NULL, 'ASC', 'extraction_extraction_depot');
 					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_2', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
 					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_3', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_12', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
-					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_13', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
 					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_16', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
 					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_17', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'));
+					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_12', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
+					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_13', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'));
+					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_21', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
 					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_20', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
+					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('deleteFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'DeleteSelection', 'extraction_74', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'));
+					INSERT INTO s_vitis.vm_table_button (button_class, table_button_id, event, label_id, ressource_id, tab_id) VALUES ('add_smallFlexigrid',(SELECT nextval('s_vitis.seq_vm'::regclass)), 'AddSectionForm', 'extraction_75', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'), (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'));
 					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'bo_id', '1', '1', 0, 50, 'left', 'extraction_4', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
 					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'status', '1', '1', 2, 150, 'left', 'extraction_6', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
 					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'progress_level', '1', '1', 4, 150, 'center', 'extraction_7', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), '<div data-app-navbar data-mode="info" data-hidevalue data-striped data-active></div>',(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'));
@@ -623,37 +537,40 @@
 					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'restriction', '1', '1', 3, 100, 'left', 'extraction_31', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), NULL,(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
 					INSERT INTO s_vitis.vm_table_field (table_field_id, name, sortable, resizeable, index, width, align, label_id, ressource_id, template, tab_id) VALUES ((SELECT nextval('s_vitis.seq_vm'::regclass)), 'unused_attributes', '1', '1', 4, 110, 'left', 'extraction_32', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), '<div data-app-extraction-ref-unused-attributes-column="{{row.entity[col.field]}}"></div>',(SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'));
 					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_15', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_format'), 'extraction');
+					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_1', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'extraction');
 					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_11', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_coordsys'), 'extraction');
+					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_73', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'), 'simpleFormTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction_depot'), 'extraction');
 					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_19', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_layer'), 'extraction');
-					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_1', 'general', 1, 'Javascript:loadSectionForm', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'workspaceListTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'extraction_extraction'), 'extraction');
+					INSERT INTO s_vitis.vm_section (label_id, name, index, event, tab_id, template, ressource_id, module) VALUES ('extraction_76', 'extractionConfig', 12, 'loadExtractionConfig()', (SELECT tab_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'vitis_configuration'), 'simpleFormTpl.html', (SELECT ressource_id FROM s_vitis.vm_tab WHERE vm_tab.name = 'vitis_configuration'), 'extraction');
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','START', 0);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Nouveau', 10);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Généré', 30);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Soumis', 40);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','AE Demandé', 20);
+					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Fichier accepté', 100);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Dépôt terminé', 100);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Fichier déposé', 90);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Autorisée', 60);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Fichier accepté', 100);
+					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Refusée', 100);
+					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Fichier déposé', 90);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Fichier invalidé', 80);
 					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Extraction terminée', 80);
-					SELECT s_vitis.wabInsertState('s_extraction', 'rt_extraction_status','Refusée', 100);
 					TRUNCATE s_extraction.rt_extraction_status_group;
 					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='START'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 1);
 					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Nouveau'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 2);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Demandé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 3);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Généré'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 4);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Généré'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 3);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Soumis'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 4);
 					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Soumis'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 5);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Soumis'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 6);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Autorisée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 7);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Autorisée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 8);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Refusée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 9);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Refusée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 10);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Extraction terminée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 11);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier déposé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 12);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier invalidé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 13);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier accepté'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 14);
-					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Dépôt terminé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 15);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='AE Demandé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 6);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier accepté'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 7);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Dépôt terminé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 8);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Autorisée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 9);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Autorisée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 10);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Refusée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 11);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Refusée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 12);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier déposé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 13);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Fichier invalidé'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 14);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Extraction terminée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='demandeur'), 15);
+					INSERT INTO s_extraction.rt_extraction_status_group (status_id, group_id, link_id) VALUES ((SELECT status_id FROM s_extraction.rt_extraction_status WHERE "name"='Extraction terminée'), (SELECT group_id FROM s_vitis."group" WHERE "name"='controleur'), 16);
 
 				]]>
 			</code>