✨ Implement QR-code service request system with Telegram bot integration
🎯 Key Features: - Added QR-code generation for service requests in modal window - Integrated real-time verification via Telegram bot - Implemented animated success confirmation - Added status polling for request verification �� Technical Changes: - Fixed JavaScript syntax errors in modern-scripts.js - Enhanced services_modern.html with QR-code section and success animation - Added check_request_status API endpoint - Improved CSS with success checkmark animations 🎨 UX Improvements: - Centered QR-code display with proper styling - Real-time status checking every 3 seconds - Animated success confirmation only after Telegram verification - Auto-close modal after successful confirmation 📱 Workflow: 1. User fills service request form 2. QR-code generated and displayed 3. User scans QR/clicks Telegram link 4. System polls for verification status 5. Success animation shows after Telegram confirmation 6. Modal auto-closes with notification This completes the modern service request system with Telegram bot integration.
This commit is contained in:
@@ -299,3 +299,19 @@ def complete_registration(request, request_id):
|
||||
return JsonResponse({'status': 'success', 'message': 'Регистрация успешно завершена.'})
|
||||
|
||||
return render(request, 'web/complete_registration.html', {'service_request': service_request})
|
||||
|
||||
|
||||
def check_request_status(request, request_id):
|
||||
"""API endpoint для проверки статуса подтверждения заявки"""
|
||||
try:
|
||||
service_request = get_object_or_404(ServiceRequest, pk=request_id)
|
||||
return JsonResponse({
|
||||
'is_verified': service_request.is_verified,
|
||||
'chat_id': service_request.chat_id,
|
||||
'created_at': service_request.created_at.isoformat() if service_request.created_at else None
|
||||
})
|
||||
except ServiceRequest.DoesNotExist:
|
||||
return JsonResponse({'error': 'Заявка не найдена'}, status=404)
|
||||
except Exception as e:
|
||||
logger.error(f"Ошибка при проверке статуса заявки {request_id}: {str(e)}")
|
||||
return JsonResponse({'error': 'Ошибка сервера'}, status=500)
|
||||
|
||||
Reference in New Issue
Block a user