Giter VIP home page Giter VIP logo

eurekaclinical-user-webclient's Introduction

Eureka! Clinical User Web Client

Georgia Clinical and Translational Science Alliance (Georgia CTSA), Emory University, Atlanta, GA

What does it do?

This project contains the web client for Eureka! Clinical User Services. It is an Angular 4/5 single-page site.

Version 1.0

Initial release.

Build requirements

Runtime requirements

Building it

We use maven, node, and gulp to build the project. You need to install maven on your computer. Maven handles downloading and installing node and gulp for you. Maven installs node in the .eurekaclinical/dev directory in your home directory. It installs the node modules that are needed to build this project in the node_modules directory at the root of this project.

To build the project and bring up the webserver, execute mvn clean install -Pwebserver at the command line. For simple file changes, not additions or deletions, you can usually use mvn install -Pwebserver. To create a zipfile suitable for distribution, execute mvn install -Pdist.

Performing system tests

To run the web client on your machine for testing purposes, do the following:

  1. Clone the eurekaclinical-user-webapp project from GitHub, and execute mvn clean install followed by mvn process-resources cargo:run -Ptomcat in the root directory of the project on the command line to run the server-side Eureka! Clinical User code in embedded tomcat. The backend services must be listening on port 8443, which is the default.
  2. Back in the root directory of the web client project, execute mvn clean install -Pwebserver. It will open the web client in your default web browser at https://localhost:4200 in an embedded web server. You can leave the backend eureka code running while you repeatedly build and run the web client.

Configuration

This web client is configured using a JSON file, config.json, that should be in the src/assets directory in your project. It supports specifying the following options:

  • logoutUrl: The URL that the web client will go to when the user clicks the Logout click in the upper right corner of the page. Before going to this URL, the web client will destroy the user's session.
  • userWebappUrl: The URL for eureka-webapp. The default value is https://localhost:4200/eurekaclinical-user-webapp.
  • googleOAuthID: Client Id for google OAuth.
  • githubOAuthID: Client Id for github OAuth.
  • globusOAuthID: Client Id for globus OAuth.
  • helpUrl: The URL for help site.
  • idleWaitTime: The time period that the user gets notification before system logout automatically if user stays idle.

Specify the options as properties of a single JSON object. See the default config.json file in the src/assets under the root directory of this project for a sample. The assets folder is copied into the dist directory during the build process.

Developer documentation

Getting help

Feel free to contact us at [email protected].

eurekaclinical-user-webclient's People

Contributors

candyam5522 avatar arpost avatar dgunda1 avatar nityanandareddy avatar ndeshpa avatar

Watchers

James Cloos avatar Alex Edwards avatar  avatar  avatar

eurekaclinical-user-webclient's Issues

Update README.md

Please create a README.md that follows our conventions. See the README for eurekaclinical-admin-webclient for an example.

Clicking User Portal goes back to the main page

It has to be a hyperlink to make the styling work, but clicking on it should not change the page that you are on. In angularjs 1, this is a hyperlink "a" tag with href="#", but that does not seem to work here.

Missing Help link

The menu bar should have a Help link on the menu bar to the left of the Login/User Menu item with the fa-question-circle fontawesome icon, like Eureka! Clinical Analytics does. For now, just have it open up http://eurekaclinical.org in a new tab/window.

LICENSE files issue

The project should be licensed under Apache 2 only. The pom.xml lists only Apache 2, but there are two LICENSE files in the root directory of the project, one for Apache2 and one for GPL. There should be just one file named LICENSE containing the Apache 2 license.

Move the Account Settings and Apps links to the top of the menu bar

We are making the User Menu (the superuser dropdown) on the upper right corner only for logging out and switching to other applications. As a result, put Account Settings and Apps to the left of the User Menu along the top of the screen. For example, where Jobs and Phenotypes are in eurekaclinical-analytics-webclient.

Logout workflow issue

The correct workflow is:

  1. Call the web app's /destroy-session URL
  2. On success, go to a URL that is configurable, which could be the CAS logout URL or some other URL.

Currently, it seems to be going directly to the CAS logout URL.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.