From c88e2c1426d60b22c8dc3fdbac7de2c3c5230232 Mon Sep 17 00:00:00 2001
From: ManifoldFR <wilson.jallet@gmail.com>
Date: Thu, 1 Mar 2018 15:37:38 +0100
Subject: [PATCH] Rebuilt group Knex schema

---
 db/migrations/20180225001319_create_groups.js |  2 +-
 .../20180301104213_insert_parent_column.js    | 12 -------
 .../20180301152556_group_parent_key.js        | 12 +++++++
 db/seeds/01_create_groups.js                  | 31 ++++++++++++-------
 4 files changed, 33 insertions(+), 24 deletions(-)
 delete mode 100644 db/migrations/20180301104213_insert_parent_column.js
 create mode 100644 db/migrations/20180301152556_group_parent_key.js

diff --git a/db/migrations/20180225001319_create_groups.js b/db/migrations/20180225001319_create_groups.js
index 0bac711..b5b56b3 100644
--- a/db/migrations/20180225001319_create_groups.js
+++ b/db/migrations/20180225001319_create_groups.js
@@ -1,11 +1,11 @@
 
 exports.up = function (knex, Promise) {
     return knex.schema.createTable('groups', function (table) {
-        table.increments('id').unsigned().primary();
         table.dateTime('createdAt').defaultTo(knex.fn.now());
         table.dateTime('updatedAt').defaultTo(knex.fn.now());
 
         table.string('name').notNullable();
+        table.string('uid',128).primary().notNullable();
         table.string('website').defaultTo('');
         table.text('description').defaultTo('');
         table.enum('school', ['polytechnique', 'ensta', 'supoptique']).notNullable();
diff --git a/db/migrations/20180301104213_insert_parent_column.js b/db/migrations/20180301104213_insert_parent_column.js
deleted file mode 100644
index 871921e..0000000
--- a/db/migrations/20180301104213_insert_parent_column.js
+++ /dev/null
@@ -1,12 +0,0 @@
-
-exports.up = function(knex, Promise) {
-    return knex.schema.table('groups', function(t) {
-        t.integer('parent');
-    });
-};
-
-exports.down = function(knex, Promise) {
-    return knex.schema.table('groups', function(t) {
-        t.dropColumn('parent');
-    });
-};
diff --git a/db/migrations/20180301152556_group_parent_key.js b/db/migrations/20180301152556_group_parent_key.js
new file mode 100644
index 0000000..eafc29d
--- /dev/null
+++ b/db/migrations/20180301152556_group_parent_key.js
@@ -0,0 +1,12 @@
+
+exports.up = function(knex, Promise) {
+    return knex.schema.table('groups', function(table) {
+        table.string('parentuid',128);
+    });
+};
+
+exports.down = function(knex, Promise) {
+    return knex.schema.table('groups', function(table) {
+        table.dropColumn('parentuid');
+    });
+};
diff --git a/db/seeds/01_create_groups.js b/db/seeds/01_create_groups.js
index b5cdc83..1eb8237 100644
--- a/db/seeds/01_create_groups.js
+++ b/db/seeds/01_create_groups.js
@@ -6,29 +6,38 @@ exports.seed = function(knex, Promise) {
       // Inserts seed entries
       const groups = [{
           name: 'BR',
+          uid: 'br',
           website: 'br.binets.fr',
           description: 'Le Binet Réseau est responsable du réseau internet des élèves sur le campus de l\'Ecole polytechnique.',
-          school: 'polytechnique'
-        },
-        {
+          school: 'polytechnique',
+          parentuid: 'kes'
+        },{
           name: 'JTX',
+          uid: 'jtx',
           website: 'binet-jtx.com',
-          school: 'polytechnique'
-        },
-        {
+          school: 'polytechnique',
+          parentuid: 'kes'
+        },{
           name: 'Kès',
+          uid: 'kes',
           website: 'kes.binets.fr',
           school: 'polytechnique'
-        },
-        {
+        },{
           name: 'DaTA',
+          uid: 'data',
           website: 'data-ensta.fr',
-          school: 'ensta'
-        },
-        {
+          school: 'ensta',
+          parentuid: 'bdeensta'
+        },{
           name: 'Laser Wave',
+          uid: 'laserwave',
           website: 'laserwave.fr',
           school: 'supoptique'
+        },{
+          name: 'BDE Ensta',
+          uid: 'bdeensta',
+          website: 'http://bde.ensta-paristech.fr/',
+          school: 'ensta'
         }
       ];
 
-- 
GitLab