From 0d61ca6d01fcd9f0f6a0564b79268e9f51f23203 Mon Sep 17 00:00:00 2001 From: nadia Date: Fri, 14 Feb 2025 12:35:18 +0100 Subject: [PATCH] =?UTF-8?q?"A=C3=B1adidas=20politicas=20de=20privacidad=20?= =?UTF-8?q?en=20la=20pantalla=20principal"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/BloC/contenedores_event.dart | 13 +++++++- lib/pages/my_home_page.dart | 51 ++++++++++++++++++++++++-------- 2 files changed, 50 insertions(+), 14 deletions(-) diff --git a/lib/BloC/contenedores_event.dart b/lib/BloC/contenedores_event.dart index fe27753..562947a 100644 --- a/lib/BloC/contenedores_event.dart +++ b/lib/BloC/contenedores_event.dart @@ -48,4 +48,15 @@ Future launchAemetURL() async { } catch (e) { throw Exception('Error al lanzar la URL de Aemet: $e'); } -} \ No newline at end of file +} + +Future launchPrivacyPolicyURL() async { + const urlString = 'https://crcivan.asociacionador.es/politica-privacidad.html'; + final url = Uri.parse(urlString); + + try { + await launch(urlString); + } catch (e) { + throw Exception('Error al lanzar la URL de la política de privacidad: $e'); + } +} diff --git a/lib/pages/my_home_page.dart b/lib/pages/my_home_page.dart index 665063d..cf9cdc5 100644 --- a/lib/pages/my_home_page.dart +++ b/lib/pages/my_home_page.dart @@ -5,7 +5,8 @@ import 'package:crcivan/BloC/contenedores_event.dart'; import 'package:crcivan/pages/noticias'; import 'package:crcivan/pages/pregon'; import 'package:crcivan/pages/embalses'; -import 'package:crcivan/widgets/background_widget.dart'; +import 'package:crcivan/widgets/background_widget.dart'; +import 'package:url_launcher/url_launcher.dart'; class MyHomePage extends StatelessWidget { const MyHomePage({super.key, required this.title}); @@ -15,17 +16,22 @@ class MyHomePage extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: const CustomAppBar(), //Barra superior personalizada - body: BackgroundWidget( //Widget fondo del fichero BackgroundWidget + body: BackgroundWidget( + //Widget fondo del fichero BackgroundWidget child: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ InkWell( - onTap: () { Navigator.push( - context, - MaterialPageRoute(builder: (context) => const NoticiasPage()), - );}, - child: SizedBox( //Botón Noticias + onTap: () { + Navigator.push( + context, + MaterialPageRoute( + builder: (context) => const NoticiasPage()), + ); + }, + child: SizedBox( + //Botón Noticias width: 300.0, child: Padding( padding: const EdgeInsets.only(bottom: 20.0), @@ -55,7 +61,8 @@ class MyHomePage extends StatelessWidget { MaterialPageRoute(builder: (context) => const Pregon()), ); }, - child: SizedBox(//Botón Pregón + child: SizedBox( + //Botón Pregón width: 300.0, child: Padding( padding: const EdgeInsets.only(bottom: 20.0), @@ -82,10 +89,12 @@ class MyHomePage extends StatelessWidget { onTap: () { Navigator.push( context, - MaterialPageRoute(builder: (context) => const EmbalsesPage()), + MaterialPageRoute( + builder: (context) => const EmbalsesPage()), ); }, - child: SizedBox( //Botón Embalses + child: SizedBox( + //Botón Embalses width: 300.0, child: Padding( padding: const EdgeInsets.only(bottom: 20.0), @@ -110,9 +119,10 @@ class MyHomePage extends StatelessWidget { ), InkWell( onTap: () { - launchAemetURL();//Función a link externo + launchAemetURL(); //Función a link externo }, - child: SizedBox(//Botón Tiempo + child: SizedBox( + //Botón Tiempo width: 300.0, child: Padding( padding: const EdgeInsets.only(bottom: 20.0), @@ -135,11 +145,26 @@ class MyHomePage extends StatelessWidget { ), ), ), + SizedBox(height: 20), + InkWell( + onTap: () { + launchPrivacyPolicyURL(); + }, + child: const Text( + 'Lee nuestras políticas de privacidad', + style: TextStyle( + color: Colors.blue, + decoration: TextDecoration.underline, + fontSize: 16.0, + ), + ), + ), ], ), ), ), - bottomNavigationBar: const CustomBottomBar(),//Barra inferior personalizada + bottomNavigationBar: + const CustomBottomBar(), //Barra inferior personalizada ); } }