@@ -8,8 +8,9 @@ use error_stack::ResultExt;
8
8
use masking:: ExposeInterface ;
9
9
#[ cfg( feature = "email" ) ]
10
10
use router_env:: env;
11
- #[ cfg( feature = "email" ) ]
12
11
use router_env:: logger;
12
+ #[ cfg( not( feature = "email" ) ) ]
13
+ use user_api:: dashboard_metadata:: SetMetaDataRequest ;
13
14
14
15
use super :: errors:: { StorageErrorExt , UserErrors , UserResponse , UserResult } ;
15
16
#[ cfg( feature = "email" ) ]
@@ -310,6 +311,20 @@ pub async fn change_password(
310
311
. await
311
312
. change_context ( UserErrors :: InternalServerError ) ?;
312
313
314
+ #[ cfg( not( feature = "email" ) ) ]
315
+ {
316
+ state
317
+ . store
318
+ . delete_user_scoped_dashboard_metadata_by_merchant_id_data_key (
319
+ & user_from_token. user_id ,
320
+ & user_from_token. merchant_id ,
321
+ diesel_models:: enums:: DashboardMetadata :: IsChangePasswordRequired ,
322
+ )
323
+ . await
324
+ . map_err ( |e| logger:: error!( "Error while deleting dashboard metadata {}" , e) )
325
+ . ok ( ) ;
326
+ }
327
+
313
328
Ok ( ApplicationResponse :: StatusOk )
314
329
}
315
330
@@ -483,8 +498,8 @@ pub async fn invite_user(
483
498
. insert_user_role ( UserRoleNew {
484
499
user_id : new_user. get_user_id ( ) . to_owned ( ) ,
485
500
merchant_id : user_from_token. merchant_id . clone ( ) ,
486
- role_id : request. role_id ,
487
- org_id : user_from_token. org_id ,
501
+ role_id : request. role_id . clone ( ) ,
502
+ org_id : user_from_token. org_id . clone ( ) ,
488
503
status : invitation_status,
489
504
created_by : user_from_token. user_id . clone ( ) ,
490
505
last_modified_by : user_from_token. user_id ,
@@ -523,6 +538,20 @@ pub async fn invite_user(
523
538
#[ cfg( not( feature = "email" ) ) ]
524
539
{
525
540
is_email_sent = false ;
541
+ let invited_user_token = auth:: UserFromToken {
542
+ user_id : new_user. get_user_id ( ) ,
543
+ merchant_id : user_from_token. merchant_id ,
544
+ org_id : user_from_token. org_id ,
545
+ role_id : request. role_id ,
546
+ } ;
547
+
548
+ let set_metadata_request = SetMetaDataRequest :: IsChangePasswordRequired ;
549
+ dashboard_metadata:: set_metadata (
550
+ state. clone ( ) ,
551
+ invited_user_token,
552
+ set_metadata_request,
553
+ )
554
+ . await ?;
526
555
}
527
556
528
557
Ok ( ApplicationResponse :: Json ( user_api:: InviteUserResponse {
@@ -706,6 +735,17 @@ async fn handle_new_user_invitation(
706
735
#[ cfg( not( feature = "email" ) ) ]
707
736
{
708
737
is_email_sent = false ;
738
+
739
+ let invited_user_token = auth:: UserFromToken {
740
+ user_id : new_user. get_user_id ( ) ,
741
+ merchant_id : user_from_token. merchant_id . clone ( ) ,
742
+ org_id : user_from_token. org_id . clone ( ) ,
743
+ role_id : request. role_id . clone ( ) ,
744
+ } ;
745
+
746
+ let set_metadata_request = SetMetaDataRequest :: IsChangePasswordRequired ;
747
+ dashboard_metadata:: set_metadata ( state. clone ( ) , invited_user_token, set_metadata_request)
748
+ . await ?;
709
749
}
710
750
711
751
Ok ( InviteMultipleUserResponse {
0 commit comments