@@ -14,9 +14,11 @@ import (
1414func init () {
1515 userManagementCmd .AddCommand (createUserCmd )
1616 userManagementCmd .AddCommand (deleteUserCmd )
17+ userManagementCmd .AddCommand (disableTotpCmd )
1718 createUserCmd .Flags ().StringP ("username" , "u" , "" , "Username" )
1819 createUserCmd .Flags ().StringP ("password" , "p" , "" , "Password [Optional]" )
1920 deleteUserCmd .Flags ().StringP ("username" , "u" , "" , "Username" )
21+ disableTotpCmd .Flags ().StringP ("username" , "u" , "" , "Username" )
2022}
2123
2224var userManagementCmd = & cobra.Command {
@@ -136,3 +138,34 @@ var deleteUserCmd = &cobra.Command{
136138 printSuccess ("Deleted user > " + username )
137139 },
138140}
141+
142+ var disableTotpCmd = & cobra.Command {
143+ Use : "disable-totp" ,
144+ Short : "Disable Totp for a user" ,
145+ Long : "Disable Totp for a user" ,
146+ Run : func (cmd * cobra.Command , args []string ) {
147+ username := cmd .Flag ("username" ).Value .String ()
148+ if username == "" {
149+ printError ("Username is required" )
150+ err := cmd .Help ()
151+ if err != nil {
152+ return
153+ }
154+ return
155+ }
156+ // Initiating database client
157+ dbClient , err := db .GetClient (config .LocalConfig , 10 )
158+ if err != nil {
159+ printError ("Failed to connect to database" )
160+ return
161+ }
162+ // Disable Totp
163+ err = core .DisableTotp (context .Background (), * dbClient , username )
164+ if err != nil {
165+ printError ("Failed to disable Totp" )
166+ printError ("Reason: " + err .Error ())
167+ return
168+ }
169+ printSuccess ("Disabled Totp for user > " + username )
170+ },
171+ }
0 commit comments