Commit 6316f97f23a431cdd5717155e36ab5a700574270

Authored by Adhidarma Hadiwinoto
1 parent b9ad01b19d
Exists in master

store users view

Showing 4 changed files with 86 additions and 0 deletions Side-by-side Diff

... ... @@ -43,6 +43,9 @@ var controllerOptions = {
43 43 var UsersController = require("./usersController");
44 44 var usersController = new UsersController(config);
45 45  
  46 +var StoreUsersController = require("./storeUsersController");
  47 +var storeUsersController = new StoreUsersController(config);
  48 +
46 49 var aaaReportSender = require("./aaa-report-sender");
47 50 aaaReportSender.init(controllerOptions);
48 51  
... ... @@ -225,6 +228,7 @@ function pageTrxView(req, res, next) {
225 228 'trx.view.html',
226 229 {
227 230 title: 'Transaction #' + req.params.id,
  231 + session: req.session,
228 232 trx: doc
229 233 }
230 234 );
... ... @@ -372,6 +376,8 @@ app.get('/users/:capability/delete/:user_id/', authNeeded, adminNeeded, usersCon
372 376 app.get('/users/:capability/add/:user_id/:user_email', authNeeded, adminNeeded, usersController.addCapabilityForm);
373 377 app.post('/users/:capability/add/:user_id/:user_email', authNeeded, adminNeeded, usersController.addCapability);
374 378  
  379 +app.get('/store-users/view/:msisdn', authNeeded, adminNeeded, storeUsersController.view);
  380 +
375 381 app.listen(config.listen_port, function () {
376 382 console.log('Example app listening on port ' + config.listen_port);
377 383 });
storeUsersController.js
... ... @@ -0,0 +1,31 @@
  1 +var request = require("request");
  2 +
  3 +module.exports = StoreUsersController;
  4 +var config;
  5 +
  6 +function StoreUsersController(_config) {
  7 + config = _config;
  8 +}
  9 +
  10 +StoreUsersController.prototype.view = function(req, res, next) {
  11 + var requestOptions = {
  12 + url: config.sate24_rest.url + "/apikey/" + config.sate24_rest.apikey + "/store-user/by-msisdn/" + req.params.msisdn
  13 + };
  14 + request(requestOptions, function(err, requestResponse, body) {
  15 + var storeuser;
  16 +
  17 + try {
  18 + storeuser = JSON.parse(body);
  19 + }
  20 + catch(e) {
  21 + storeuser = {};
  22 + };
  23 +
  24 + res.render("store-users.view.html", {
  25 + title: 'Store User',
  26 + config: config,
  27 + session: req.session,
  28 + storeuser: storeuser
  29 + });
  30 + });
  31 +}
views/store-users.view.html
... ... @@ -0,0 +1,44 @@
  1 +{% extends "starter-template.html" %}
  2 +
  3 +{% block content %}
  4 +
  5 +<form class="form-horizontal">
  6 +
  7 + <div class="form-group">
  8 + <label for="inputUserName" class="col-sm-2 control-label">Name</label>
  9 + <div class="col-sm-10">
  10 + <input type="text" class="form-control" id="inputUserName" value="{{ storeuser.USER_NAME }}" readonly>
  11 + </div>
  12 + </div>
  13 +
  14 + <div class="form-group">
  15 + <label for="inputFullName" class="col-sm-2 control-label">Full Name</label>
  16 + <div class="col-sm-10">
  17 + <input type="text" class="form-control" id="inputFullName" value="{{ storeuser.FULL_NAME }}" readonly>
  18 + </div>
  19 + </div>
  20 +
  21 + <div class="form-group">
  22 + <label for="inputBalance" class="col-sm-2 control-label">Balance</label>
  23 + <div class="col-sm-10">
  24 + <input type="text" class="form-control" id="inputBalance" value="{{ storeuser.BALANCE }}" readonly>
  25 + </div>
  26 + </div>
  27 +
  28 + <div class="form-group">
  29 + <label for="inputLastWebLogin" class="col-sm-2 control-label">Last Web Login</label>
  30 + <div class="col-sm-10">
  31 + <input type="text" class="form-control" id="inputLastWebLogin" value="{{ storeuser.LAST_WEB_LOGIN }}" readonly>
  32 + </div>
  33 + </div>
  34 +
  35 + <div class="form-group">
  36 + <label for="inputLastTrans" class="col-sm-2 control-label">Last Trans</label>
  37 + <div class="col-sm-10">
  38 + <input type="text" class="form-control" id="inputLastTrans" value="{{ storeuser.LAST_TRANS }}" readonly>
  39 + </div>
  40 + </div>
  41 +
  42 +</form>
  43 +
  44 +{% endblock %}
... ... @@ -41,6 +41,11 @@
41 41 <label for="inputPengisi" class="col-sm-2 control-label">Member ID</label>
42 42 <div class="col-sm-10">
43 43 <input type="text" class="form-control" id="inputPengisi" value="{{ trx.member }}" readonly>
  44 +
  45 + {% if session.isAdmin %}
  46 + <br>
  47 + <a class="btn btn-default" href="/store-users/view/{{ trx.member }}">Lihat data member</a>
  48 + {% endif %}
44 49 </div>
45 50 </div>
46 51