CURRENCY BUYER USER MANUAL

User Manual: Pdf

Open the PDF directly: View PDF PDF.
Page Count: 11

DownloadCURRENCY BUYER USER MANUAL
Open PDF In BrowserView PDF
2018

CURRENCY BUYER USER
MANUAL
MUKURU TECHNICAL TEST
JACQUES ARTGRAVEN

jacques artgraven

CURRENCY BUYER USER MANUAL

Contents
Login and registration ............................................................................................................................. 2
Navigation ............................................................................................................................................... 3
Dashboard ............................................................................................................................................... 3
Update Currency ................................................................................................................................. 4
User management table ..................................................................................................................... 4
Buyer Dashboard .................................................................................................................................... 5
Transaction History ................................................................................................................................. 8
Mail Confirmation ................................................................................................................................... 8
Closing Notes .......................................................................................................................................... 9

jacques artgraven

CURRENCY BUYER USER MANUAL

Login and registration
The public is able to register or login if they already have an account. But a user must be registered
before they can login and purchase any currency.
We automatically award a new user with 100 credits in usd

In our first screen we can either login or we can recover our password or create a new account
When registering you will automatically be logged in

jacques artgraven

CURRENCY BUYER USER MANUAL

Navigation

When logged in as an admin I see a number of additional options not seen by normal users

Currency Buyer and Transaction history is the same for both user levels but the difference being
Transaction History for a normal user shows only his or her transaction history and for admin will
show all

Dashboard

The admin dashboard has 2 key features

jacques artgraven

CURRENCY BUYER USER MANUAL

Update Currency
This will do a run to the jsonrates api and get the current rates. It will either insert ones that don’t
exist or update existing ones.

User management table
Note that all tables in the system has the ability to filter as well as export or print.
There are 2 essential features here
•

•

Impersonate
o The ability to impersonate the user and act on their behalf
o Remember to exit impersonation when done
Edit User/Wallet
o The ability to modify funds in the users wallet as well as update details to their
profile such as name, surname and so on

Manage Rates – admin only
This is a screen that shows all the current rates pulled from the api but allows us to update them
with their rules

In the edit form for rates we can

jacques artgraven

CURRENCY BUYER USER MANUAL

Over write and update
•
•
•
•

Surcharge
Exhange rate
Notify – whether a mail gets sent out as confirmation or not
And the discount rate

Buyer Dashboard
the buyers dashboard allows the same data table we are already familiar with but now has the
features of gettting a quote for the currency to usd and currency for usd

jacques artgraven

CURRENCY BUYER USER MANUAL

Once I enter a value in either field

I press get quote for the quote
Which will create a modal popup with the option to cancel or confirm the transaction

Please note you must have enough funds in your wallet or it wont let you proceed

jacques artgraven

CURRENCY BUYER USER MANUAL

if I have enough funds and I press the confirm we will pass this to the transaction controller
and if all is well there we will be redirected to our confirmation page
please note the quote generated at first is based on the exhange rate
but the invoice following is the final amount after discounts and surcharges have been applied as
it will be outlined in the table.

jacques artgraven

CURRENCY BUYER USER MANUAL

Transaction History
This is a table view of all my transactions in the past. Each one with a link to the original invoice

Mail Confirmation
Note that if the currency had a yes for notify then I will receive a mail

jacques artgraven

CURRENCY BUYER USER MANUAL

Which looks like this

Closing Notes
Unfortunantly due to limited time I was unable to get to some of the components.
The calculations on surcharge isnt right yet
I would have loved to do a lot more testing
As to the api part. I didn’t write a full fledged api but simply used serialization to output json and
used ajax calls to run to process that in the front.
Ideally I would have added an authentication key based on the user id and salt and written a method
to verify this then added a page outlining the calls and their paramaters. I would however have used
a library to help read my comments or fosRestBundle to help me do this and deal with cross site
scripting issues
I added simple rules for methods such as post delete and get but these can be much more refined.
Given the simplicity of the application I didn’t do a database diagram and instead used an orm that
makes the logic pretty readable but a visual view would be useful if I had to share this with a team
More commenting. I had added some good commenting but I would have liked to do more
I would have used googles location api and added the address as part of the registration and used
that to determine the currency based on the address
I would have added more validation, such as forcing numbers only where needed and handling
transactions notifications when we the wallet goes into arrears.
Next I started writing a console application to run the currency update in doing this I would have
converted the current call out of the controller and into a service object that I could call from there.

jacques artgraven

CURRENCY BUYER USER MANUAL
It has been added and you can see it if you run: bin/console currency:update
Right now it will log out that it worked but it wont actually do anything as I didn’t have time to
implement the service object.

When deploying it I would have implemented a better deployment strategy and I would have locked
down the javascript and css files permissions from writing to avoid js/agent attacks



Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.7
Linearized                      : No
Page Count                      : 11
Language                        : en-ZA
Tagged PDF                      : Yes
XMP Toolkit                     : 3.1-701
Producer                        : Microsoft® Word 2016
Title                           : CURRENCY BUYER USER MANUAL
Creator                         : jacques artgraven
Description                     : MUKURU TECHNICAL TEST
Creator Tool                    : Microsoft® Word 2016
Create Date                     : 2018:02:25 13:11:59+02:00
Modify Date                     : 2018:02:25 13:11:59+02:00
Document ID                     : uuid:80B4C0AF-8752-4CCA-9C7D-AFCB14F366FA
Instance ID                     : uuid:80B4C0AF-8752-4CCA-9C7D-AFCB14F366FA
Author                          : jacques artgraven
Subject                         : MUKURU TECHNICAL TEST
EXIF Metadata provided by EXIF.tools

Navigation menu