Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict'
- // add to the top of the file
- const User = use('App/Models/User')
- const { validate } = use('Validator')
- var Web3 = require("web3")
- const mainnet = 'http://127.0.0.1:7545';
- let web3 = new Web3(new Web3.providers.HttpProvider(mainnet));
- class UserController {
- web3Running () {
- web3.eth.personal.newAccount(password)
- .then(data => {
- console.log('Success: ' + data)
- })
- }
- async signup({request, response, auth}) {
- // validate form input
- const validation = await validate(request.all(), {
- email: 'required|email:unique:users',
- username: 'required|unique:users',
- password: 'required'
- })
- // show error messages upon validation fail
- if (validation.fails()) {
- return response.send(validation.messages())
- }
- const user = new User()
- user.email = request.input('email')
- user.username = request.input('username')
- user.password = request.input('password')
- // saving the user data
- await user.save()
- const address = await web3.eth.personal.newAccount(user.password, callback)
- console.log(address)
- // generate JWT token for user
- const token = await auth.generate(user)
- return response.json({
- message: 'Successfully',
- data: token
- })
- }
- async signin({request, response, auth}) {
- try {
- const parameter = request.only(['email', 'password'])
- if (!parameter) {
- return response.status(404).json({data: 'Resource not found'})
- }
- const token = await auth.attempt(parameter.email, parameter.password)
- return response.json({
- token: token
- })
- } catch(err) {
- return response.status(400).json({
- status: 'error',
- message: 'Problem occured while trying to sigin. Please try again.'
- })
- }
- }
- }
- module.exports = UserController
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement