Skip to content

Commit

Permalink
complete: term
Browse files Browse the repository at this point in the history
  • Loading branch information
tvc12 committed Jun 16, 2021
1 parent a5c8b1d commit f728a83
Show file tree
Hide file tree
Showing 4 changed files with 112 additions and 21 deletions.
1 change: 1 addition & 0 deletions lib/common/Text/h4.dart
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ class H4 extends StatelessWidget {
height: 1.4,
),
),
textAlign: TextAlign.justify,
);
}
}
41 changes: 22 additions & 19 deletions lib/policy.dart
Original file line number Diff line number Diff line change
Expand Up @@ -19,44 +19,47 @@ class Policy extends StatelessWidget {
children: [
Bold(child: H1('PRIVACY POLICY')),
Italic(child: H5('Last Updated: June 13, 2021')),
const SizedBox(height: 5),
Container(
height: 1,
decoration: BoxDecoration(color: Colors.grey.withAlpha(20)),
decoration: BoxDecoration(color: Colors.grey.withAlpha(56)),
),
const SizedBox(height: 20),
H4('Welcome to OhMyPet (“OhMyPet”, “we” or “us”). We are committed to protecting and respecting your privacy.'),
const SizedBox(height: 15),
Bold(child: H2('Collection of Personal Data')),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 5),
child: _buildCollectionData()),
padding: const EdgeInsets.symmetric(horizontal: 7),
child: _buildCollectionData(),
),
const SizedBox(height: 20),
Bold(child: H2('Use of Personal Data')),
const SizedBox(height: 5),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 5),
child: _buildUseOfPersonal()),
padding: const EdgeInsets.symmetric(horizontal: 7),
child: _buildUseOfPersonal(),
),
const SizedBox(height: 20),
Bold(child: H2('Protection of Personal Data')),
const SizedBox(height: 10),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 5),
padding: const EdgeInsets.symmetric(horizontal: 7),
child: H4(
'We will take reasonable legal, organizational and technical measures to ensure that your personal data is protected. We work hard to protect OhMyPet and our users from unauthorized access, unauthorized modification, disclosure or destruction of the information we hold.'),
),
const SizedBox(height: 15),
Bold(child: H2('Changes')),
const SizedBox(height: 5),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 5),
padding: const EdgeInsets.symmetric(horizontal: 7),
child: H4(
'We may update this Privacy Policy from time to time. When we update the Privacy Policy, we will notify you by updating the “Last Updated” date at the top of this policy and posting the new Privacy Policy and providing any other notice required by applicable law.'),
),
const SizedBox(height: 15),
Bold(child: H2('Contact')),
const SizedBox(height: 5),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 5),
padding: const EdgeInsets.symmetric(horizontal: 7),
child: _buildContact(),
)
],
Expand All @@ -75,19 +78,19 @@ class Policy extends StatelessWidget {
const SizedBox(height: 5),
H4('We collect information to provide better services to all of our users.'),
const SizedBox(height: 10),
Bold(child: H4('Social Media and Login Services:')),
Bold(child: H4('1. Social Media and Login Services:')),
const SizedBox(height: 5),
H4('If you choose to link or sign up using a third-party social network or login service (such as Facebook), we may collect information from these services.'),
const SizedBox(height: 10),
Bold(child: H4('Other Sources:')),
Bold(child: H4('2. Other Sources:')),
const SizedBox(height: 5),
H4('We may collect information about you from other publicly available sources.'),
const SizedBox(height: 10),
Bold(child: H4('Location data:')),
Bold(child: H4('3. Location data:')),
const SizedBox(height: 5),
H4('We collect information about your approximate location, including location information based on your SIM card and/or IP address. With your permission, we may also collect precise location data (such as GPS).'),
const SizedBox(height: 10),
Bold(child: H4('Images and Videos:')),
Bold(child: H4('4. Images and Videos:')),
const SizedBox(height: 5),
H4('We may collect information about the images, avatar and videos that are a part of your user content, such as identifying the objects and scenery that appear, the existence and location within an image of face and body features and attributes, and the text of the words spoken in your user content.'),
],
Expand All @@ -99,19 +102,19 @@ class Policy extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start,
direction: Axis.vertical,
children: [
H4('We identify and commit to collecting information to optimize user experience for the following purposes:'),
H4('1. We identify and commit to collecting information to optimize user experience for the following purposes:'),
const SizedBox(height: 5),
H4('Improve, develop and provide appropriate services for users'),
H4('2. Improve, develop and provide appropriate services for users'),
const SizedBox(height: 5),
H4('Personalize User Experience'),
H4('3. Personalize User Experience'),
const SizedBox(height: 5),
H4('For contact and protect users of OhMyPet'),
H4('4. For contact and protect users of OhMyPet'),
const SizedBox(height: 5),
H4('Understand how you use, including across your devices'),
H4('5. Understand how you use, including across your devices'),
const SizedBox(height: 5),
H4('Infer additional information about you, such as your age, gender, and interests'),
H4('6. Infer additional information about you, such as your age, gender, and interests'),
const SizedBox(height: 5),
H4('Help us detect abuse, fraud, and illegal activity'),
H4('7. Help us detect abuse, fraud, and illegal activity'),
],
);
}
Expand Down
3 changes: 2 additions & 1 deletion lib/policy_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,9 @@ class PolicyScreen extends StatelessWidget {
body: ListView(
padding: const EdgeInsets.all(48),
children: [
Policy(),
TermOfUser(),
const SizedBox(height: 48),
Policy(),
],
),
);
Expand Down
88 changes: 87 additions & 1 deletion lib/term_of_user.dart
Original file line number Diff line number Diff line change
@@ -1,8 +1,94 @@
import 'package:flutter/material.dart';

import 'common/Text/bold.dart';
import 'common/Text/h1.dart';
import 'common/Text/h2.dart';
import 'common/Text/h4.dart';
import 'common/Text/h5.dart';
import 'common/Text/italic.dart';

class TermOfUser extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Text('123');
return Flex(
direction: Axis.vertical,
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Bold(child: H1('TERMS OF USE')),
Italic(child: H5('Last Updated: June 13, 2021')),
const SizedBox(height: 5),
Container(
height: 1,
decoration: BoxDecoration(color: Colors.grey.withAlpha(56)),
),
const SizedBox(height: 20),
H4('By using OhMyPet service you are agreeing to be bound by the following terms and conditions ("Terms of Use").'),
const SizedBox(height: 15),
Bold(child: H2('Basic Terms')),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 7),
child: _basicTerm(),
),
const SizedBox(height: 20),
Bold(child: H2('General Conditions')),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 7),
child: _generalCondition(),
),
const SizedBox(height: 20),
Bold(child: H2('Severability')),
Padding(
padding: const EdgeInsets.symmetric(horizontal: 7),
child: H4('Should one or more provisions of these Terms of Use be found to be unlawful, void or unenforceable, such provision(s) shall be deemed severable and will not affect the validity and/or enforceability of the remaining provisions of the Terms of Use, which will remain in full force and effect.'),
),
],
);
}

Widget _basicTerm() {
return Flex(
crossAxisAlignment: CrossAxisAlignment.start,
direction: Axis.vertical,
children: [
const SizedBox(height: 5),
H4('1. You must be 13 years or older to use this site.'),
const SizedBox(height: 5),
H4('2. You may not post nude, partially nude, or sexually suggestive photos.'),
const SizedBox(height: 5),
H4('3. You are responsible for any activity that occurs under your screen name.'),
const SizedBox(height: 5),
H4('4. You must not abuse, harass, threaten, impersonate or intimidate other OhMyPet users.'),
const SizedBox(height: 5),
H4('5. You may not use the OhMyPet service for any illegal or unauthorized purpose. International users agree to comply with all local laws regarding online conduct and acceptable content.'),
const SizedBox(height: 5),
H4('6. You are solely responsible for your conduct and any data, text, information, screen names, graphics, photos, profiles, audio and video clips, links that you submit, post, and display on the OhMyPet service.'),
const SizedBox(height: 5),
H4('7. You must not spam comments to any OhMyPet members.'),
const SizedBox(height: 5),
H4('8. You must not transmit any worms or viruses or any code of a destructive nature.'),
const SizedBox(height: 5),
H4('9. You must not, in the use of OhMyPet, violate any laws in your jurisdiction.'),
const SizedBox(height: 5),
H4('10. Violation of any of these agreements will result in the termination of your OhMyPet account.'),
],
);
}

Widget _generalCondition() {
return Flex(
crossAxisAlignment: CrossAxisAlignment.start,
direction: Axis.vertical,
children: [
const SizedBox(height: 5),
H4('1. We reserve the right to modify or terminate the OhMyPet service for any reason, without notice at any time.'),
const SizedBox(height: 5),
H4('2. We reserve the right to alter these Terms of Use at any time. If the alterations constitute a material change to the Terms of Use, we will notify you via internet mail according to the preference expressed on your account.'),
const SizedBox(height: 5),
H4('3. We reserve the right to refuse service to anyone for any reason at any time.'),
const SizedBox(height: 5),
H4('4. We reserve the right to force forfeiture of any username that becomes inactive, violates trademark, or may mislead other users.'),
],
);
}
}

0 comments on commit f728a83

Please sign in to comment.