ES6 Plato on Github
Report Home
Summary Display
actions/login.js
Maintainability
71.12
Lines of code
64
Difficulty
14.71
Estimated Errors
0.43
Function weight
By Complexity
By SLOC
import $ from 'jquery'; import ICATPLUS from '../config/icat/icatPlus.js'; import { fetchMyInvestigations, fecthEmbargoedInvestigations, fecthReleasedInvestigations, fecthInvestigationsAsInstrumentScientist } from './investigations.js'; import { fetchDataCollections } from './datacollections.js'; import { LOG_IN, LOGGED_IN, LOG_OUT, LOGIN_ERROR } from '../constants/ActionTypes' export function doLogOut(user) { return { type: LOG_OUT, user }; } export function setLoginInfo(user) { return { type: LOGGED_IN, user }; } export function doSignIn(plugin, username, password) { return function (dispatch) { $.ajax({ url: ICATPLUS.server + "/session", data: { "plugin" : plugin, "username" : username, "password" : password }, type: "post", dataType : "json", beforeSend : function(){ dispatch({type: LOG_IN, username: username}); }, success: function( data ) { if (data){ if (data.sessionId){ dispatch({type: LOGGED_IN, fullName: data.fullName, lifeTimeMinutes : data.lifeTimeMinutes, name : data.name, username: username, isAdministrator: data.isAdministrator, sessionId: data.sessionId}); dispatch(fecthEmbargoedInvestigations(data.sessionId)); dispatch(fecthReleasedInvestigations(data.sessionId)); dispatch(fecthInvestigationsAsInstrumentScientist(data.sessionId)); dispatch(fetchMyInvestigations(data.sessionId)); dispatch(fetchDataCollections(data.sessionId)); } } }, error: function(error) { dispatch({type: LOGIN_ERROR, username: username, error : "Authentication Failed" }); } }); }; }