add account selection, settings, login modal

Change-Id: Ica6d38270c783de070bf1d5bb30603173dbeb0df
diff --git a/routes/index.js b/routes/index.js
index 7ddb40e..01e6c07 100644
--- a/routes/index.js
+++ b/routes/index.js
@@ -1,15 +1,9 @@
-var express = require('express');
-var router = express.Router();
-var path = require('path');
-
-// /* GET home page. */
-// router.get('/', function (req, res, next) {
-//     console.log("Request get index");
-//     res.render('index', { title: 'Express' });
-// });
+const express = require('express');
+const router = express.Router();
+const path = require('path');
 
 /* GET React App */
-router.get(['/app', '/app/*'], function (req, res, next) {
+router.get(['/app', '/app/*'], (req, res, next) => {
     res.sendFile(path.join(__dirname, '../public', 'index.html'));
 });
 
diff --git a/routes/jami.js b/routes/jami.js
new file mode 100644
index 0000000..90b9422
--- /dev/null
+++ b/routes/jami.js
@@ -0,0 +1,43 @@
+const express = require('express');
+
+class JamiRestApi {
+    constructor(jami) {
+        this.jami = jami
+    }
+
+    getRouter() {
+        const router = express.Router({mergeParams: true});
+
+        // Accounts
+        router.get(['/accounts'], (req, res, next) => {
+            console.log("Request account list")
+            res.json(this.jami.getAccountList().map(account => account.getSummary()))
+        });
+
+        router.get(['/accounts/:accountId'], (req, res, next) => {
+            console.log(`Request account ${req.params.accountId}`)
+            const account = this.jami.getAccount(req.params.accountId);
+            if (account)
+                res.json(account.getObject())
+            else
+                res.sendStatus(404)
+        });
+
+        // Conversations
+        const conversationRouter = express.Router({mergeParams: true});
+        conversationRouter.get('/', (req, res, next) => {
+            console.log(`Request conversations for account ${req.params.accountId}`);
+            res.json([]);
+        })
+
+        conversationRouter.get('/:conversationId', (req, res, next) => {
+            console.log(`Request conversation ${req.params.conversationId} for account ${req.params.accountId}`);
+            res.json({});
+        })
+
+        router.use('/accounts/:accountId/conversations', conversationRouter);
+        return router;
+    }
+}
+
+module.exports = JamiRestApi;