Skip to content

Commit

Permalink
Merge pull request #41 from Alpha17-2/v1.0.0+5
Browse files Browse the repository at this point in the history
V1.0.0+5
  • Loading branch information
Alpha17-2 authored Mar 14, 2022
2 parents 0bb8514 + 5f0c8a0 commit 40aa95d
Show file tree
Hide file tree
Showing 36 changed files with 2,331 additions and 549 deletions.
22 changes: 22 additions & 0 deletions android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.nexus">
<uses-permission android:name="android.permission.INTERNET" />
<queries>
<!-- If your app opens https URLs -->
<intent>
<action android:name="android.intent.action.VIEW" />
<data android:scheme="https" />
</intent>
<!-- If your app makes calls -->
<intent>
<action android:name="android.intent.action.DIAL" />
<data android:scheme="tel" />
</intent>
<!-- If your sends SMS messages -->
<intent>
<action android:name="android.intent.action.SENDTO" />
<data android:scheme="smsto" />
</intent>
<!-- If your app sends emails -->
<intent>
<action android:name="android.intent.action.SEND" />
<data android:mimeType="*/*" />
</intent>
</queries>
<application
android:label="Wave"
android:name="${applicationName}"
Expand Down
Binary file added images/block.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added images/textPost.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion lib/models/userModel.dart
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ class NexusUser {
String bio; // Bio of the user typically an introduction of the user
String coverImage; // An image link of the cover image of user
String dp; // An image link for the dp of user
String accountType; // Describing the type of account ['Meme','Sports','News','Music','Dance','Social','Business','Celebrity','Gaming']
String accountType; // Describing the type of account ['Meme','Sports','News','Music','Dance','Social','Business','Celebrity','Gaming','Developer']
String email; // Email id of the user
List<dynamic> followers; // List of uid of the users who follow this current user
List<dynamic> followings; // List of uid of the users who this current user follow
Expand Down
8 changes: 5 additions & 3 deletions lib/providers/manager.dart
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ class manager extends ChangeNotifier {
Future<void> setFeedPosts(String myUid) async {
List<PostModel> tempPostList = [];
List<StoryModel> tempStoryList = [];
List<PostModel> tempMyPosts = [];
Map<String, dynamic> data = {};
final String api = constants().fetchApi + 'posts.json';
final res = await http.get(Uri.parse(api));
Expand All @@ -261,7 +262,7 @@ class manager extends ChangeNotifier {
List<dynamic> myFollowing = allUsers[myUid]!.followings;

if (data.containsKey(myUid)) {
// Trying to set my posts
// Set my posts
final MyPostMap = data[myUid] as Map<String, dynamic>;
for (String postId in MyPostMap.keys.toList()) {
final postMap = MyPostMap[postId] as Map<String, dynamic>;
Expand All @@ -276,7 +277,7 @@ class manager extends ChangeNotifier {
post_id: postId,
likes: postMap['likes'] ?? []);
myPostsMap[postId] = p;
myPostsList.add(p);
tempMyPosts.add(p);
}
}
for (String uid in myFollowing) {
Expand Down Expand Up @@ -309,7 +310,8 @@ class manager extends ChangeNotifier {
}
}
}
feedPostList = tempPostList;
myPostsList = tempMyPosts;
feedStoryList = tempStoryList;
feedPostList = tempPostList;
feedStoryList.sort((a, b) => b.storyTime!.compareTo(a.storyTime!));
feedPostList.sort((a, b) => b.dateOfPost.compareTo(a.dateOfPost));
Expand Down
47 changes: 47 additions & 0 deletions lib/screen/AboutWave/AboutWave.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
import 'package:flutter/material.dart';
import 'package:nexus/screen/AboutWave/OpenSource.dart';
import 'package:nexus/screen/AboutWave/privacyPolicyScreen.dart';
import 'package:nexus/screen/AboutWave/termsOfUse.dart';
class AboutWaveScreen extends StatelessWidget {
const AboutWaveScreen({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.white,
elevation: 0,
title: const Text('About Wave',style: TextStyle(color: Colors.black87),),iconTheme: const IconThemeData(
color: Colors.black87,
),),
backgroundColor: Colors.white,
body: Padding(
padding: const EdgeInsets.only(top:8.0,bottom: 8.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
ListTile(
onTap: () {
Navigator.push(context, MaterialPageRoute(builder: (context) => privacyPolicyScreen(),));
},
title: Text('Privacy Policy'),
),
ListTile(
onTap: () {
Navigator.push(context, MaterialPageRoute(builder: (context) => termsOfUseScreen(),));
},
title: Text('Terms of Use'),
),
ListTile(
onTap: () {
Navigator.push(context, MaterialPageRoute(builder: (context) => OpenSourceDetail(),));
},
title: Text('Open Source Development'),
),
],
),
),
);
}
}
46 changes: 46 additions & 0 deletions lib/screen/AboutWave/OpenSource.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
import 'package:flutter/material.dart';
import 'package:nexus/utils/widgets.dart';
class OpenSourceDetail extends StatelessWidget {
const OpenSourceDetail({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.white,
elevation: 0.0,
iconTheme: const IconThemeData(color: Colors.black87),
title: const Text('Open Source Development',style: TextStyle(
color: Colors.black87,
),),
),
backgroundColor: Colors.white,
body: SingleChildScrollView(
child: Padding(
padding: const EdgeInsets.all(12.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text('Wave is an open source project. Developers around the globe can contribute to it. You can examine more information on our :'),
Opacity(child: Divider(),opacity: 0.0,),
Row(
mainAxisAlignment: MainAxisAlignment.start,
children: [
Text('Source Code at : ',style: TextStyle(
color: Colors.black87,fontWeight: FontWeight.bold
),),
InkWell(
onTap: ()async {
await openLink('https://github.com/Alpha17-2/Wave');
},
child: Text('https://github.com/Alpha17-2/Wave',style: TextStyle(color: Colors.indigo,fontWeight: FontWeight.bold),))
],
)
],
),
),
),
);
}
}
127 changes: 127 additions & 0 deletions lib/screen/AboutWave/policyScreen.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
import 'package:flutter/material.dart';
import 'package:nexus/utils/devicesize.dart';

class policyScreen extends StatelessWidget {
const policyScreen({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
var headingTextStyle = TextStyle(
fontSize: displayWidth(context) * 0.045,
fontWeight: FontWeight.bold,
color: Colors.black,
);
var normalTextStyle = TextStyle(
fontSize: displayWidth(context) * 0.038,
color: Colors.black87,
);
var divider = const Opacity(
opacity: 0.0,
child: Divider(),
);
return Scaffold(
appBar: AppBar(
iconTheme: IconThemeData(color: Colors.black87),
backgroundColor: Colors.white,
elevation: 0,
title: const Text('User policy',
style: TextStyle(
color: Colors.black87,
)),

),
body: Container(
height: displayHeight(context),
width: displayWidth(context),
color: Colors.white,
child: Padding(
padding: const EdgeInsets.all(12.0),
child: SingleChildScrollView(
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'1. Terms',
style: headingTextStyle,
),
divider,
Text(
'By accessing this app, you are agreeing to be bound by these app’s Terms and Conditions of Use, applicable laws and regulations and their compliance. If you disagree with any of the stated terms and conditions, you are prohibited from using or accessing this app. The materials contained in this site are secured by relevant copyright and trade mark law.',
style: normalTextStyle,
),
divider,
Text(
'2. Use License',
style: headingTextStyle,
),
divider,
Text(
'Permission is allowed to temporarily download one duplicate of the materials (data or programming) on Wave site for individual and non-business use only. This is the just a permit of license and not an exchange of title, and under this permit you may not:\n\n i. Modify or copy the materials\n ii. Use the materials for any commercial use , or for any public presentation (business or non-business)\n iii. Attempt to decompile or rebuild any product or material contained on Wave app\n iv. remove any copyright or other restrictive documentations from the materials'),
divider,
Text(
'3. Disclaimer',
style: headingTextStyle,
),
divider,
Text(
'The materials on Wave are given "as is". Wave makes no guarantees, communicated or suggested, and thus renounces and nullifies every single other warranties, including without impediment, inferred guarantees or states of merchantability, fitness for a specific reason, or non-encroachment of licensed property or other infringement of rights. Further, Wave does not warrant or make any representations concerning the precision, likely results, or unwavering quality of the utilization of the materials on its Internet site or generally identifying with such materials or on any destinations connected to this website.',
style: normalTextStyle,
),
divider,
Text(
'4. Constraints',
style: headingTextStyle,
),
divider,
Text(
'In no occasion should Wave or its suppliers subject for any harms (counting, without constraint, harms for loss of information or benefit, or because of business interference,) emerging out of the utilization or powerlessness to utilize the materials on Wave Internet app, regardless of the possibility that Wave or a Wave approved agent has been told orally or in written of the likelihood of such harm. Since a few purviews don\'t permit constraints on inferred guarantees, or impediments of obligation for weighty or coincidental harms, these confinements may not make a difference to you.',
style: normalTextStyle,
),
divider,
Text(
'5. Amendments and Errata',
style: headingTextStyle,
),
divider,
Text(
'The materials showing up on Wave app could incorporate typographical, or photographic mistakes. Wave does not warrant that any of the materials on its site are exact, finished, or current. Wave may roll out improvements to the materials contained on its site whenever without notification. Wave does not, then again, make any dedication to update the materials.',
style: normalTextStyle,
),
divider,
Text(
'6. Governing Law',
style: headingTextStyle,
),
divider,
Text(
'Any case identifying with Wave app should be administered by the laws of the country of India Wave State without respect to its contention of law provisions.',
style: normalTextStyle,
),
divider,
Text(
'Privacy Policy',
style: headingTextStyle,
),
divider,
Text(
'Your privacy is critical to us. Likewise, we have built up this Policy with the end goal you should see how we gather, utilize, impart and reveal and make utilization of individual data. The following blueprints our privacy policy.\n',
style: normalTextStyle,
),
Text(
'i. Before or at the time of collecting personal information, we will identify the purposes for which information is being collected.\nii. We will gather and utilize individual data singularly with the target of satisfying those reasons indicated by us and for other good purposes, unless we get the assent of the individual concerned or as required by law.\niii. We will gather individual data by legal and reasonable means and, where fitting, with the information or assent of the individual concerned.\niv. We will protect individual data by security shields against misfortune or burglary, and also unapproved access, divulgence, duplicating, use or alteration.\nv. We will promptly provide customers with access to our policies and procedures for the administration of individual data.',
style: normalTextStyle,
),
divider,
Text(
'We are focused on leading our business as per these standards with a specific end goal to guarantee that the privacy of individual data is secure and maintained.',
style: normalTextStyle,
),
],
),
),
),
),
);
}
}
58 changes: 58 additions & 0 deletions lib/screen/AboutWave/privacyPolicyScreen.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import 'package:flutter/material.dart';

import '../../utils/devicesize.dart';
class privacyPolicyScreen extends StatelessWidget {
const privacyPolicyScreen({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
var headingTextStyle = TextStyle(
fontSize: displayWidth(context) * 0.045,
fontWeight: FontWeight.bold,
color: Colors.black,
);
var normalTextStyle = TextStyle(
fontSize: displayWidth(context) * 0.038,
color: Colors.black87,
);
var divider = const Opacity(
opacity: 0.0,
child: Divider(),
);
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.white,
elevation: 0.0,
iconTheme: const IconThemeData(color: Colors.black87),
title: const Text('Privacy Policy',style: TextStyle(
color: Colors.black87,
),),
),
backgroundColor: Colors.white,
body: SingleChildScrollView(
child: Padding(
padding: const EdgeInsets.all(12.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
'Your privacy is critical to us. Likewise, we have built up this Policy with the end goal you should see how we gather, utilize, impart and reveal and make utilization of individual data. The following blueprints our privacy policy.\n',
style: normalTextStyle,
),
Text(
'i. Before or at the time of collecting personal information, we will identify the purposes for which information is being collected.\n\nii. We will gather and utilize individual data singularly with the target of satisfying those reasons indicated by us and for other good purposes, unless we get the assent of the individual concerned or as required by law.\n\niii. We will gather individual data by legal and reasonable means and, where fitting, with the information or assent of the individual concerned.\n\niv. We will protect individual data by security shields against misfortune or burglary, and also unapproved access, divulgence, duplicating, use or alteration.\n\nv. We will promptly provide customers with access to our policies and procedures for the administration of individual data.',
style: normalTextStyle,
),
divider,
Text(
'We are focused on leading our business as per these standards with a specific end goal to guarantee that the privacy of individual data is secure and maintained.',
style: normalTextStyle,
),
],
),
),
),
);
}
}
Loading

0 comments on commit 40aa95d

Please sign in to comment.