From e6827d4a7e7794e4fabad9f47b4ff4f1e902446c Mon Sep 17 00:00:00 2001 From: Lanre Adelowo Date: Tue, 18 Sep 2018 14:53:49 +0100 Subject: [PATCH 1/4] add support for an admin to force a user to change his/her password from thee cli --- cmd/admin.go | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/cmd/admin.go b/cmd/admin.go index 047f3befccf28..ba41d8130beed 100644 --- a/cmd/admin.go +++ b/cmd/admin.go @@ -59,6 +59,11 @@ var ( Value: "custom/conf/app.ini", Usage: "Custom configuration file path", }, + cli.StringFlag{ + Name: "must-change-password", + Value: "false", + Usage: "Force the user to change his/her password after initial login", + }, }, } @@ -286,11 +291,12 @@ func runCreateUser(c *cli.Context) error { } if err := models.CreateUser(&models.User{ - Name: c.String("name"), - Email: c.String("email"), - Passwd: c.String("password"), - IsActive: true, - IsAdmin: c.Bool("admin"), + Name: c.String("name"), + Email: c.String("email"), + Passwd: c.String("password"), + IsActive: true, + IsAdmin: c.Bool("admin"), + MustChangePassword: c.Bool("must-change-password"), }); err != nil { return fmt.Errorf("CreateUser: %v", err) } From 938d1f7662f8c1d915994d0f8c155e30bff3e61a Mon Sep 17 00:00:00 2001 From: Lanre Adelowo Date: Tue, 18 Sep 2018 23:29:24 +0100 Subject: [PATCH 2/4] use BoolFlag instead --- cmd/admin.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cmd/admin.go b/cmd/admin.go index ba41d8130beed..07bbcbbb4c86d 100644 --- a/cmd/admin.go +++ b/cmd/admin.go @@ -59,9 +59,8 @@ var ( Value: "custom/conf/app.ini", Usage: "Custom configuration file path", }, - cli.StringFlag{ + cli.BoolFlag{ Name: "must-change-password", - Value: "false", Usage: "Force the user to change his/her password after initial login", }, }, From d2bc4de7a0a9584dfc42f1fb7f8f4c7d924deb42 Mon Sep 17 00:00:00 2001 From: Lanre Adelowo Date: Tue, 18 Sep 2018 23:38:59 +0100 Subject: [PATCH 3/4] default to true --- cmd/admin.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cmd/admin.go b/cmd/admin.go index 07bbcbbb4c86d..8688d2f66f8d0 100644 --- a/cmd/admin.go +++ b/cmd/admin.go @@ -289,13 +289,22 @@ func runCreateUser(c *cli.Context) error { return err } + var changePassword bool + + if c.IsSet("must-change-password") { + changePassword = c.Bool("must-change-password") + } else { + // always default to true + changePassword = true + } + if err := models.CreateUser(&models.User{ Name: c.String("name"), Email: c.String("email"), Passwd: c.String("password"), IsActive: true, IsAdmin: c.Bool("admin"), - MustChangePassword: c.Bool("must-change-password"), + MustChangePassword: changePassword, }); err != nil { return fmt.Errorf("CreateUser: %v", err) } From ddced419d8c62ca3105fbb5fbb9260ad9b59b065 Mon Sep 17 00:00:00 2001 From: Lanre Adelowo Date: Sat, 6 Oct 2018 11:38:24 +0100 Subject: [PATCH 4/4] simplify by removing unnneccessary if/else --- cmd/admin.go | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/cmd/admin.go b/cmd/admin.go index 8688d2f66f8d0..39ea84206b874 100644 --- a/cmd/admin.go +++ b/cmd/admin.go @@ -289,13 +289,11 @@ func runCreateUser(c *cli.Context) error { return err } - var changePassword bool + // always default to true + var changePassword = true if c.IsSet("must-change-password") { changePassword = c.Bool("must-change-password") - } else { - // always default to true - changePassword = true } if err := models.CreateUser(&models.User{