2019-10-07 08:14:47 -06:00
|
|
|
// Copyright (c) Mainflux
|
2018-08-26 13:15:48 +02:00
|
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
|
2018-05-10 23:53:25 +02:00
|
|
|
package http
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
"github.com/go-kit/kit/endpoint"
|
|
|
|
"github.com/mainflux/mainflux/users"
|
|
|
|
)
|
|
|
|
|
|
|
|
func registrationEndpoint(svc users.Service) endpoint.Endpoint {
|
2019-07-18 15:01:09 +02:00
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
2018-05-10 23:53:25 +02:00
|
|
|
req := request.(userReq)
|
|
|
|
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2019-07-18 15:01:09 +02:00
|
|
|
err := svc.Register(ctx, req.user)
|
2018-05-10 23:53:25 +02:00
|
|
|
return tokenRes{}, err
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
MF-532 - Password reset (#873)
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize mailing code
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add comments for password reset flow
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add comments for password reset flow
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change struct members to private
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix imports and some typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix imports and some typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint token and mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token env
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token env
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix error reporting
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problmes due merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problmes due merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add trusted certificates
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add endpoint for password change of currently authenticated user
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env variable for conf reset endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env variable for conf reset endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving some style comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* minor fixes due to bad merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problem with unsigned commits
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problem with unsigned commits
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix call to users.New
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix call to users.New
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* rename file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* rename to email.go
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* additional comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* additional comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove debug bin
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add driver conf for mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix failing tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add testify
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token conf
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* configurable email template
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix missing var
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env for email template file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env for email template file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert to master
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove dev container
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fixes, typos, namings
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typo
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add line
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* return err from email New()
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change MF_TOKEN_RESET_ENDPOINT
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add and remove env vars
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* separate password logic into two methods Change and Reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove blank line
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update docs
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* dont use camel case
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize email template for passw reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize email template for passw reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
2019-10-22 14:53:14 +02:00
|
|
|
// Password reset request endpoint.
|
|
|
|
// When successful password reset link is generated.
|
|
|
|
// Link is generated using MF_TOKEN_RESET_ENDPOINT env.
|
|
|
|
// and value from Referer header for host.
|
|
|
|
// {Referer}+{MF_TOKEN_RESET_ENDPOINT}+{token=TOKEN}
|
|
|
|
// http://mainflux.com/reset-request?token=xxxxxxxxxxx.
|
|
|
|
// Email with a link is being sent to the user.
|
|
|
|
// When user clicks on a link it should get the ui with form to
|
|
|
|
// enter new password, when form is submitted token and new password
|
|
|
|
// must be sent as PUT request to 'password/reset' passwordResetEndpoint
|
|
|
|
func passwordResetRequestEndpoint(svc users.Service) endpoint.Endpoint {
|
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
|
|
|
req := request.(passwResetReq)
|
|
|
|
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
res := passwChangeRes{}
|
|
|
|
email := req.Email
|
|
|
|
|
|
|
|
if err := svc.GenerateResetToken(ctx, email, req.Host); err != nil {
|
|
|
|
res.Msg = err.Error()
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
res.Msg = MailSent
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// This is endpoint that actually sets new password in password reset flow.
|
|
|
|
// When user clicks on a link in email finally ends on this endpoint as explained in
|
|
|
|
// the comment above.
|
|
|
|
func passwordResetEndpoint(svc users.Service) endpoint.Endpoint {
|
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
|
|
|
req := request.(resetTokenReq)
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
res := passwChangeRes{}
|
|
|
|
|
|
|
|
if err := svc.ResetPassword(ctx, req.Token, req.Password); err != nil {
|
|
|
|
res.Msg = err.Error()
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
res.Msg = ""
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2019-09-28 11:15:41 +00:00
|
|
|
func userInfoEndpoint(svc users.Service) endpoint.Endpoint {
|
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
|
|
|
req := request.(viewUserInfoReq)
|
|
|
|
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
u, err := svc.UserInfo(ctx, req.token)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
return identityRes{u.Email, u.Metadata}, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
MF-532 - Password reset (#873)
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token methods
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* token and passwd update logic
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize mailing code
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add comments for password reset flow
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add comments for password reset flow
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change struct members to private
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix imports and some typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix imports and some typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding swagger docs for reset passw
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding test for endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change token generation
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize and change token gen
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint token and mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token env
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token env
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix error reporting
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problmes due merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problmes due merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typos
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add trusted certificates
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add endpoint for password change of currently authenticated user
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env variable for conf reset endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add metadata to users
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add default value for metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* when metadata is not set dont save 'null' string
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change metadata type, add error handling
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove extra char
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* few small fixes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix identityRes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add users metadata
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* password reset, sketching
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reset request endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding token endpoints
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding reset passw endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add logic for token verifying
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove mail from main
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small changes
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add space
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert back changes used for testing
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize endpoints, extract host for link from Referer
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* addint test and update swagger for pass reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* adding endpoint test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix some comments and update readme
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env variable for conf reset endpoint
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving some style comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* minor fixes due to bad merge
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problem with unsigned commits
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix problem with unsigned commits
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix call to users.New
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix call to users.New
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* rename file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* rename to email.go
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* additional comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* additional comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email util
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove debug bin
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add driver conf for mail
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* refactor email
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix failing tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add testify
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add token conf
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* configurable email template
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix missing var
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env for email template file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add env for email template file
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix tests
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix test
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* revert to master
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove dev container
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fixes, typos, namings
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* fix typo
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* resolving comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add line
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* return err from email New()
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* change MF_TOKEN_RESET_ENDPOINT
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* add and remove env vars
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* separate password logic into two methods Change and Reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update comments
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* remove blank line
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* update docs
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* dont use camel case
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* small fix
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize email template for passw reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
* reorganize email template for passw reset
Signed-off-by: Mirko Teodorovic <mirko.teodorovic@gmail.com>
2019-10-22 14:53:14 +02:00
|
|
|
func passwordChangeEndpoint(svc users.Service) endpoint.Endpoint {
|
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
|
|
|
req := request.(passwChangeReq)
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
res := passwChangeRes{}
|
|
|
|
|
|
|
|
if err := svc.ChangePassword(ctx, req.Token, req.Password, req.OldPassword); err != nil {
|
|
|
|
res.Msg = err.Error()
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
|
|
|
|
return res, nil
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2018-05-10 23:53:25 +02:00
|
|
|
func loginEndpoint(svc users.Service) endpoint.Endpoint {
|
2019-07-18 15:01:09 +02:00
|
|
|
return func(ctx context.Context, request interface{}) (interface{}, error) {
|
2018-05-10 23:53:25 +02:00
|
|
|
req := request.(userReq)
|
|
|
|
|
|
|
|
if err := req.validate(); err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
2019-07-18 15:01:09 +02:00
|
|
|
token, err := svc.Login(ctx, req.user)
|
2018-05-10 23:53:25 +02:00
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
|
|
|
|
return tokenRes{token}, nil
|
|
|
|
}
|
|
|
|
}
|