Closed KinanBab closed 5 years ago
I changed the base to pacesetters. After this is merged, I'm going to merge the web analytics code and then we can merge to master.
To get JIFF: git submodule init git submodule update
must also do:
cd jiff
npm install
Error upon entering in valid session key & session password in index page.
Done w/ my code review.
Integrate JIFF into Web-MPC.
I can squash the commits down if you do not want to cluter the commit history much. Also, I do not know if this should go to master or pacesetters, but I branched of pacesetters, and I have all of Lucy's changes from it.
CHANGES
Server (almost) completely rewritten and re-organized, mainly made out of :
The functionality is the same as before, with two exceptions:
Client I basically added a JIFF controller and re-wrote app/helper/mpc.js to use JIFF. I also moved out everything related to generating keys, parsing PEMs, dumping PEMs, encryption and decryption, etc to a specific file app/helper/pki.js, I use that file in the JIFFController for hooks, but also in when a session is created to generate public keys.
Survey questions I tested everything with and without questions, everything works as expected. If you have questions, they wont be rendered in the browser in unmask.html, but they will downloaded as a csv file (this is the same as before).
Different deployment configurations under server/config there is a pacesetters.json configuration file. It contains server configurations (approved domains, and fredrick's email for the https certificate) and client configurations (for now I added the path to the data table template, the title, subtitle, and logo that are display in index.html). The server injects the configuration into index.html as it serves it using an express rendering plugin. I only had time to do the title/subtitle/log as a proof-of-concept, but we can use this to easily customize the UI for each deployment (displaying different text, changing images, and even the layout) while easily managing switching between them instead of using git branches. You can specify the configuration file name (without the path or .json) as an environment variable called WEBMPC_DEPLOYMENT. all this is in the readme.md file.
Fix Last thing, I fixed the multiple package.json issue, we only have one at the root directory, and all you need to do is run npm install once there.