diff --git a/app.js b/app.js index ab7aed4d9a2ca8fc83dba4ee8ca340e9f06b35c8..ccf963c45265b6d0dafb329925244e8430884af3 100644 --- a/app.js +++ b/app.js @@ -4,11 +4,18 @@ var path = require('path'); var cookieParser = require('cookie-parser'); var logger = require('morgan'); +const session = require('express-session'); +const passport = require('./passport-config'); +const connectToDatabase = require('./database/connection'); + var indexRouter = require('./routes/index'); var usersRouter = require('./routes/users'); +var authentifcationRouter = require('./routes/authentification'); var app = express(); +connectToDatabase(); + // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'pug'); @@ -19,7 +26,12 @@ app.use(express.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); -app.use('/', indexRouter); +app.use(session({ secret: 'fifiHajar', resave: true, saveUninitialized: true })); +app.use(passport.initialize()); +app.use(passport.session()); + +//app.use('/', indexRouter); +app.use('/', authentifcationRouter); app.use('/users', usersRouter); // catch 404 and forward to error handler diff --git a/data/WiredTiger.turtle b/data/WiredTiger.turtle index 93ec93a76fe540b0c43ec84c16ab58bdb78d4413..0d444e3e9c524f41e2ccabc3c98a325041af66f8 100644 --- a/data/WiredTiger.turtle +++ b/data/WiredTiger.turtle @@ -3,4 +3,4 @@ WiredTiger 11.2.0: (November 10, 2022) WiredTiger version major=11,minor=2,patch=0 file:WiredTiger.wt -access_pattern_hint=none,allocation_size=4KB,app_metadata=,assert=(commit_timestamp=none,durable_timestamp=none,read_timestamp=none,write_timestamp=off),block_allocation=best,block_compressor=,cache_resident=false,checksum=on,collator=,columns=,dictionary=0,encryption=(keyid=,name=),format=btree,huffman_key=,huffman_value=,id=0,ignore_in_memory_cache_size=false,internal_item_max=0,internal_key_max=0,internal_key_truncate=true,internal_page_max=4KB,key_format=S,key_gap=10,leaf_item_max=0,leaf_key_max=0,leaf_page_max=32KB,leaf_value_max=0,log=(enabled=true),memory_page_image_max=0,memory_page_max=5MB,os_cache_dirty_max=0,os_cache_max=0,prefix_compression=false,prefix_compression_min=4,readonly=false,split_deepen_min_child=0,split_deepen_per_child=0,split_pct=90,tiered_object=false,tiered_storage=(auth_token=,bucket=,bucket_prefix=,cache_directory=,local_retention=300,name=,object_target_size=0),value_format=S,verbose=[],version=(major=1,minor=1),write_timestamp_usage=none,checkpoint=(WiredTigerCheckpoint.300=(addr="018081e4157f1ba48181e4cbd61c158281e441346a25808080e3010fc0e23fc0",order=300,time=1696263306,size=28672,newest_start_durable_ts=0,oldest_start_ts=0,newest_txn=12,newest_stop_durable_ts=0,newest_stop_ts=-1,newest_stop_txn=-11,prepare=0,write_gen=854,run_write_gen=834)),checkpoint_backup_info=,checkpoint_lsn=(50,8832) +access_pattern_hint=none,allocation_size=4KB,app_metadata=,assert=(commit_timestamp=none,durable_timestamp=none,read_timestamp=none,write_timestamp=off),block_allocation=best,block_compressor=,cache_resident=false,checksum=on,collator=,columns=,dictionary=0,encryption=(keyid=,name=),format=btree,huffman_key=,huffman_value=,id=0,ignore_in_memory_cache_size=false,internal_item_max=0,internal_key_max=0,internal_key_truncate=true,internal_page_max=4KB,key_format=S,key_gap=10,leaf_item_max=0,leaf_key_max=0,leaf_page_max=32KB,leaf_value_max=0,log=(enabled=true),memory_page_image_max=0,memory_page_max=5MB,os_cache_dirty_max=0,os_cache_max=0,prefix_compression=false,prefix_compression_min=4,readonly=false,split_deepen_min_child=0,split_deepen_per_child=0,split_pct=90,tiered_object=false,tiered_storage=(auth_token=,bucket=,bucket_prefix=,cache_directory=,local_retention=300,name=,object_target_size=0),value_format=S,verbose=[],version=(major=1,minor=1),write_timestamp_usage=none,checkpoint=(WiredTigerCheckpoint.673=(addr="018381e47d1778368481e403f75cd18581e46d40c9a8808080e2bfc0e24fc0",order=673,time=1696283715,size=32768,newest_start_durable_ts=0,oldest_start_ts=0,newest_txn=7,newest_stop_durable_ts=0,newest_stop_ts=-1,newest_stop_txn=-11,prepare=0,write_gen=1910,run_write_gen=1897)),checkpoint_backup_info=,checkpoint_lsn=(114,7296) diff --git a/data/WiredTiger.wt b/data/WiredTiger.wt index b63710f37faf852dcbab2eb09fcf1772a454efbe..215ec8fc934e184cbf0d096a4003aaa2da7f1830 100644 Binary files a/data/WiredTiger.wt and b/data/WiredTiger.wt differ diff --git a/data/_mdb_catalog.wt b/data/_mdb_catalog.wt index 59fa7f3fd242f896a73b4f18491c2d22b5754bcc..820db047da78942eda2fc0d64a46d7b345d23e33 100644 Binary files a/data/_mdb_catalog.wt and b/data/_mdb_catalog.wt differ diff --git a/data/collection-0--2127549501976539622.wt b/data/collection-0--2127549501976539622.wt new file mode 100644 index 0000000000000000000000000000000000000000..c6136598cd07aa69e53d71bb87b9ec6e7492ff0e Binary files /dev/null and b/data/collection-0--2127549501976539622.wt differ diff --git a/data/collection-2-332077683903808650.wt b/data/collection-2-332077683903808650.wt index 4a68aeb8f1dc101e452b0cde54224f5ce17b4535..84a5cb215cb0a4a247bf892b0df5eb04300bb8bc 100644 Binary files a/data/collection-2-332077683903808650.wt and b/data/collection-2-332077683903808650.wt differ diff --git a/data/collection-4-332077683903808650.wt b/data/collection-4-332077683903808650.wt index 3f019cba9b5ed0b1a0275084adb91169387c9683..c81bb53d222d805d7c2f02b54d904e8576d86deb 100644 Binary files a/data/collection-4-332077683903808650.wt and b/data/collection-4-332077683903808650.wt differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-31-41Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-31-41Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..1a734d03e15e7fd4325f5037c6ebff91cc21ab4a Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-31-41Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-41-45Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-41-45Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..a25f5730a90ca2db987942e10692d29aab465a6d Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-41-45Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-46-32Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-46-32Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..cc13437a3cc851d914cd4147f4ab20a65d1eef9b Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-46-32Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-48-53Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-48-53Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..a13d3386f51809518fff6053387e11ef9bdf7ddd Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-48-53Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-51-02Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-51-02Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..002ae632e07386b268fb64bf7a4b319af5b686ec Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-51-02Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-51-39Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-51-39Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..009fb6d010145c38c8dfe8eb3485e0d56605d851 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-51-39Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-53-59Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-53-59Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..e0799144d7e581f396a9387c04951a0d21611332 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-53-59Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-56-28Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-56-28Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..cf0bdb474a14aa48e5a7e5d1f369c3293560ea2b Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-56-28Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T16-59-05Z-00000 b/data/diagnostic.data/metrics.2023-10-02T16-59-05Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..d9a82bc5ac7286afe21fa1f8a2821852e10d6b04 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T16-59-05Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-00-42Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-00-42Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..be6f4fc41c456c7a611decca7fe922d41364f6c1 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-00-42Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-02-33Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-02-33Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..79263a0751e0402e85d8195221e29ded9115075a Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-02-33Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-04-10Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-04-10Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..6d1ea4ae510e3a16c0cb15bcabb73fc5285569b1 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-04-10Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-12-16Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-12-16Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..fb301c91474f937c8b21f08bea4311a70f1fcb4e Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-12-16Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-13-07Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-13-07Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..223461ae6df84a7cc13416735b6c2a5da7cb41b7 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-13-07Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T17-15-58Z-00000 b/data/diagnostic.data/metrics.2023-10-02T17-15-58Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..9ebf75563324833e52f9201fd8ca99ffcbe05f61 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T17-15-58Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-32-13Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-32-13Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..a517852f9709579e5b7efd176c2c78a111065b84 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-32-13Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-37-26Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-37-26Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..5ceb920352101f4576da8e7ee90ba7665c453718 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-37-26Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-40-45Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-40-45Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..d20771fa09fae78a89320a00f94c19e868b2cc61 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-40-45Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-42-11Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-42-11Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..a71799fcb66d55b3720a8c4eabbdbc70cef3bd12 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-42-11Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-43-31Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-43-31Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..767378818dc524fd28f2b94d35fecafad219de9a Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-43-31Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-44-57Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-44-57Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..f32af28d73a43787983501ea3c651bd798190245 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-44-57Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-46-27Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-46-27Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..dc90c82831243da7a5629916d94021c9bebae73d Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-46-27Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-47-54Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-47-54Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..4527cd9d3d345e02a1eeb0a12614a0726c11e7a3 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-47-54Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-48-39Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-48-39Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..43daa46549d5c7ac0fc4dbf12050f40e2b2eb124 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-48-39Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-49-46Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-49-46Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..483dac7abfa854bc97f19d8d1aa61fea1994cd95 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-49-46Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-50-37Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-50-37Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..2e3724d314b0ea7aa71b21b5afbf54f7690f67e3 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-50-37Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-52-27Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-52-27Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..f8aea719229071874911aa371aed80bab4c9538f Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-52-27Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-54-24Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-54-24Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..c49c9039301465ef70459619f2c2051bd39bc59d Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-54-24Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T18-55-24Z-00000 b/data/diagnostic.data/metrics.2023-10-02T18-55-24Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..ad639ffcd0c8d7fbd102839bb2d7e8a3f05e20a8 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T18-55-24Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-00-42Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-00-42Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..707cf31c56de8fe7e4a5f70a081fa1f396ffaf15 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-00-42Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-06-42Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-06-42Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..1d491d315932a27afcc54beabae9099f58afaf93 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-06-42Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-09-15Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-09-15Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..31ce3037944c4f7a9de6318ac8e69311e17d694c Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-09-15Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-11-55Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-11-55Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..d39b730ddf80a8588c18346d757008256af75b52 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-11-55Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-12-57Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-12-57Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..b4760a056a45a8881a7ddba8f8b5059b38de9b52 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-12-57Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-52-04Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-52-04Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..a8a057ef27eecc6b894c6092fa3e6f972602a2aa Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-52-04Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-54-31Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-54-31Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..4ecb504d5153c11f59f0eb9ed1f1ba603f01de6f Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-54-31Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-57-13Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-57-13Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..29b73b13d9b0f8a72d7de3cdb8da4f8366d62a9e Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-57-13Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T19-59-03Z-00000 b/data/diagnostic.data/metrics.2023-10-02T19-59-03Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..b977048c252fcce232f1146f50da830016e7bb0f Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T19-59-03Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-00-53Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-00-53Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..7f715838055ad38edaf8ecdfebb12a2877289470 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-00-53Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-02-28Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-02-28Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..6819d9e717b28764a072b6058c7016c0ca3d3336 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-02-28Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-03-40Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-03-40Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..e7b284c1848ed1f2b2fc7042802f74f5b6ec2e9a Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-03-40Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-05-56Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-05-56Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..238f36ffb0f8419b10ea5c8bc34e74d0ad2cb2c5 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-05-56Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-08-01Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-08-01Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..1022d1eee54d80354799c28c23ee2fac5c27b280 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-08-01Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-16-18Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-16-18Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..6cf7d2468873436af5dacc1e0aaf525fb5bbded6 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-16-18Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-18-05Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-18-05Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..fc23a6ff8ffae9f916aba958025a245ad2dd47a7 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-18-05Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-19-24Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-19-24Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..2a5338f9c986089d7375901523ad27bea1c16f1b Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-19-24Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-20-50Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-20-50Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..1f8631bf1f1b275c8cd207564c286e372922cf6e Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-20-50Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-22-37Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-22-37Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..84c422bb3b876eb13bfe052c4f4f65b5b9bf25ce Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-22-37Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-23-56Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-23-56Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..150492f1464fee7a19e3f64eb0ff40353d0b13f6 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-23-56Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-33-22Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-33-22Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..bb646caddea085fc7d129221e9585ee84e653f2c Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-33-22Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-46-44Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-46-44Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..7f993bf7001a1904228e96718c2f31f1cb23ae70 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-46-44Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-55-39Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-55-39Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..b67f6162e096b04b785a61137f5776d6360707c0 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-55-39Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T20-56-44Z-00000 b/data/diagnostic.data/metrics.2023-10-02T20-56-44Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..455d1afa24208edf615102e23dadbb92b7247792 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T20-56-44Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-01-02Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-01-02Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..6949be34066332a1659c1f2e8fa9e225884a827e Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-01-02Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-03-38Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-03-38Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..11b775a12be834aa4501ad0c077fa77822545763 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-03-38Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-21-49Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-21-49Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..e6893b31e54045b26b437e4e9424caf64428ee67 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-21-49Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-22-51Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-22-51Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..d5ec6efb55fed158e6c2fd401a8d974ebf076cff Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-22-51Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-27-11Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-27-11Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..f6439fc944a6223a5e38f056dea1b2bb0705e7af Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-27-11Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-29-35Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-29-35Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..01a2906bf4d8055e269897df84c948880ed0438b Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-29-35Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-31-30Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-31-30Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..dc50c2e086aeb23890d8d98526bcc8bdfb151704 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-31-30Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-32-41Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-32-41Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..c308741adc82610b8f3f5aecabaf7c14196a6c51 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-32-41Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-34-12Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-34-12Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..5e3725795be28bd8fe1cc46d686ec0196a3bba79 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-34-12Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-40-58Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-40-58Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..8e86431d17ab137eab68b1207b7935d94de6a474 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-40-58Z-00000 differ diff --git a/data/diagnostic.data/metrics.2023-10-02T21-51-23Z-00000 b/data/diagnostic.data/metrics.2023-10-02T21-51-23Z-00000 new file mode 100644 index 0000000000000000000000000000000000000000..7fe5fa81bd404a341952af8f85f0987c613554a6 Binary files /dev/null and b/data/diagnostic.data/metrics.2023-10-02T21-51-23Z-00000 differ diff --git a/data/diagnostic.data/metrics.interim b/data/diagnostic.data/metrics.interim deleted file mode 100644 index 7f08050e5a13eb7be9ebd5e9160f651ff25a9b55..0000000000000000000000000000000000000000 Binary files a/data/diagnostic.data/metrics.interim and /dev/null differ diff --git a/data/index-1--2127549501976539622.wt b/data/index-1--2127549501976539622.wt new file mode 100644 index 0000000000000000000000000000000000000000..bfe859c2a3c0154795fa9943ce2587b266bab3b3 Binary files /dev/null and b/data/index-1--2127549501976539622.wt differ diff --git a/data/index-3-332077683903808650.wt b/data/index-3-332077683903808650.wt index aeb13a658a15043095c6d5757afebdcafde4700d..150e27531a5bae8b0a1d916c240bca5c6305fc33 100644 Binary files a/data/index-3-332077683903808650.wt and b/data/index-3-332077683903808650.wt differ diff --git a/data/index-5-332077683903808650.wt b/data/index-5-332077683903808650.wt index 3f019cba9b5ed0b1a0275084adb91169387c9683..16c598a79c659b130ddeec7f4cdeecfb827aa1f6 100644 Binary files a/data/index-5-332077683903808650.wt and b/data/index-5-332077683903808650.wt differ diff --git a/data/index-6-332077683903808650.wt b/data/index-6-332077683903808650.wt index 3f019cba9b5ed0b1a0275084adb91169387c9683..37f98db6602614dea8073c8f33bf6abba3e24919 100644 Binary files a/data/index-6-332077683903808650.wt and b/data/index-6-332077683903808650.wt differ diff --git a/data/journal/WiredTigerLog.0000000050 b/data/journal/WiredTigerLog.0000000114 similarity index 99% rename from data/journal/WiredTigerLog.0000000050 rename to data/journal/WiredTigerLog.0000000114 index f6cfa77a54c8364b89dd694dfaa4f156cc776e71..d87db2b2fda9c998cf603c2517d5d2cf82058151 100644 Binary files a/data/journal/WiredTigerLog.0000000050 and b/data/journal/WiredTigerLog.0000000114 differ diff --git a/data/mongod.lock b/data/mongod.lock index d00491fd7e5bb6fa28c517a0bb32b8b506539d4d..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 --- a/data/mongod.lock +++ b/data/mongod.lock @@ -1 +0,0 @@ -1 diff --git a/data/sizeStorer.wt b/data/sizeStorer.wt index 2b8d07ad83862c20b25a4ad0bfb4566c51fb3e7e..3ed0cfc49005d1f9e8d75ece6f441c84f1a0a590 100644 Binary files a/data/sizeStorer.wt and b/data/sizeStorer.wt differ diff --git a/database/connection.js b/database/connection.js index 5aecc5b6f61b8df88425dc2e8a0c11e9dca1fbfe..5c201cb395a6e25ed93db0491b6c24f6dbe825d0 100644 --- a/database/connection.js +++ b/database/connection.js @@ -1,28 +1,17 @@ -// database/connection.js +const mongoose = require('mongoose'); require('dotenv').config(); -const { MongoClient } = require('mongodb'); - const dbName = process.env.DB_NAME; - const url = `mongodb://mongodb:27017/${dbName}`; -module.exports = async function connectToDatabase() { - const client = new MongoClient(url); - +const connectToDatabase = async () => { try { - await client.connect(); - - const db = client.db(dbName); + await mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }); console.log(`Connecté à la base de données ${dbName}`); - - return db; - // Création de la collection ou exécution d'autres opérations - //await db.createCollection('mycollection'); } catch (err) { console.error(err); throw err; - } finally { - await client.close(); } }; + +module.exports = connectToDatabase; diff --git a/docker-compose.yml b/docker-compose.yml index 03ed67bfb76359714d7a6bb771e19d4810de31b4..a3c0d3133b06fe0745d7b5cf0899a29815408e17 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -17,5 +17,3 @@ services: - 3000:3000 volumes: - ./:/api - depends_on: - - mongodb diff --git a/package-lock.json b/package-lock.json index 94bd0670be042dab0f534e95307982141b0294d8..6369caa5bdc3f422b9a1f66f193cd0370b9f8be4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -44,6 +44,12 @@ "@types/webidl-conversions": "*" } }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -88,6 +94,16 @@ "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", "integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==" }, + "anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -123,6 +139,12 @@ "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, "basic-auth": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", @@ -131,6 +153,12 @@ "safe-buffer": "5.1.2" } }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, "body-parser": { "version": "1.18.3", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", @@ -148,6 +176,25 @@ "type-is": "~1.6.16" } }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, "bson": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/bson/-/bson-6.1.0.tgz", @@ -189,6 +236,22 @@ "is-regex": "^1.0.3" } }, + "chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "dev": true, + "requires": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "fsevents": "~2.3.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + } + }, "clean-css": { "version": "3.4.28", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-3.4.28.tgz", @@ -216,6 +279,12 @@ "graceful-readlink": ">= 1.0.0" } }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, "constantinople": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/constantinople/-/constantinople-3.1.2.tgz", @@ -363,6 +432,47 @@ } } }, + "express-session": { + "version": "1.17.3", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz", + "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==", + "requires": { + "cookie": "0.4.2", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-headers": "~1.0.2", + "parseurl": "~1.3.3", + "safe-buffer": "5.2.1", + "uid-safe": "~2.1.5" + }, + "dependencies": { + "cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==" + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + } + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, "finalhandler": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", @@ -387,11 +497,23 @@ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" }, + "fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "optional": true + }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "generaterr": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/generaterr/-/generaterr-1.5.0.tgz", + "integrity": "sha512-JgcGRv2yUKeboLvvNrq9Bm90P4iJBu7/vd5wSLYqMG5GJ6SxZT46LAAkMfNhQ+EK3jzC+cRBm7P8aUWYyphgcQ==" + }, "get-intrinsic": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", @@ -403,6 +525,15 @@ "has-symbols": "^1.0.3" } }, + "glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, "graceful-readlink": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", @@ -416,6 +547,12 @@ "function-bind": "^1.1.1" } }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true + }, "has-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", @@ -453,6 +590,12 @@ "safer-buffer": ">= 2.1.2 < 3" } }, + "ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA==", + "dev": true + }, "inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", @@ -468,6 +611,15 @@ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", @@ -497,6 +649,27 @@ } } }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, "is-promise": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", @@ -553,6 +726,15 @@ "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", "integrity": "sha512-k+yt5n3l48JU4k8ftnKG6V7u32wyH2NfKzeMto9F/QRE0amxy/LayxwlvjjkZEIzqR+19IrtFO8p5kB9QaYUFg==" }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, "media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -591,6 +773,15 @@ "mime-db": "1.52.0" } }, + "minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, "mongodb": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.1.0.tgz", @@ -697,6 +888,56 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, + "nodemon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-3.0.1.tgz", + "integrity": "sha512-g9AZ7HmkhQkqXkRc20w+ZfQ73cHLbE8hnPbtaFbFtCumZsjyMhKk9LajQ07U5Ux28lvFjZ5X7HvWR1xzU8jHVw==", + "dev": true, + "requires": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.1.2", + "pstree.remy": "^1.1.8", + "semver": "^7.5.3", + "simple-update-notifier": "^2.0.0", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha512-NWmpvLSqUrgrAC9HCuxEvb+PSloHpqVu+FqcO4eeF2h5qYRhA7ev6KvelyQAKtegUbC6RypJnlEOhd8vloNKYg==", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", @@ -720,6 +961,39 @@ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, + "passport": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/passport/-/passport-0.6.0.tgz", + "integrity": "sha512-0fe+p3ZnrWRW74fe8+SvCyf4a3Pb2/h7gFkQ8yTJpAO50gDzlfjZUZTO1k5Eg9kUct22OxHLqDZoKUWRHOh9ug==", + "requires": { + "passport-strategy": "1.x.x", + "pause": "0.0.1", + "utils-merge": "^1.0.1" + } + }, + "passport-local": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz", + "integrity": "sha512-9wCE6qKznvf9mQYYbgJ3sVOHmCWoUNMVFoZzNoznmISbhnNNPhN9xfY3sLmScHMetEJeoY7CXwfhCe7argfQow==", + "requires": { + "passport-strategy": "1.x.x" + } + }, + "passport-local-mongoose": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/passport-local-mongoose/-/passport-local-mongoose-8.0.0.tgz", + "integrity": "sha512-jgfN/B0j11WT5f96QlL5EBvxbIwmzd+tbwPzG1Vk8hzDOF68jrch5M+NFvrHjWjb3lfAU0DkxKmNRT9BjFZysQ==", + "requires": { + "generaterr": "^1.5.0", + "passport-local": "^1.0.0", + "scmp": "^2.1.0" + } + }, + "passport-strategy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/passport-strategy/-/passport-strategy-1.0.0.tgz", + "integrity": "sha512-CB97UUvDKJde2V0KDWWB3lyf6PC3FaZP7YxZ2G8OAtn9p4HI9j9JLP9qjOGZFvyl8uwNT8qM+hGnz/n16NI7oA==" + }, "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", @@ -730,6 +1004,17 @@ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" }, + "pause": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/pause/-/pause-0.0.1.tgz", + "integrity": "sha512-KG8UEiEVkR3wGEb4m5yZkVCzigAD+cVEJck2CzYZO37ZGJfctvVptVO192MwrtPhzONn6go8ylnOdMhKqi4nfg==" + }, + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "dev": true + }, "promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", @@ -747,6 +1032,12 @@ "ipaddr.js": "1.9.1" } }, + "pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==", + "dev": true + }, "pug": { "version": "2.0.0-beta11", "resolved": "https://registry.npmjs.org/pug/-/pug-2.0.0-beta11.tgz", @@ -871,6 +1162,11 @@ "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" }, + "random-bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/random-bytes/-/random-bytes-1.0.0.tgz", + "integrity": "sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==" + }, "range-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", @@ -887,6 +1183,15 @@ "unpipe": "1.0.0" } }, + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", @@ -925,6 +1230,20 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "scmp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/scmp/-/scmp-2.1.0.tgz", + "integrity": "sha512-o/mRQGk9Rcer/jEEw/yw4mwo3EU/NvYvp577/Btqrym9Qy5/MdWGBqipbALgd2lrdWTJ5/gqDusxfnQBxOxT2Q==" + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, "send": { "version": "0.16.2", "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", @@ -966,6 +1285,15 @@ "resolved": "https://registry.npmjs.org/sift/-/sift-16.0.1.tgz", "integrity": "sha512-Wv6BjQ5zbhW7VFefWusVP33T/EM0vYikCaQ2qR8yULbsilAT8/wQaXvuQ3ptGLpoKx+lihJE3y2UTgKDyyNHZQ==" }, + "simple-update-notifier": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz", + "integrity": "sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w==", + "dev": true, + "requires": { + "semver": "^7.5.3" + } + }, "smart-buffer": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", @@ -1001,6 +1329,15 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==" }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, "supports-preserve-symlinks-flag": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", @@ -1011,11 +1348,29 @@ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==" }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, "token-stream": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/token-stream/-/token-stream-0.0.1.tgz", "integrity": "sha512-nfjOAu/zAWmX9tgwi5NRp7O7zTDUD1miHiB40klUnAh9qnL1iXdgzcz/i5dMaL5jahcBAaSfmNOBBJBLJW8TEg==" }, + "touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dev": true, + "requires": { + "nopt": "~1.0.10" + } + }, "tr46": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", @@ -1056,6 +1411,20 @@ "integrity": "sha512-vb2s1lYx2xBtUgy+ta+b2J/GLVUR+wmpINwHePmPRhOsIVCG2wDzKJ0n14GslH1BifsqVzSOwQhRaCAsZ/nI4Q==", "optional": true }, + "uid-safe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz", + "integrity": "sha512-KPHm4VL5dDXKz01UuEd88Df+KzynaohSL9fBh096KWAxSKZQDI2uBrVqtvRM4rwrIrRRKsdLNML/lnaaVSRioA==", + "requires": { + "random-bytes": "~1.0.0" + } + }, + "undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==", + "dev": true + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -1109,6 +1478,12 @@ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", "integrity": "sha512-xSBsCeh+g+dinoBv3GAOWM4LcVVO68wLXRanibtBSdUvkGWQRGeE9P7IwU9EmDDi4jA6L44lz15CGMwdw9N5+Q==" }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, "yargs": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", diff --git a/package.json b/package.json index 087c903dd27ca4b1ffddf3b720a7dc45bf2abf40..9202d47fb560a8ff3095e3efc4d59d49b440a847 100644 --- a/package.json +++ b/package.json @@ -10,10 +10,17 @@ "debug": "~2.6.9", "dotenv": "^16.3.1", "express": "~4.16.1", + "express-session": "^1.17.3", "http-errors": "~1.6.3", "mongodb": "^6.1.0", "mongoose": "^7.5.2", "morgan": "~1.9.1", + "passport": "^0.6.0", + "passport-local": "^1.0.0", + "passport-local-mongoose": "^8.0.0", "pug": "2.0.0-beta11" + }, + "devDependencies": { + "nodemon": "^3.0.1" } } diff --git a/passport-config.js b/passport-config.js new file mode 100644 index 0000000000000000000000000000000000000000..9a97cb4b994a3e83852279c3350f1369a70cf102 --- /dev/null +++ b/passport-config.js @@ -0,0 +1,41 @@ +const passport = require('passport'); +const LocalStrategy = require('passport-local').Strategy; + +const User = require('./schemas/models'); + +passport.use(new LocalStrategy( + { usernameField: 'username' }, + async function(username, password, done) { + try { + // const utilisateurs = await User.find({}); + const user = await User.findOne({ username: username }); + if (!user) { + return done(null, false, { message: 'Nom d\'utilisateur incorrect.' }); + } + if (!user.validPassword(password)) { + return done(null, false, { message: 'Mot de passe incorrect.' }); + } + return done(null, user); + } catch (error) { + return done(error); + } + } +)); + +passport.serializeUser(function(user, done) { + done(null, user.username); +}); + +passport.deserializeUser( async function(username, done) { + try { + const user = await User.findOne({ username: username }); + if (!user) { + return done(null, false, { message: 'Utilisateur non trouvé.' }); + } + return done(null, user); + } catch (error) { + return done(error); + } +}); + +module.exports = passport; \ No newline at end of file diff --git a/routes/authentification.js b/routes/authentification.js new file mode 100644 index 0000000000000000000000000000000000000000..62bc3b98202756504763ef0663c6041d647f9568 --- /dev/null +++ b/routes/authentification.js @@ -0,0 +1,35 @@ +var express = require('express'); +var router = express.Router(); +const passport = require('../passport-config'); + +/* GET home page. */ +router.get('/', function(req, res, next) { + res.render('authentification'); +}); + +router.post('/authentification', passport.authenticate('local', { + successRedirect: '/dashboard', + failureRedirect: '/' +})); + +router.get('/dashboard', isAuthenticated, function(req, res, next) { + res.render('deconnexion'); +}); + +router.get('/logout', isAuthenticated, function(req, res, next) { + req.logout(function(err) { + if (err) { + return next(err); + } + res.redirect('/'); + }); +}); + +function isAuthenticated(req, res, next) { + if (req.isAuthenticated()) { + return next(); + } + res.redirect('/'); +} + +module.exports = router; \ No newline at end of file diff --git a/schemas/models.js b/schemas/models.js new file mode 100644 index 0000000000000000000000000000000000000000..d961e582fd4922276c8dd166efac8a92430923bd --- /dev/null +++ b/schemas/models.js @@ -0,0 +1,18 @@ +var mongoose = require('mongoose'); +var Schema = mongoose.Schema; +var passportLocalMongoose = require('passport-local-mongoose'); + +var userSchema = new Schema({ + username: { type: String, required: true }, + password: { type: String, required: true } +}); + +userSchema.plugin(passportLocalMongoose); + +userSchema.methods.validPassword = function(password) { + return this.password === password; +}; + +const User = mongoose.model('User', userSchema); +module.exports = User; + diff --git a/views/authentification.pug b/views/authentification.pug new file mode 100644 index 0000000000000000000000000000000000000000..f1581b32cc87a6aecb4d745ad6ae6e7457fea6ff --- /dev/null +++ b/views/authentification.pug @@ -0,0 +1,35 @@ + + + + + + Page d'Authentification + + + + +
+
+
+
+
+

Connexion

+
+
+
+ + +
+
+ + +
+ + Créer un compte +
+
+
+
+
+ + diff --git a/views/deconnexion.pug b/views/deconnexion.pug new file mode 100644 index 0000000000000000000000000000000000000000..8c072509dd63185b79abf7e9eec879a665d229d7 --- /dev/null +++ b/views/deconnexion.pug @@ -0,0 +1,28 @@ + + + + + + Dashboard + + + + +
+
+ Déconnexion +
+
+
+
+
+
+

Authentification réussie !

+
+
+
+
+
+
+ +