kucukkanat
6/14/2017 - 8:16 AM

Franx Services

Franx Services

import request from 'superagent'
import Promise from 'bluebird'

let Config = {
  getApiOrigin (){
    let matrix = 'http://sof-fixit-dev01:8080/gateway/api'
    let fakeHeroku = 'https://abn-franx.herokuapp.com/api/User'
    let fake = 'http://localhost:3000/api/User'

    return matrix
  }
}

let apiRoot = Config.getApiOrigin()
let Services = {}
Services.FirstTimeLogin = function(user){
  return new Promise((resolve,reject)=>{
    request
    .post(apiRoot+'/Matrix/FirstTimeLogin')
    .send({
      UserName:user.UserName,
      Email:user.Email
    })
    .set('Accept', 'application/json')
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.RequestOtpToken = function(user){
  return new Promise((resolve,reject)=>{
    request
    .get(apiRoot+`/Matrix/RequestOtpToken/${user.id}`)
    .send()
    .set('Accept', 'application/json')
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.ChangePassword = function(user){
  return new Promise((resolve,reject)=>{
    request
    .post(apiRoot+'/Matrix/ChangePassword')
    .send({
      personid:user.personid,
      username:user.username,
      password:user.password,
      token:user.token,
    })
    .set('Accept', 'application/json')
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.GetActiveCases = function(user){
  return new Promise((resolve,reject)=>{
    request
    .get(apiRoot+'/Matrix/GetActiveCases')
    .send()
    .set('Accept', 'application/json')
    .set('Authorization',`bearer ${user.AccessToken}`)
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.ValidateOtpToken = function(user){
  return new Promise((resolve,reject)=>{
    request
    .post(apiRoot+'/Matrix/ValidateOtpToken')
    .send({
      personid:user.personid,
      token:user.token
    })
    .set('Accept', 'application/json')
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.UpdatePassword = function(user){
  return new Promise((resolve,reject)=>{
    request
    .post(apiRoot+'/Matrix/UpdatePassword')
    .send({
      password:user.password
    })
    .set('Accept', 'application/json')
    .set('Authorization',`bearer ${user.AccessToken}`)
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

Services.Authenticate = function(user){
  return new Promise((resolve,reject)=>{
    request
    .post(apiRoot+'/User/Authenticate')
    .send({
      UserName:user.UserName,
      Password:user.Password
    })
    .set('Accept', 'application/json')
    .end(function (err,res){
      if(err) reject(err)
      else resolve(JSON.parse(res.text))
    })
  })
}

export default Services