1177 lines
61 KiB
Dart
Executable File
1177 lines
61 KiB
Dart
Executable File
import 'package:flutter/material.dart';
|
||
import 'package:go_router/go_router.dart';
|
||
import 'package:uae_stat/domain/use_cases/language.dart';
|
||
import 'package:uae_stat/infrastructure/services/img_asset_paths/banner_asset_path.dart';
|
||
|
||
class PrivacyPolicy extends StatelessWidget {
|
||
PrivacyPolicy({super.key});
|
||
final fcscBanner = Image.asset(
|
||
BannerAssetPath.fcscLogoLight,
|
||
height: 40,
|
||
alignment: Alignment.center,
|
||
);
|
||
@override
|
||
Widget build(BuildContext context) {
|
||
return Theme(
|
||
data: ThemeData(
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), // Set default font family for this page
|
||
textTheme: TextTheme(
|
||
bodyMedium: TextStyle(fontSize: 16, color:Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
bodyLarge: TextStyle(fontSize: 16, color:Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),fontWeight: FontWeight.w500),
|
||
),
|
||
),
|
||
child: Scaffold(
|
||
appBar: AppBar(
|
||
leading: IconButton(
|
||
icon: Icon(Icons.arrow_back_ios_new,size: 24,),
|
||
onPressed: (){
|
||
context.pop();
|
||
},
|
||
),
|
||
scrolledUnderElevation: 0,
|
||
title:Text(context.translate(
|
||
'Privacy Policy',
|
||
'الشروط والأحكام',
|
||
),
|
||
style: TextStyle(
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
fontSize:22,
|
||
color: Colors.black87,
|
||
fontWeight: FontWeight.w600,
|
||
// fontWeight: FontWeight.w500,
|
||
),
|
||
),
|
||
backgroundColor: Colors.white,
|
||
bottom: PreferredSize(
|
||
preferredSize: Size.fromHeight(1), // Height of the line
|
||
child: Container(
|
||
color: Colors.grey.shade300, // Line color
|
||
height: 1, // Line thickness
|
||
),
|
||
),
|
||
),
|
||
|
||
body: Container(
|
||
height: double.infinity,
|
||
color: Colors.white,
|
||
padding: EdgeInsets.all(16),
|
||
child:SingleChildScrollView(
|
||
child:Column(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
RichText(
|
||
text: TextSpan(
|
||
text: context.translate('Welcome to the '
|
||
,'مرحبًا بكم في '),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), height: 1.4),
|
||
children:<TextSpan>[
|
||
TextSpan(text: context.translate('Federal Competitiveness and Statistics Centre (FCSC) Mobile Application',
|
||
'تطبيق المركز الاتحادي للتنافسية والإحصاء (FCSC) '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate(' We value your',
|
||
'نحن نقدّر خصوصيتك وحماية بياناتك، ونلتزم بحماية معلوماتك الشخصية.',)
|
||
),
|
||
TextSpan(text:context.translate( ' privacy and data protection ',
|
||
'توضح هذه سياسة الخصوصية ',),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('and are committed to safeguarding your personal information. This ',
|
||
'كيفية جمع واستخدام ومشاركة وحماية بياناتك عند استخدام هذا التطبيق.',
|
||
)),
|
||
TextSpan(text:context.translate( ' Privacy Policy',
|
||
''),
|
||
style: TextStyle(
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
),),
|
||
TextSpan(text:context.translate(' explains how we collect, use, share, and protect your information when using this App.\n By using the App, you consent to the practices described in this',
|
||
'باستخدام التطبيق، فإنك توافق على الممارسات الموضحة في هذه السياسة. ',
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( ' Privacy Policy ',
|
||
'',),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate ('1.Information We Collect',
|
||
'1.١. المعلومات التي نقوم بجمعها'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
RichText(
|
||
text: TextSpan(
|
||
text:context.translate( 'When you use the ',
|
||
'عند استخدام تطبيق '),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'FCSC App, ',
|
||
' FCSC '),
|
||
style: TextStyle(
|
||
fontSize: 16,
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('we may collect the following types of data:',
|
||
'قد نقوم بجمع الأنواع التالية من البيانات: ',))
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 5),
|
||
Text(context.translate('1.1 Personal Information','1.1المعلومات الشخصية'),
|
||
style:TextStyle(
|
||
fontSize: 16,
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),) ,
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: Column(
|
||
children: [
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'Name, email address, phone number ',
|
||
'الاسم، البريد الإلكتروني، رقم الهاتف'),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(when registering an account).',
|
||
' (عند التسجيل). '),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children:<TextSpan>[
|
||
TextSpan(text: context.translate( 'User credentials ',
|
||
'بيانات تسجيل الدخول ',),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(such as username and password).',
|
||
'(مثل اسم المستخدم وكلمة المرور).',),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'Demographic data ','البيانات الديموغرافية '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(if provided by the user).',
|
||
'(إذا قدمها المستخدم)'),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
],
|
||
),
|
||
),
|
||
|
||
Text(context.translate('1.2 Usage Data','1.2بيانات الاستخدام'),
|
||
style:TextStyle(
|
||
fontSize: 16,
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),) ,
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: Column(
|
||
children: [
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'Device information ',
|
||
'معلومات الجهاز '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(IP address, operating system, device type).','(عنوان IP، نظام التشغيل، نوع الجهاز). '),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('App interactions ',' التفاعلات داخل التطبيق'),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(pages viewed, features used, actions performed).',' (الصفحات التي تمت زيارتها، الميزات المستخدمة، الإجراءات المنفذة).'))
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'Log data ','بيانات السجل '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(error reports, login timestamps).','(تقارير الأخطاء، أوقات تسجيل الدخول)'),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
],
|
||
),
|
||
),
|
||
Text(context.translate('1.3 Location Data','1.3بيانات الموقع الجغرافي'),
|
||
style:TextStyle(
|
||
fontSize: 16,
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),) ,
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: Column(
|
||
children: [
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
text:context.translate('If enabled, we may collect ',
|
||
'في حال تفعيلها، قد نقوم بجمع بيانات الموقع لتحسين بعض الميزات.'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate( 'location-based data ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(to enhance certain features.',''),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
|
||
],
|
||
),
|
||
),
|
||
Text(context.translate('1.4 Cookies and Tracking Technologies','1.4ملفات تعريف الارتباط والتقنيات التتبعية'),
|
||
style:TextStyle(
|
||
fontSize: 16,
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),) ,
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: Column(
|
||
children: [
|
||
Row(
|
||
crossAxisAlignment: CrossAxisAlignment.start,
|
||
children: [
|
||
Padding(
|
||
padding: const EdgeInsets.only(top : 8.0 ,),
|
||
child: Icon(Icons.brightness_1, size: 5, color: Color(0xFF414042),),
|
||
), // Bullet point
|
||
SizedBox(width: 8), // Space between bullet and text
|
||
Expanded(
|
||
child: RichText(
|
||
text: TextSpan(
|
||
text:context.translate('We may use ','قد نستخدم ملفات تعريف الارتباط (Cookies) وأدوات التحليل والتتبع لتحسين وظائف التطبيق وتجربة المستخدم.'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate( 'cookies, analytics tools, and tracking technologies',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text: context.translate('(to improve App functionality and user experience.',''),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
],
|
||
),
|
||
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate('2. How We Use Your Information','2.كيفية استخدام معلوماتك'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
Text(context.translate('The data we collect is used to:','يتم استخدام البيانات التي نجمعها للأغراض التالية:'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('Provide and improve services- ','تقديم وتحسين الخدمات – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('Deliver insights, statistics, and reports.','توفير الإحصاءات والتقارير والتحليلات.'),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('Personalize user experience –','تخصيص تجربة المستخدم – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('Tailor content and recommendations.','تحسين المحتوى والتوصيات بناءً على اهتمامات المستخدم.')),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate ('Ensure security – ','ضمان الأمان –'),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text: context.translate('Prevent unauthorized access and detect fraudulent activities.',
|
||
'منع الوصول غير المصرح به واكتشاف الأنشطة الاحتيالية.',),)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate('Comply with legal requirements –',
|
||
'الامتثال للمتطلبات القانونية – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('As mandated by UAE laws and regulations.',
|
||
'وفقًا للوائح والقوانين الإماراتية.'),
|
||
)
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children:<TextSpan>[
|
||
TextSpan(text: context.translate('Communicate with users –','التواصل مع المستخدمين – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate ('Respond to inquiries, send updates, and support requests.',
|
||
'الرد على الاستفسارات وإرسال التحديثات والدعم الفني.',))
|
||
],
|
||
),
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate('3. How We Share Your Information','3.كيفية مشاركة معلوماتك'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
RichText(
|
||
text: TextSpan(
|
||
text: context.translate('FCSC ','لا يقوم FCSC ببيع أو تبادل معلوماتك الشخصية. ومع ذلك، قد نشارك البيانات في الحالات التالية:'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('does not sell or trade ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text: context.translate('your personal information. However, we may share data in the following cases:',''),)
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 5),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 5.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('Government and Legal Compliance – ',
|
||
'التزامات حكومية وقانونية – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('If required by ','')),
|
||
TextSpan(text: context.translate('UAE government authorities ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('or for legal obligations.',''),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 5.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('Third-Party Service Providers –',
|
||
'مقدمو الخدمات الخارجيون – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text: context.translate('To support App functionality (e.g., hosting services, analytics providers).','لدعم وظائف التطبيق (مثل خدمات الاستضافة، مزودي التحليلات).'))
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(padding: EdgeInsets.only(left: 10.0,bottom: 5.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text: context.translate('Security and Fraud Prevention – ','الأمان ومنع الاحتيال – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text: context.translate('To investigate and prevent security breaches All third-party vendors are required to',
|
||
'للتحقيق في أي خروقات أمنية ومنعها.'),
|
||
),
|
||
|
||
TextSpan(text: context.translate(' adhere to strict confidentiality agreements. ','جميع مزودي الخدمات الخارجيين مطالبون بالالتزام باتفاقيات سرية صارمة.'),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate('4. Data Storage and Security','4.تخزين البيانات وأمانها'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate('Data Encryption – ','تشفير البيانات '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: context.translate('We use AES-256 encryption to protect user data.',
|
||
'– نستخدم تشفير AES-256 لحماية بيانات المستخدم.'),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text:context.translate( 'Secure Servers – ','خوادم آمنة – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: context.translate ('All information is stored on government-approved servers with strict access controls.','يتم تخزين جميع المعلومات على خوادم معتمدة من الحكومة بإجراءات صارمة للتحكم في الوصول.'),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate('Access Restrictions – ', 'قيود الوصول – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: context.translate('Only authorized personnel can access sensitive user data.',
|
||
'لا يُسمح بالوصول إلى البيانات إلا للموظفين المخولين فقط.'),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children:<TextSpan>[
|
||
TextSpan(
|
||
text:context.translate('Retention Policy – ','سياسة الاحتفاظ بالبيانات – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: context.translate('We retain personal data only as long as necessary for legal and operational purposes.',
|
||
'نحتفظ بالبيانات الشخصية فقط للمدة اللازمة للأغراض القانونية والتشغيلية',
|
||
),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate ('5. User Rights and Choices','5.حقوق المستخدم وخياراته'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
Text(context.translate('Users have the following rights regarding their personal data',''),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate ('Access & Review – ','الوصول والمراجعة – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( 'You can request a copy of the personal data stored.',
|
||
'يمكنك طلب نسخة من بياناتك الشخصية المخزنة.',),
|
||
),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate('Correction & Deletion – ','التعديل والحذف –'),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate('You may request corrections or removal of your data (subject to legal retention policies).',
|
||
'– يمكنك طلب تصحيح أو إزالة بياناتك (وفقًا لسياسات الاحتفاظ القانونية).'),),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate('Opt-Out of Marketing – ','إلغاء الاشتراك في التسويق – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( 'You can choose to opt-out of promotional communications.',
|
||
'يمكنك اختيار إلغاء الاشتراك في الرسائل الترويجية.'),
|
||
),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text: context.translate ('Disable Location Services – ','إيقاف خدمات الموقع – '),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w500,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate ( 'Location tracking can be disabled via device settings.','يمكن تعطيل تتبع الموقع عبر إعدادات الجهاز.'),
|
||
),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
Padding(
|
||
padding: EdgeInsets.only(left: 10.0, bottom: 3.0),
|
||
child: RichText(
|
||
text: TextSpan(
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children:<TextSpan>[
|
||
TextSpan(
|
||
text: context.translate( 'To exercise these rights, contact us at ',''),
|
||
style: TextStyle(
|
||
color: Color(0xFF898C81),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(
|
||
text: '[Insert Official FCSC Email]',
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: '.'),
|
||
],
|
||
),
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate('6. Third-Party Links and Services','6.روابط وخدمات الجهات الخارجية'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
RichText(
|
||
text: TextSpan(
|
||
text:context.translate('The App may contain ',
|
||
'قد يحتوي التطبيق على روابط لمواقع إلكترونية أو خدمات خارجية (مثل بوابات الحكومة الإماراتية). لا تتحمل FCSC أي مسؤولية عن ممارسات الخصوصية الخاصة بالجهات الخارجية. يجب على المستخدمين مراجعة سياسات الخصوصية الخاصة بهم.'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(text:context.translate( 'links to external websites or services ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('(e.g., UAE government portals). FCSC is ','',),),
|
||
TextSpan(text:context.translate( 'not responsible ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
TextSpan(text:context.translate('for third-party privacy practices. Users should review their respective ',''),),
|
||
TextSpan(text:context.translate( 'Privacy Policies.',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),),
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text( context.translate("7. Children's Privacy",'7.خصوصية الأطفال'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
RichText(
|
||
text: TextSpan(
|
||
text: context.translate('The App is not ','التطبيق غير مخصص للأطفال دون سن ١٣ عامًا. نحن لا نجمع بيانات من القاصرين عن قصد. يمكن للوالدين أو الأوصياء طلب إزالة أي بيانات تخص الأطفال عن طريق التواصل مع FCSC.'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text:context.translate( 'intended for children under 13 years. ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text: context.translate('We do not knowingly collect data from minors. Parents or guardians may request the ',
|
||
''),
|
||
),
|
||
TextSpan(
|
||
text:context.translate( 'removal of any child’s data ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( 'by contacting FCSC.',''),),
|
||
],
|
||
),
|
||
),
|
||
SizedBox(height: 10),
|
||
Text(context.translate('8. Changes to This Privacy Policy','8.التغييرات على سياسة الخصوصية هذه'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
RichText(
|
||
text: TextSpan(
|
||
text: context.translate('We may update this Privacy Policy periodically to reflect changes in ',
|
||
'قد نقوم بتحديث سياسة الخصوصية هذه بشكل دوري لتعكس التغييرات في القوانين أو التكنولوجيا أو ملاحظات المستخدمين. ستكون أحدث نسخة متاحة دائمًا داخل التطبيق.'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
children: <TextSpan>[
|
||
TextSpan(
|
||
text:context.translate( 'laws, technology, or user feedback. ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( 'The ',''),),
|
||
TextSpan(
|
||
text:context.translate( 'latest version will always be available ',''),
|
||
style: TextStyle(
|
||
fontWeight: FontWeight.w400,
|
||
color: Color(0xFF414042),
|
||
fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),
|
||
),
|
||
),
|
||
TextSpan(text:context.translate( 'in the App.',''),),
|
||
],
|
||
),
|
||
),
|
||
Text(context.translate('9. Contact Information','9.معلومات الاتصال'),
|
||
style: TextStyle(fontSize: 17, color: Color(0xFF414042), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
), fontWeight: FontWeight.w600),) ,
|
||
SizedBox(height: 5),
|
||
Text( context.translate('For privacy-related inquiries, you may contact:' ,'للاستفسارات المتعلقة بالخصوصية، يمكنك التواصل معنا عبر:'),
|
||
style: TextStyle(fontSize: 16, color: Color(0xFF898C81), fontFamily: context.translate(
|
||
'Roboto',
|
||
'NotoKufi',
|
||
),),
|
||
),
|
||
SizedBox(height: 20),
|
||
Center(child: fcscBanner),
|
||
SizedBox(height: 20),
|
||
],
|
||
)
|
||
),
|
||
),
|
||
)
|
||
,);
|
||
}
|
||
}
|
||
|
||
|
||
|
||
|
||
|