Add notification settings, account deletion, photo reporting, and pending-user photos
Addresses user bug reports: settings pages needed real notification preferences and account deletion, admin needed a way to flag a specific photo independent of deleting it, and the pending-approval users list needed to surface applicant photos for review. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -141,3 +141,25 @@ func (s *ProfileService) CheckIn(user *models.User) (*dto.CheckInResult, error)
|
||||
|
||||
return &dto.CheckInResult{StreakCount: newStreak, IsNewToday: true}, nil
|
||||
}
|
||||
|
||||
// UpdateNotificationSettings ترجیحات اعلان کاربر رو ذخیره میکنه.
|
||||
func (s *ProfileService) UpdateNotificationSettings(user *models.User, req dto.UpdateNotificationSettingsRequest) error {
|
||||
if err := s.userRepo.UpdateFields(user, map[string]interface{}{
|
||||
"notify_matches": req.NotifyMatches,
|
||||
"notify_messages": req.NotifyMessages,
|
||||
"notify_likes": req.NotifyLikes,
|
||||
}); err != nil {
|
||||
return err
|
||||
}
|
||||
user.NotifyMatches = req.NotifyMatches
|
||||
user.NotifyMessages = req.NotifyMessages
|
||||
user.NotifyLikes = req.NotifyLikes
|
||||
return nil
|
||||
}
|
||||
|
||||
// DeleteAccount حساب کاربر رو غیرفعال میکنه (soft) نه پاکسازی کامل رکورد؛
|
||||
// چون مچها/پیامهای طرف مقابل نباید یهو پاره بشن. کاربر غیرفعال دیگه اصلاً
|
||||
// نمیتونه لاگین کنه (چک IsActive توی AuthRequired و AuthService).
|
||||
func (s *ProfileService) DeleteAccount(user *models.User) error {
|
||||
return s.userRepo.UpdateFields(user, map[string]interface{}{"is_active": false})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user