diff --git a/.claude/settings.local.json b/.claude/settings.local.json index ab4d209..e15664b 100644 --- a/.claude/settings.local.json +++ b/.claude/settings.local.json @@ -23,7 +23,8 @@ "Bash(dotnet remove package:*)", "Bash(dotnet restore:*)", "Bash(rg:*)", - "Bash(dotnet test:*)" + "Bash(dotnet test:*)", + "Bash(cp:*)" ], "deny": [] } diff --git a/Controllers/HomeController.cs b/Controllers/HomeController.cs index 170b1dc..752fbf1 100644 --- a/Controllers/HomeController.cs +++ b/Controllers/HomeController.cs @@ -50,11 +50,31 @@ namespace QRRapidoApp.Controllers public IActionResult Privacy() { + var userId = User?.FindFirst(ClaimTypes.NameIdentifier)?.Value; + + ViewBag.ShowAds = _adDisplayService.ShouldShowAds(userId).Result; + ViewBag.IsPremium = _adDisplayService.HasValidPremiumSubscription(userId ?? "").Result; + ViewBag.IsAuthenticated = User.Identity?.IsAuthenticated ?? false; + ViewBag.UserName = User.Identity?.Name ?? ""; + + ViewBag.Title = _localizer["PrivacyPolicyTitle"]; + ViewBag.Description = _localizer["PrivacyPolicyDescription"]; + return View(); } public IActionResult Terms() { + var userId = User?.FindFirst(ClaimTypes.NameIdentifier)?.Value; + + ViewBag.ShowAds = _adDisplayService.ShouldShowAds(userId).Result; + ViewBag.IsPremium = _adDisplayService.HasValidPremiumSubscription(userId ?? "").Result; + ViewBag.IsAuthenticated = User.Identity?.IsAuthenticated ?? false; + ViewBag.UserName = User.Identity?.Name ?? ""; + + ViewBag.Title = _localizer["TermsOfUseTitle"]; + ViewBag.Description = _localizer["TermsOfUseDescription"]; + return View(); } @@ -117,6 +137,18 @@ namespace QRRapidoApp.Controllers weekly 0.8 + + https://qrrapido.site/privacy + {DateTime.UtcNow:yyyy-MM-dd} + monthly + 0.5 + + + https://qrrapido.site/terms + {DateTime.UtcNow:yyyy-MM-dd} + monthly + 0.5 + "; return Content(sitemap, "application/xml"); diff --git a/Middleware/LanguageRedirectionMiddleware.cs b/Middleware/LanguageRedirectionMiddleware.cs index da85db6..45b9cd2 100644 --- a/Middleware/LanguageRedirectionMiddleware.cs +++ b/Middleware/LanguageRedirectionMiddleware.cs @@ -6,7 +6,7 @@ namespace QRRapidoApp.Middleware { private readonly RequestDelegate _next; private readonly ILogger _logger; - private readonly string[] _supportedCultures = { "pt-BR", "es", "en" }; + private readonly string[] _supportedCultures = { "pt-BR", "es-PY", "es" }; private const string DefaultCulture = "pt-BR"; public LanguageRedirectionMiddleware(RequestDelegate next, ILogger logger) @@ -99,6 +99,13 @@ namespace QRRapidoApp.Middleware // Check language part only (e.g., 'es' from 'es-AR') var languagePart = langCode.Split('-')[0]; + + // Map 'es' to 'es-PY' specifically + if (string.Equals(languagePart, "es", StringComparison.OrdinalIgnoreCase)) + { + return "es-PY"; + } + var matchingCulture = _supportedCultures.FirstOrDefault(c => c.StartsWith(languagePart + "-") || c == languagePart); if (matchingCulture != null) { diff --git a/Program.cs b/Program.cs index dfa2752..8bbdd5f 100644 --- a/Program.cs +++ b/Program.cs @@ -8,6 +8,7 @@ using Microsoft.Extensions.Localization; using MongoDB.Driver; using QRRapidoApp.Data; using QRRapidoApp.Middleware; +using QRRapidoApp.Providers; using QRRapidoApp.Services; using QRRapidoApp.Services.Monitoring; using QRRapidoApp.Services.HealthChecks; @@ -157,19 +158,20 @@ builder.Services.Configure(options => var supportedCultures = new[] { new CultureInfo("pt-BR"), - new CultureInfo("es-PY") + new CultureInfo("es-PY"), + new CultureInfo("es") }; options.DefaultRequestCulture = new RequestCulture("pt-BR", "pt-BR"); options.SupportedCultures = supportedCultures; options.SupportedUICultures = supportedCultures; - options.FallBackToParentCultures = true; - options.FallBackToParentUICultures = true; + options.FallBackToParentCultures = false; + options.FallBackToParentUICultures = false; // Clear default providers and add custom ones in priority order options.RequestCultureProviders.Clear(); - options.RequestCultureProviders.Add(new RouteDataRequestCultureProvider()); + options.RequestCultureProviders.Add(new CustomRouteDataRequestCultureProvider()); options.RequestCultureProviders.Add(new QueryStringRequestCultureProvider()); options.RequestCultureProviders.Add(new CookieRequestCultureProvider()); }); @@ -237,11 +239,11 @@ app.UseMiddleware(); app.UseRouting(); -app.UseCors("AllowSpecificOrigins"); - -// Localization middleware +// Localization middleware (after routing so route data is available) app.UseRequestLocalization(); +app.UseCors("AllowSpecificOrigins"); + app.UseAuthentication(); app.UseAuthorization(); @@ -266,7 +268,7 @@ app.MapHealthChecks("/health"); // Language routes (must be first) app.MapControllerRoute( name: "localized", - pattern: "{culture:regex(^(pt-BR|es-PY)$)}/{controller=Home}/{action=Index}/{id?}"); + pattern: "{culture:regex(^(pt-BR|es-PY|es)$)}/{controller=Home}/{action=Index}/{id?}"); // API routes app.MapControllerRoute( diff --git a/Providers/CustomRouteDataRequestCultureProvider.cs b/Providers/CustomRouteDataRequestCultureProvider.cs new file mode 100644 index 0000000..e6d1d1a --- /dev/null +++ b/Providers/CustomRouteDataRequestCultureProvider.cs @@ -0,0 +1,27 @@ +using Microsoft.AspNetCore.Localization; + +namespace QRRapidoApp.Providers +{ + public class CustomRouteDataRequestCultureProvider : IRequestCultureProvider + { + public Task DetermineProviderCultureResult(HttpContext httpContext) + { + var routeValues = httpContext.GetRouteData()?.Values; + if (routeValues != null && routeValues.TryGetValue("culture", out var cultureValue)) + { + var culture = cultureValue?.ToString(); + if (!string.IsNullOrEmpty(culture)) + { + // Map the supported cultures + var supportedCultures = new[] { "pt-BR", "es-PY" }; + if (supportedCultures.Contains(culture)) + { + return Task.FromResult(new ProviderCultureResult(culture, culture)); + } + } + } + + return Task.FromResult(null); + } + } +} \ No newline at end of file diff --git a/Resources/SharedResource.es-PY.resx b/Resources/SharedResource.es-PY.resx index a9afb29..a16e70c 100644 --- a/Resources/SharedResource.es-PY.resx +++ b/Resources/SharedResource.es-PY.resx @@ -117,101 +117,872 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ¡Genera códigos QR en segundos! + ¡Japo código QR pya'épe! (Genera códigos QR en segundos) - - Contenido es obligatorio + + Japo Código QR (Generar) - - Contenido muy largo. Máximo 4000 caracteres. + + Mba'éichapa código QR (Tipo) - - Estilos de borde personalizados son exclusivos del plan Premium. Actualiza para usar esta funcionalidad. + + Mba'e oĩva (Contenido) - - Límite de códigos QR alcanzado + + URL/Enlace - - Logo personalizado es exclusivo del plan Premium. Actualiza para usar esta funcionalidad. + + Texto Simple - - Logo muy grande. Máximo 2MB. + + WiFi ñanduti - - Formato inválido. Usa PNG o JPG. + + Tarjeta mba'eichaguáva (de Visita) - - Perfil del Usuario + + SMS - - Historial de Códigos QR + + Email - - Error al guardar en el historial. + + QR Dinamico (Premium) - - Función no disponible + + Estilo pya'e (Rápido) - - ¡Código QR guardado en el historial! + + Ymave (Clásico) - - Error al compartir. Intenta otro método. + + Ko'ãgagua (Moderno) - - ¡Enlace copiado al portapapeles! + + Sa'ygua (Colorido) - - Ingresa el contenido del código QR + + Emoĩ ne código QR mba'e ko'ápe... (Ingrese el contenido aquí) - - Contenido debe tener al menos 3 caracteres + + Ñemohenda porãve (Personalización Avanzada) - - Error en la validación del VCard: + + Sa'y tuichavéva (Color Principal) - - Código QR generado con QR Rapido - ¡el generador más rápido de Paraguay! + + Sa'y hugua (Color de Fondo) - - QR Rapido: ¡Genera códigos QR en segundos! Generador ultra-rápido en español y portugués. Gratis, sin registro obligatorio. 30 días sin anuncios después del login. + + Tuicha (Tamaño) - - Logo no proporcionado + + Opa'ĩ (Margen) - - Logo muy pequeño. Mínimo 32x32 píxeles. + + Ta'anga/Ícono - - Formato de imagen inválido + + Estilo de Esquinas - - Error al procesar logo. + + Japo Código QR pya'épe (Generar Rápidamente) - - Eliminar Código QR + + Hecha tenondegua (Vista Previa) - - Confirmar Eliminación + + Ne código QR ojekuaa ko'ápe segundos pype (aparecerá aquí en segundos) - - ¿Estás seguro de que quieres eliminar este código QR de tu historial? + + Generacion ultra-rapida garantizada - - + + Descargar PNG - - No + + Descargar SVG (Vectorial) - - ¡Código QR eliminado exitosamente! + + Descargar PDF - - Error al eliminar código QR. Inténtalo de nuevo. + + Guardar en Historial - - Eliminando + + Inicie sesion para guardar en el historial + + + QR Rápido Premium (Porã) + + + Ñe'ẽ pya'épe (Consejos para QR Más Rápidos) + + + URLs cortas se generan mas rapido + + + Menos texto = mayor velocidad + + + Colores solidos optimizan el proceso + + + Tamanos menores aceleran la descarga + + + Iniciar Sesion + + + Iniciar con + + + Google + + + Microsoft + + + Desbloquea todas las funciones premium! + + + Jeporu porã! (Oferta Premium!) + + + Elimina anuncios, accede a analisis detallados y mucho mas por solo $12.90/mes o $129.00/ano. Inicia sesion y suscribete ahora! + + + Politica de Privacidad + + + Volver al generador + + + Generado en + + + s + + + Generacion ultra rapida! + + + Generacion rapida! + + + Generacion normal + + + Osẽ vai - Ha'e jéy (Error - Inténtalo de nuevo) + + + Ñongatu porã! Código QR guardado en el historial! + + + Crear Codigo QR Rapidamente + + + Usuario Premium Activo + + + Sin Anuncios • Historial • QR Ilimitado + + + Ilimitado hoy + + + Codigos QR restantes + + + Tipo de Codigo QR + + + Seleccionar tipo + + + URL/Enlace + + + Texto Simple + + + Tarjeta de Visita + + + QR Dinamico (Premium) + + + Ingrese el contenido de su codigo QR aqui... + + + Sugerencias de contenido + + + Clasico + + + Moderno + + + Colorido + + + Rede WPA (a mais comum) + + + WEP (muito antigo) + + + Sin contrasenha + + + Acelera tu productividad con el generador de QR más rápido del mundo + + + 3x más rápido que la competencia + + + Estado Actual + + + Tienes + + + días restantes sin anuncios. + + + ¡Actualiza ahora y ten acceso premium para siempre! + + + días restantes + + + El plan más popular + + + por mes + + + Códigos QR ilimitados + + + Generación ultra-rápida (0.4s) + + + Sin anuncios para siempre + + + Códigos QR dinámicos + + + Analítica en tiempo real + + + Soporte prioritario + + + API para desarrolladores + + + Actualizar Ahora + + + Pago seguro via Stripe + + + Cancela cuando quieras + + + Comparación de Planes + + + Función + + + Códigos QR por día + + + Ilimitado + + + Velocidad de generación + + + Anuncios + + + Sin anuncios + + + Analítica detallada + + + Demostración de Velocidad + + + Competidores + + + Tiempo promedio + + + ¡11x más rápido! + + + Preguntas Frecuentes + + + ¿Puedo cancelar en cualquier momento? + + + ¡Sí! Puedes cancelar tu suscripción en cualquier momento. No hay tarifas de cancelación y mantendrás el acceso premium hasta el final del período ya pagado. + + + ¿Qué son los códigos QR dinámicos? + + + Los códigos QR dinámicos te permiten cambiar el contenido del QR después de que haya sido creado, sin necesidad de generar un nuevo código. Perfecto para campañas de marketing y uso empresarial. + + + ¿Cómo funciona el soporte prioritario? + + + Los usuarios premium reciben respuesta en hasta 2 horas hábiles por email, acceso al chat directo y soporte técnico especializado. + + + Error al procesar el pago: + + + Error al procesar el pago. Inténtalo de nuevo. + + + Publicidad + + + ✨ Usuario Premium - ¡Sin anuncios! + + + ¡Actualiza a Premium y elimina los anuncios! + + + Premium: Sin anuncios + Historial + QR ilimitados + + + Inicia sesión con tu cuenta y obtén: + + + 30 días sin anuncios + + + 50 códigos QR/día + + + Historial de códigos QR + + + Iniciar con Google + + + Iniciar con Microsoft + + + ¡Oferta Especial! + + + Al iniciar sesión, obtienes automáticamente + + + y puedes generar hasta + + + gratuitamente. + + + No te registramos sin tu permiso. + + + Política de Privacidad + + + ¡Jehepy porã! (Pago exitoso!) + + + Volver al Inicio + + + Pago cancelado. + + + Ver Planes + + + Desbloquea el Poder Total de QRRápido + + + Acceso sin límites, sin anuncios y con recursos exclusivos para máxima productividad. + + + Plan Mensual + + + Ideal para comenzar a explorar las funciones premium. + + + Suscribirse Ahora + + + Plan Anual + + + Recomendado + + + /año + + + Ahorra $ + + + La mejor relación calidad-precio para usuarios frecuentes. + + + Suscribirse al Plan Anual + + + Todos los planes incluyen: + + + Redirigiendo... + + + Ocurrió un error al iniciar el pago. Inténtalo de nuevo. + + + Tus códigos QR generados se guardan aquí para descarga futura + + + Generar Nuevo Código QR + + + Tipo: + + + Creado el: + + + Mostrando los 50 códigos QR más recientes. Los más antiguos se eliminan automáticamente. + + + Ningún Código QR encontrado + + + Cuando generes códigos QR estando conectado, aparecerán aquí para descarga futura. + + + Generar Primer Código QR + + + Error al regenerar el Código QR. Inténtalo de nuevo. + + + Pequeño (200px) + + + Mediano (300px) + + + Grande (500px) + + + XL (800px) + + + Mínimo + + + Grande + + + Logo/Icono + + + PNG, JPG hasta 2MB + + + Estilo de Bordes + + + Cuadrado + + + Redondeado + + + Circular + + + Hoja + + + Japo Código QR pya'épe (Generar Rápidamente) + + + Generando... + + + Disponibilidad + + + QRs generados hoy + + + Tu código QR aparecerá aquí en segundos + + + Generación ultra-rápida garantizada + + + Descargar SVG (Vectorial) + + + Compartir Código QR + + + Compartir (Sistema) + + + para guardar en el historial + + + Generación prioritaria (0.4s) + + + Acelerar por $19.90/mes + + + Primero, elige el tipo de código QR + + + 🌐 Para generar QR de URL, ingresa la dirección completa (ej: https://google.com) + + + 👤 Para tarjeta de visita, completa nombre, teléfono y email en los campos + + + 📶 Para WiFi, ingresa nombre de red, contraseña y tipo de seguridad + + + 💬 Para SMS, ingresa el número del destinatario y el mensaje + + + 📧 Para email, completa destinatario, asunto y mensaje (opcional) + + + 📝 Para texto libre, ingresa cualquier contenido que desees + + + Ñe'ẽ pya'épe ha porãve (Consejos para QR Más Rápidos) + + + URL mbykymi ojejapo pya'eve (URLs cortas se generan más rápido) + + + Michĩve jehai = pya'eve (Menos texto = mayor velocidad) + + + Sa'y hũ omoporãve tembiapo (Colores sólidos optimizan el proceso) + + + Michĩve tuicha omboguata descarga (Tamaños menores aceleran la descarga) + + + Mba'ére QR Rápido pya'eve? (¿Por qué es más rápido?) + + + Comparación con otros generadores populares + + + Optimizado para velocidad + + + Competidor A + + + Generador tradicional + + + Competidor B + + + Interfaz pesada + + + Competidor C + + + Muchos anuncios + + + promedio + + + Generar Código QR + + + Perfil + + + Historial + + + Premium hendyva (Activo) + + + Salir + + + ¡Iniciar sesión = 30 días sin anuncios! + + + El generador de QR más rápido de la web + + + Promedio de + + + 1.2 segundos + + + por código QR • Rei rehe (Gratis) • Sin registro obligatorio + + + El generador de códigos QR pya'eve (ás rápido) de la web. Rei rehe (Gratis), seguro y confiable. + + + Enlaces Útiles + + + Términos de Uso + + + Soporte + + + Ayuda + + + Todos los derechos reservados. + + + Códigos QR restantes hoy + + + ¡Límite diario alcanzado! Inicia sesión para acceso ilimitado. + + + Usuarios anónimos: 3 códigos QR por día + + + Política de Privacidad - QR Rapido + + + Conocé nuestra política de privacidad y cómo protegemos tus datos personales en QR Rapido. + + + Última actualización + + + Esta Política de Privacidad describe cómo QR Rapido ("nosotros", "nuestro" o "nuestra") recolecta, usa y protege la información que proporcionás cuando usás nuestro servicio de generación de códigos QR. + + + 1. Recolección de Datos + + + Recolectamos la siguiente información: + +• Datos de autenticación vía Google/Microsoft (nombre, email, foto de perfil) +• Contenido de los códigos QR generados (solo para usuarios registrados que eligen guardar en el historial) +• Datos de uso y estadísticas anónimas para mejorar nuestro servicio +• Información de pago procesada vía Stripe (no almacenamos datos de tarjeta) + + + 2. Uso de los Datos + + + Utilizamos tus datos para: + +• Proporcionar y mejorar nuestro servicio de generación de códigos QR +• Mantener tu historial de códigos QR (solo si elegís guardarlos) +• Procesar pagos de suscripciones premium +• Enviar comunicaciones relacionadas al servicio +• Cumplir obligaciones legales conforme a las leyes de protección de datos + + + 3. Protección de los Datos + + + Implementamos medidas de seguridad técnicas y organizacionales adecuadas para proteger tus datos personales contra acceso no autorizado, alteración, divulgación o destrucción, incluyendo: + +• Cifrado SSL/TLS en todas las comunicaciones +• Almacenamiento seguro en servidores protegidos +• Control de acceso restringido a los datos +• Monitoreo continuo de seguridad + + + 4. Compartir Datos + + + No vendemos, alquilamos ni compartimos tus datos personales con terceros, excepto: + +• Con proveedores de servicios esenciales (Google, Microsoft, Stripe) para autenticación y pagos +• Cuando sea requerido por ley u orden judicial +• Para proteger nuestros derechos legales y la seguridad de los usuarios + + + 5. Tus Derechos + + + De acuerdo con las leyes de protección de datos, tenés derecho a: + +• Acceder a tus datos personales +• Corregir datos incompletos o incorrectos +• Solicitar la eliminación de datos innecesarios +• Revocar consentimiento para tratamiento de datos +• Portabilidad de tus datos + + + 6. Cookies y Tecnologías Similares + + + Utilizamos cookies esenciales para el funcionamiento del sitio y análisis de tráfico vía Google Analytics. Podés gestionar tus preferencias de cookies en la configuración de tu navegador. + + + 7. Contacto + + + Para consultas sobre esta Política de Privacidad o ejercer tus derechos, contactanos a través del email: contato@qrrapido.site + + + Términos de Uso - QR Rapido + + + Leé los términos y condiciones de uso de QR Rapido, el generador de códigos QR más rápido de América Latina. + + + Última actualización + + + Estos Términos de Uso ("Términos") rigen el uso del servicio QR Rapido ("Servicio") proporcionado por nuestra empresa ("nosotros", "nuestro" o "nuestra"). Al usar nuestro Servicio, aceptás estos Términos. + + + 1. Aceptación de los Términos + + + Al acceder y usar QR Rapido, declarás tener al menos 18 años de edad o poseer autorización de padres/responsables, y aceptás cumplir estos Términos y todas las leyes aplicables. + + + 2. Descripción del Servicio + + + QR Rapido es un servicio online gratuito de generación de códigos QR que ofrece: + +• Generación rápida de códigos QR para diversos tipos de contenido +• Versión gratuita con limitaciones diarias +• Plan Premium con recursos avanzados e ilimitados +• Historial de códigos para usuarios registrados + + + 3. Responsabilidades del Usuario + + + Te comprometés a: + +• Usar el servicio únicamente para fines legales y éticos +• No generar códigos QR con contenido ofensivo, ilegal o que infrinja derechos de terceros +• No intentar comprometer la seguridad o disponibilidad del servicio +• Mantener la confidencialidad de tus credenciales de acceso + + + 4. Usos Prohibidos + + + Está prohibido usar el servicio para: + +• Diseminar malware, phishing o enlaces maliciosos +• Violación de derechos de autor o propiedad intelectual +• Spam, acoso o actividades fraudulentas +• Actividades que violen leyes nacionales o internacionales + + + 5. Propiedad Intelectual + + + Todos los derechos sobre el software, diseño, marca y contenido de QR Rapido pertenecen a nuestra empresa. Los códigos QR generados son de tu propiedad, pero nos concedés licencia para almacenarlos según sea necesario para proporcionar el servicio. + + + 6. Limitaciones del Servicio + + + • Usuarios gratuitos tienen límite diario de códigos QR +• Nos reservamos el derecho de modificar o interrumpir el servicio temporalmente +• No garantizamos disponibilidad 100% del tiempo +• Podemos implementar medidas técnicas para prevenir abuso + + + 7. Pagos y Suscripciones + + + • Suscripciones Premium son procesadas vía Stripe +• Pagos son recurrentes hasta cancelación +• Reembolsos siguen nuestra política de 7 días +• Precios pueden ser alterados mediante aviso previo de 30 días + + + 8. Limitación de Responsabilidad + + + El servicio se proporciona "como está". No nos responsabilizamos por: + +• Daños directos o indirectos derivados del uso del servicio +• Pérdida de datos o interrupción de negocios +• Uso inadecuado de los códigos QR generados por terceros +• Contenido accedido a través de los códigos QR + + + 9. Modificaciones de los Términos + + + Podemos actualizar estos Términos periódicamente. Cambios significativos serán comunicados por email o aviso en el sitio. El uso continuado después de los cambios constituye aceptación de los nuevos Términos. + + + 10. Ley Aplicable + + + Estos Términos se rigen por las leyes aplicables en cada jurisdicción. Las disputas serán resueltas en los tribunales competentes de cada país, sin perjuicio a tu derecho de acceso a los órganos de defensa del consumidor. + + + 11. Contacto + + + Para dudas sobre estos Términos de Uso, contactanos: contato@qrrapido.site + + + Volver al Inicio + + + Jeporu Cookies + + + Jaiporu cookies romohenda hag̃ua ne rembiapo ha rohechauka hag̃ua mba'eichapa ojeporú ñanduti renda. Ku jepo rehe, remoneĩ cookies rembiporu. + + + Amoneĩ Opavave (Aceptar Todos) + + + Tekotevẽva añónte (Solo Esenciales) + + + Aikuaave (Saber Más) \ No newline at end of file diff --git a/Resources/SharedResource.es.resx b/Resources/SharedResource.es.resx index 81d282e..a4302cd 100644 --- a/Resources/SharedResource.es.resx +++ b/Resources/SharedResource.es.resx @@ -118,16 +118,16 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - Genera codigos QR en segundos! + ¡Japo código QR pya'épe! (Genera códigos QR en segundos) - Generar Codigo QR + Japo Código QR (Generar) - Tipo de Codigo QR + Mba'éichapa código QR (Tipo) - Contenido + Mba'e oĩva (Contenido) URL/Enlace @@ -136,10 +136,10 @@ Texto Simple - WiFi + WiFi ñanduti - Tarjeta de Visita + Tarjeta mba'eichaguáva (de Visita) SMS @@ -151,49 +151,49 @@ QR Dinamico (Premium) - Estilo Rapido + Estilo pya'e (Rápido) - Clasico + Ymave (Clásico) - Moderno + Ko'ãgagua (Moderno) - Colorido + Sa'ygua (Colorido) - Ingrese el contenido de su codigo QR aqui... + Emoĩ ne código QR mba'e ko'ápe... (Ingrese el contenido aquí) - Personalizacion Avanzada + Ñemohenda porãve (Personalización Avanzada) - Color Principal + Sa'y tuichavéva (Color Principal) - Color de Fondo + Sa'y hugua (Color de Fondo) - Tamano + Tuicha (Tamaño) - Margen + Opa'ĩ (Margen) - Logo/Icono + Ta'anga/Ícono Estilo de Esquinas - Generar Codigo QR Rapidamente + Japo Código QR pya'épe (Generar Rápidamente) - Vista Previa + Hecha tenondegua (Vista Previa) - Su codigo QR aparecera aqui en segundos + Ne código QR ojekuaa ko'ápe segundos pype (aparecerá aquí en segundos) Generacion ultra-rapida garantizada @@ -214,10 +214,10 @@ Inicie sesion para guardar en el historial - QR Rapido Premium + QR Rápido Premium (Porã) - Consejos para QR Mas Rapidos + Ñe'ẽ pya'épe (Consejos para QR Más Rápidos) URLs cortas se generan mas rapido @@ -247,7 +247,7 @@ Desbloquea todas las funciones premium! - Oferta Premium! + Jeporu porã! (Oferta Premium!) Elimina anuncios, accede a analisis detallados y mucho mas por solo $12.90/mes o $129.00/ano. Inicia sesion y suscribete ahora! @@ -274,10 +274,10 @@ Generacion normal - Error en la generacion. Intentelo de nuevo. + Osẽ vai - Ha'e jéy (Error - Inténtalo de nuevo) - Codigo QR guardado en el historial! + Ñongatu porã! Código QR guardado en el historial! Crear Codigo QR Rapidamente @@ -505,7 +505,7 @@ Política de Privacidad - ¡Pago exitoso! + ¡Jehepy porã! (Pago exitoso!) Volver al Inicio @@ -697,7 +697,7 @@ Tamaños menores aceleran la descarga - ¿Por qué QR Rapido es más rápido? + Mba'ére QR Rápido pya'eve? (¿Por qué es más rápido?) Comparación con otros generadores populares @@ -736,7 +736,7 @@ Historial - Premium Activo + Premium hendyva (Activo) Salir @@ -754,10 +754,10 @@ 1.2 segundos - por código QR • Gratis • Sin registro obligatorio + por código QR • Rei rehe (Gratis) • Sin registro obligatorio - El generador de códigos QR más rápido de la web. Gratis, seguro y confiable. + El generador de códigos QR pya'eve (ás rápido) de la web. Rei rehe (Gratis), seguro y confiable. Enlaces Útiles @@ -783,4 +783,191 @@ Usuarios anónimos: 3 códigos QR por día + + Política de Privacidad - QR Rapido + + + Conocé nuestra política de privacidad y cómo protegemos tus datos personales en QR Rapido. + + + Última actualización + + + Esta Política de Privacidad describe cómo QR Rapido ("nosotros", "nuestro" o "nuestra") recolecta, usa y protege la información que proporcionás cuando usás nuestro servicio de generación de códigos QR. + + + 1. Recolección de Datos + + + Recolectamos la siguiente información: + +• Datos de autenticación vía Google/Microsoft (nombre, email, foto de perfil) +• Contenido de los códigos QR generados (solo para usuarios registrados que eligen guardar en el historial) +• Datos de uso y estadísticas anónimas para mejorar nuestro servicio +• Información de pago procesada vía Stripe (no almacenamos datos de tarjeta) + + + 2. Uso de los Datos + + + Utilizamos tus datos para: + +• Proporcionar y mejorar nuestro servicio de generación de códigos QR +• Mantener tu historial de códigos QR (solo si elegís guardarlos) +• Procesar pagos de suscripciones premium +• Enviar comunicaciones relacionadas al servicio +• Cumplir obligaciones legales conforme a las leyes de protección de datos + + + 3. Protección de los Datos + + + Implementamos medidas de seguridad técnicas y organizacionales adecuadas para proteger tus datos personales contra acceso no autorizado, alteración, divulgación o destrucción, incluyendo: + +• Cifrado SSL/TLS en todas las comunicaciones +• Almacenamiento seguro en servidores protegidos +• Control de acceso restringido a los datos +• Monitoreo continuo de seguridad + + + 4. Compartir Datos + + + No vendemos, alquilamos ni compartimos tus datos personales con terceros, excepto: + +• Con proveedores de servicios esenciales (Google, Microsoft, Stripe) para autenticación y pagos +• Cuando sea requerido por ley u orden judicial +• Para proteger nuestros derechos legales y la seguridad de los usuarios + + + 5. Tus Derechos + + + De acuerdo con las leyes de protección de datos, tenés derecho a: + +• Acceder a tus datos personales +• Corregir datos incompletos o incorrectos +• Solicitar la eliminación de datos innecesarios +• Revocar consentimiento para tratamiento de datos +• Portabilidad de tus datos + + + 6. Cookies y Tecnologías Similares + + + Utilizamos cookies esenciales para el funcionamiento del sitio y análisis de tráfico vía Google Analytics. Podés gestionar tus preferencias de cookies en la configuración de tu navegador. + + + 7. Contacto + + + Para consultas sobre esta Política de Privacidad o ejercer tus derechos, contactanos a través del email: contato@qrrapido.site + + + Términos de Uso - QR Rapido + + + Leé los términos y condiciones de uso de QR Rapido, el generador de códigos QR más rápido de América Latina. + + + Última actualización + + + Estos Términos de Uso ("Términos") rigen el uso del servicio QR Rapido ("Servicio") proporcionado por nuestra empresa ("nosotros", "nuestro" o "nuestra"). Al usar nuestro Servicio, aceptás estos Términos. + + + 1. Aceptación de los Términos + + + Al acceder y usar QR Rapido, declarás tener al menos 18 años de edad o poseer autorización de padres/responsables, y aceptás cumplir estos Términos y todas las leyes aplicables. + + + 2. Descripción del Servicio + + + QR Rapido es un servicio online gratuito de generación de códigos QR que ofrece: + +• Generación rápida de códigos QR para diversos tipos de contenido +• Versión gratuita con limitaciones diarias +• Plan Premium con recursos avanzados e ilimitados +• Historial de códigos para usuarios registrados + + + 3. Responsabilidades del Usuario + + + Te comprometés a: + +• Usar el servicio únicamente para fines legales y éticos +• No generar códigos QR con contenido ofensivo, ilegal o que infrinja derechos de terceros +• No intentar comprometer la seguridad o disponibilidad del servicio +• Mantener la confidencialidad de tus credenciales de acceso + + + 4. Usos Prohibidos + + + Está prohibido usar el servicio para: + +• Diseminar malware, phishing o enlaces maliciosos +• Violación de derechos de autor o propiedad intelectual +• Spam, acoso o actividades fraudulentas +• Actividades que violen leyes nacionales o internacionales + + + 5. Propiedad Intelectual + + + Todos los derechos sobre el software, diseño, marca y contenido de QR Rapido pertenecen a nuestra empresa. Los códigos QR generados son de tu propiedad, pero nos concedés licencia para almacenarlos según sea necesario para proporcionar el servicio. + + + 6. Limitaciones del Servicio + + + • Usuarios gratuitos tienen límite diario de códigos QR +• Nos reservamos el derecho de modificar o interrumpir el servicio temporalmente +• No garantizamos disponibilidad 100% del tiempo +• Podemos implementar medidas técnicas para prevenir abuso + + + 7. Pagos y Suscripciones + + + • Suscripciones Premium son procesadas vía Stripe +• Pagos son recurrentes hasta cancelación +• Reembolsos siguen nuestra política de 7 días +• Precios pueden ser alterados mediante aviso previo de 30 días + + + 8. Limitación de Responsabilidad + + + El servicio se proporciona "como está". No nos responsabilizamos por: + +• Daños directos o indirectos derivados del uso del servicio +• Pérdida de datos o interrupción de negocios +• Uso inadecuado de los códigos QR generados por terceros +• Contenido accedido a través de los códigos QR + + + 9. Modificaciones de los Términos + + + Podemos actualizar estos Términos periódicamente. Cambios significativos serán comunicados por email o aviso en el sitio. El uso continuado después de los cambios constituye aceptación de los nuevos Términos. + + + 10. Ley Aplicable + + + Estos Términos se rigen por las leyes aplicables en cada jurisdicción. Las disputas serán resueltas en los tribunales competentes de cada país, sin perjuicio a tu derecho de acceso a los órganos de defensa del consumidor. + + + 11. Contacto + + + Para dudas sobre estos Términos de Uso, contactanos: contato@qrrapido.site + + + Volver al Inicio + \ No newline at end of file diff --git a/Resources/SharedResource.pt-BR.resx b/Resources/SharedResource.pt-BR.resx index cf681f8..fa7584d 100644 --- a/Resources/SharedResource.pt-BR.resx +++ b/Resources/SharedResource.pt-BR.resx @@ -873,4 +873,206 @@ Excluindo + + Política de Privacidade - QR Rapido + + + Conheça nossa política de privacidade e como protegemos seus dados pessoais no QR Rapido. + + + Última atualização + + + Esta Política de Privacidade descreve como o QR Rapido ("nós", "nosso" ou "nossa") coleta, usa e protege as informações que você fornece quando usa nosso serviço de geração de códigos QR. + + + 1. Coleta de Dados + + + Coletamos as seguintes informações: + +• Dados de autenticação via Google/Microsoft (nome, email, foto de perfil) +• Conteúdo dos QR codes gerados (apenas para usuários logados que optam por salvar no histórico) +• Dados de uso e estatísticas anônimas para melhorar nosso serviço +• Informações de pagamento processadas via Stripe (não armazenamos dados do cartão) + + + 2. Uso dos Dados + + + Utilizamos seus dados para: + +• Fornecer e melhorar nosso serviço de geração de QR codes +• Manter seu histórico de QR codes (apenas se você optar por salvar) +• Processar pagamentos de assinaturas premium +• Enviar comunicações relacionadas ao serviço +• Cumprir obrigações legais conforme a Lei Geral de Proteção de Dados (LGPD) + + + 3. Proteção dos Dados + + + Implementamos medidas de segurança técnicas e organizacionais adequadas para proteger seus dados pessoais contra acesso não autorizado, alteração, divulgação ou destruição, incluindo: + +• Criptografia SSL/TLS em todas as comunicações +• Armazenamento seguro em servidores protegidos +• Controle de acesso restrito aos dados +• Monitoramento contínuo de segurança + + + 4. Compartilhamento de Dados + + + Não vendemos, alugamos ou compartilhamos seus dados pessoais com terceiros, exceto: + +• Com provedores de serviços essenciais (Google, Microsoft, Stripe) para autenticação e pagamentos +• Quando exigido por lei ou ordem judicial +• Para proteger nossos direitos legais e a segurança dos usuários + + + 5. Seus Direitos + + + De acordo com a LGPD, você tem direito a: + +• Acessar seus dados pessoais +• Corrigir dados incompletos ou incorretos +• Solicitar a exclusão de dados desnecessários +• Revogar consentimento para tratamento de dados +• Portabilidade dos seus dados + + + 6. Cookies e Tecnologias Similares + + + Utilizamos cookies essenciais para o funcionamento do site e análise de tráfego via Google Analytics. Você pode gerenciar suas preferências de cookies nas configurações do seu navegador. + + + 7. Contato + + + Para questões sobre esta Política de Privacidade ou exercer seus direitos, entre em contato conosco através do email: contato@qrrapido.site + + + Termos de Uso - QR Rapido + + + Leia os termos e condições de uso do QR Rapido, o gerador de códigos QR mais rápido do Brasil. + + + Última atualização + + + Estes Termos de Uso ("Termos") regem o uso do serviço QR Rapido ("Serviço") fornecido por nossa empresa ("nós", "nosso" ou "nossa"). Ao usar nosso Serviço, você concorda com estes Termos. + + + 1. Aceitação dos Termos + + + Ao acessar e usar o QR Rapido, você declara ter pelo menos 18 anos de idade ou possuir autorização dos pais/responsáveis, e aceita cumprir estes Termos e todas as leis aplicáveis. + + + 2. Descrição do Serviço + + + O QR Rapido é um serviço online gratuito de geração de códigos QR que oferece: + +• Geração rápida de códigos QR para diversos tipos de conteúdo +• Versão gratuita com limitações diárias +• Plano Premium com recursos avançados e ilimitados +• Histórico de códigos para usuários registrados + + + 3. Responsabilidades do Usuário + + + Você se compromete a: + +• Usar o serviço apenas para fins legais e éticos +• Não gerar códigos QR com conteúdo ofensivo, ilegal ou que infrinja direitos de terceiros +• Não tentar comprometer a segurança ou disponibilidade do serviço +• Manter a confidencialidade de suas credenciais de acesso + + + 4. Usos Proibidos + + + É proibido usar o serviço para: + +• Disseminar malware, phishing ou links maliciosos +• Violação de direitos autorais ou propriedade intelectual +• Spam, assédio ou atividades fraudulentas +• Atividades que violem leis brasileiras ou internacionais + + + 5. Propriedade Intelectual + + + Todos os direitos sobre o software, design, marca e conteúdo do QR Rapido pertencem à nossa empresa. Os códigos QR gerados são de sua propriedade, mas você nos concede licença para armazená-los conforme necessário para fornecer o serviço. + + + 6. Limitações do Serviço + + + • Usuários gratuitos têm limite diário de códigos QR +• Reservamos o direito de modificar ou interromper o serviço temporariamente +• Não garantimos disponibilidade 100% do tempo +• Podemos implementar medidas técnicas para prevenir abuso + + + 7. Pagamentos e Assinaturas + + + • Assinaturas Premium são processadas via Stripe +• Pagamentos são recorrentes até cancelamento +• Reembolsos seguem nossa política de 7 dias +• Preços podem ser alterados mediante aviso prévio de 30 dias + + + 8. Limitação de Responsabilidade + + + O serviço é fornecido "como está". Não nos responsabilizamos por: + +• Danos diretos ou indiretos decorrentes do uso do serviço +• Perda de dados ou interrupção de negócios +• Uso inadequado dos códigos QR gerados por terceiros +• Conteúdo acessado através dos códigos QR + + + 9. Modificações dos Termos + + + Podemos atualizar estes Termos periodicamente. Alterações significativas serão comunicadas por email ou aviso no site. O uso continuado após as alterações constitui aceitação dos novos Termos. + + + 10. Lei Aplicável + + + Estes Termos são regidos pelas leis do Brasil. Disputas serão resolvidas nos tribunais competentes do Brasil, sem prejuízo ao seu direito de acesso aos órgãos de defesa do consumidor. + + + 11. Contato + + + Para dúvidas sobre estes Termos de Uso, entre em contato: contato@qrrapido.site + + + Voltar ao Início + + + Uso de Cookies + + + Usamos cookies para melhorar sua experiência e analisar o tráfego do site. Ao continuar navegando, você concorda com o uso de cookies. + + + Aceitar Todos + + + Apenas Essenciais + + + Saiba Mais + \ No newline at end of file diff --git a/Views/Account/Login.cshtml b/Views/Account/Login.cshtml index 62f4cc9..93a2ca6 100644 --- a/Views/Account/Login.cshtml +++ b/Views/Account/Login.cshtml @@ -62,7 +62,7 @@
@Localizer["NoRegisterWithoutPermission"]
- @Localizer["PrivacyPolicy"] + @Localizer["PrivacyPolicy"]
diff --git a/Views/Home/Privacy.cshtml b/Views/Home/Privacy.cshtml new file mode 100644 index 0000000..b3d7307 --- /dev/null +++ b/Views/Home/Privacy.cshtml @@ -0,0 +1,133 @@ +@using Microsoft.Extensions.Localization +@inject IStringLocalizer Localizer + +@{ + ViewData["Title"] = Localizer["PrivacyPolicyTitle"]; + ViewData["Description"] = Localizer["PrivacyPolicyDescription"]; + Layout = "~/Views/Shared/_Layout.cshtml"; +} + +
+
+
+
+
+

+ + @Localizer["PrivacyPolicyTitle"] +

+ +
+ + @Localizer["PrivacyPolicyLastUpdated"]: @DateTime.Now.ToString("dd/MM/yyyy") +
+ +
+

@Localizer["PrivacyPolicyIntroduction"]

+ +
+ +

@Localizer["PrivacyDataCollection"]

+
+ @Html.Raw(Localizer["PrivacyDataCollectionContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyDataUsage"]

+
+ @Html.Raw(Localizer["PrivacyDataUsageContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyDataProtection"]

+
+ @Html.Raw(Localizer["PrivacyDataProtectionContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyDataSharing"]

+
+ @Html.Raw(Localizer["PrivacyDataSharingContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyUserRights"]

+
+ @Html.Raw(Localizer["PrivacyUserRightsContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyCookies"]

+
+ @Html.Raw(Localizer["PrivacyCookiesContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["PrivacyContact"]

+
+ @Html.Raw(Localizer["PrivacyContactContent"].Value.Replace("\n", "
")) +
+
+ +
+ + +
+
+
+
+
+ +@if (ViewBag.ShowAds == true) +{ +
+
+
+
+
@Localizer["SpecialOffer"]
+

@Localizer["UpgradePremiumRemoveAds"]

+ + @Localizer["UpgradeNowButton"] + +
+
+
+
+} + + \ No newline at end of file diff --git a/Views/Home/Terms.cshtml b/Views/Home/Terms.cshtml new file mode 100644 index 0000000..0f5c5e7 --- /dev/null +++ b/Views/Home/Terms.cshtml @@ -0,0 +1,153 @@ +@using Microsoft.Extensions.Localization +@inject IStringLocalizer Localizer + +@{ + ViewData["Title"] = Localizer["TermsOfUseTitle"]; + ViewData["Description"] = Localizer["TermsOfUseDescription"]; + Layout = "~/Views/Shared/_Layout.cshtml"; +} + +
+
+
+
+
+

+ + @Localizer["TermsOfUseTitle"] +

+ +
+ + @Localizer["TermsLastUpdated"]: @DateTime.Now.ToString("dd/MM/yyyy") +
+ +
+

@Localizer["TermsIntroduction"]

+ +
+ +

@Localizer["TermsAcceptance"]

+
+ @Html.Raw(Localizer["TermsAcceptanceContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsServiceDescription"]

+
+ @Html.Raw(Localizer["TermsServiceDescriptionContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsUserResponsibilities"]

+
+ @Html.Raw(Localizer["TermsUserResponsibilitiesContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsProhibitedUses"]

+
+ @Html.Raw(Localizer["TermsProhibitedUsesContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsIntellectualProperty"]

+
+ @Html.Raw(Localizer["TermsIntellectualPropertyContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsLimitations"]

+
+ @Html.Raw(Localizer["TermsLimitationsContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsPayments"]

+
+ @Html.Raw(Localizer["TermsPaymentsContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsLiability"]

+
+ @Html.Raw(Localizer["TermsLiabilityContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsModifications"]

+
+ @Html.Raw(Localizer["TermsModificationsContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsApplicableLaw"]

+
+ @Html.Raw(Localizer["TermsApplicableLawContent"].Value.Replace("\n", "
")) +
+ +

@Localizer["TermsContact"]

+
+ @Html.Raw(Localizer["TermsContactContent"].Value.Replace("\n", "
")) +
+
+ +
+ + +
+
+
+
+
+ +@if (ViewBag.ShowAds == true) +{ +
+
+
+
+
@Localizer["SpecialOffer"]
+

@Localizer["UpgradePremiumRemoveAds"]

+ + @Localizer["UpgradeNowButton"] + +
+
+
+
+} + + \ No newline at end of file diff --git a/Views/Shared/_CookieConsent.cshtml b/Views/Shared/_CookieConsent.cshtml new file mode 100644 index 0000000..4d7db03 --- /dev/null +++ b/Views/Shared/_CookieConsent.cshtml @@ -0,0 +1,152 @@ +@using Microsoft.Extensions.Localization +@inject IStringLocalizer Localizer + + + + \ No newline at end of file diff --git a/Views/Shared/_Layout.cshtml b/Views/Shared/_Layout.cshtml index 75a0d49..b29df9a 100644 --- a/Views/Shared/_Layout.cshtml +++ b/Views/Shared/_Layout.cshtml @@ -80,8 +80,14 @@ @@ -322,6 +331,7 @@ +