Skip to content

Commit

Permalink
chore:update home.dart
Browse files Browse the repository at this point in the history
  • Loading branch information
dev-Roshan-lab committed Jan 19, 2024
1 parent 890622c commit 2da7cbf
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 8 deletions.
16 changes: 16 additions & 0 deletions lib/main.dart
Original file line number Diff line number Diff line change
@@ -1,11 +1,27 @@
import 'package:firebase_core/firebase_core.dart';
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:srm_timetable/pages/auth.dart';
import 'package:srm_timetable/pages/home.dart';
import 'package:srm_timetable/pages/onboard.dart';


Future<void> _firebaseMessagingBackgroundHandler(RemoteMessage message) async {
await Firebase.initializeApp();

if (kDebugMode) {
print("Handling a background message: ${message.messageId}");
print('Message data: ${message.data}');
print('Message notification: ${message.notification?.title}');
print('Message notification: ${message.notification?.body}');
}
}


Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
FirebaseMessaging.onBackgroundMessage(_firebaseMessagingBackgroundHandler);
await Firebase.initializeApp(
options: const FirebaseOptions(
apiKey: "AIzaSyDpPLA4Nt1FY6hsoseVPYD2JRP7e9ENKD4",
Expand Down
11 changes: 10 additions & 1 deletion lib/pages/home.dart
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,17 @@ class _HomeState extends State<Home> {
// TODO: implement FCM getToken()
// TODO: implement FCM notification listner subscriber
// TODO: implement home UI

Map dummyData = {
"Day 1" : ["Class 1", "Class 2", "Class 3", "Class 4", "Class 5", "Class 6", "Class 7", "Class 8", "Class 9"],
"Day 2" : ["Class 1", "Class 2", "Class 3", "Class 4", "Class 5", "Class 6", "Class 7", "Class 8", "Class 9"],
"Day 3" : ["Class 1", "Class 2", "Class 3", "Class 4", "Class 5", "Class 6", "Class 7", "Class 8", "Class 9"],
"Day 4" : ["Class 1", "Class 2", "Class 3", "Class 4", "Class 5", "Class 6", "Class 7", "Class 8", "Class 9"],
"Day 5" : ["Class 1", "Class 2", "Class 3", "Class 4", "Class 5", "Class 6", "Class 7", "Class 8", "Class 9"],
};

@override
Widget build(BuildContext context) {
return Scaffold();
}
}
}
21 changes: 14 additions & 7 deletions lib/pages/onboard.dart
Original file line number Diff line number Diff line change
Expand Up @@ -373,7 +373,6 @@ class _OnboardState extends State<Onboard> {
});
String fileName =
"${year.toString()}_${_class.replaceAll(" ", "_").toLowerCase()}_${_section.toLowerCase()}.json";
print(fileName);
http.Response res = await http.get(Uri.parse(
'https://raw.githubusercontent.com/LiveWiresSRM2023/srm_auto_timetable_app/website/assets/json/$fileName'));
if (res.statusCode == 404) {
Expand All @@ -399,12 +398,12 @@ class _OnboardState extends State<Onboard> {
print(timetableData.runtimeType);
Map parsedTimetableData = timetableData;
/* Store the timetable in the below format
{
"Day 1" : [],
...
"Day 5" : [],
}
*/
{
"Day 1" : [],
...
"Day 5" : [],
}
*/
Map<String, List<dynamic>> compressedTimetable = {};
// List of only the values of the JSON which is again a Map
List dayOrdersValues =
Expand Down Expand Up @@ -466,6 +465,14 @@ class _OnboardState extends State<Onboard> {
criticalAlert: false,
provisional: true,
sound: true);
// VAPIDKEY is only for web
String? token =
await FirebaseMessaging
.instance
.getToken(
vapidKey:
"BN5mU-ItDRP9h6hYRzCEoyr8skSotDZrYHcYKZULFEshJLaAs9k_qhGOptJdv7tsJKgoUFS7ofyGEWMlwGJiLF0");
print(token);
if (!mounted) return;
Navigator.pop(context);
setState(() =>
Expand Down
28 changes: 28 additions & 0 deletions web/firebase-messaging-sw.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
importScripts("https://www.gstatic.com/firebasejs/9.6.10/firebase-app-compat.js");
importScripts("https://www.gstatic.com/firebasejs/9.6.10/firebase-messaging-compat.js");

const firebaseConfig = {
apiKey: "AIzaSyDpPLA4Nt1FY6hsoseVPYD2JRP7e9ENKD4",
authDomain: "srm-timetable-bb661.firebaseapp.com",
projectId: "srm-timetable-bb661",
storageBucket: "srm-timetable-bb661.appspot.com",
messagingSenderId: "1062574904489",
appId: "1:1062574904489:web:28469fb2790052f36485b8",
measurementId: "G-0HHRGFQ665"
};

firebase.initializeApp(firebaseConfig);
const messaging = firebase.messaging();

messaging.setBackgroundMessageHandler(function (payload) {
console.log('[firebase-messaging-sw.js] Received background message ', payload);
// Customize notification here
const notificationTitle = 'Background Message Title';
const notificationOptions = {
body: 'Background Message body.',
icon: '/firebase-logo.png'
};

return self.registration.showNotification(notificationTitle,
notificationOptions);
});

0 comments on commit 2da7cbf

Please sign in to comment.