Skip to content

Commit

Permalink
register link url launch
Browse files Browse the repository at this point in the history
  • Loading branch information
seoyoungk0909 committed Feb 8, 2023
1 parent da9fa91 commit 9ad435a
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 3 deletions.
4 changes: 4 additions & 0 deletions lib/models/event_model.dart
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ class Event {
late DateTime eventTime;
late DateTime uploadTime;
bool formal = false;
String registerLink = "www.google.com";
// bool save = false;
DocumentReference<Map<String, dynamic>>? firebaseDocRef;

Expand All @@ -37,6 +38,7 @@ class Event {
DateTime? eventHeldTime,
DateTime? eventUploadTime,
bool? eventFormality,
String? eventRegisterLink,
// bool? savedEvent,
DocumentReference<Map<String, dynamic>>? docRef,
}) {
Expand All @@ -51,6 +53,7 @@ class Event {
uploadTime = eventUploadTime ?? DateTime.now();
eventTime = eventHeldTime ?? DateTime.now();
formal = eventFormality ?? formal;
registerLink = eventRegisterLink ?? registerLink;
// save = savedEvent ?? save;
firebaseDocRef = docRef;
}
Expand Down Expand Up @@ -86,6 +89,7 @@ class Event {
eventUploadTime: (eventData.get('uploadTime') as Timestamp).toDate(),
eventHeldTime: (eventData.get('eventTime') as Timestamp).toDate(),
eventFormality: (eventData.get('formal')),
eventRegisterLink: eventData.get('registration link'),
// savedEvent: (eventData.get('save')),
docRef: firebaseDoc);
}
Expand Down
14 changes: 12 additions & 2 deletions lib/views/event_detail_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import '../models/event_model.dart';
import 'package:aus/utils/color_utils.dart';
import 'components/event_ui.dart';
import 'package:intl/intl.dart';
import 'package:url_launcher/url_launcher.dart';

class EventDetailPage extends StatefulWidget {
const EventDetailPage({Key? key, required this.title}) : super(key: key);
Expand All @@ -23,6 +24,13 @@ class EventDetailPage extends StatefulWidget {
}

class EventDetailPageState extends State<EventDetailPage> {
Future<void> _launchURL(String url) async {
final Uri uri = Uri(scheme: "https", host: url);
if (!await launchUrl(uri, mode: LaunchMode.externalApplication)) {
throw "Can not launch $url";
}
}

@override
Widget build(BuildContext context) {
final arguments = (ModalRoute.of(context)?.settings.arguments ??
Expand Down Expand Up @@ -61,9 +69,11 @@ class EventDetailPageState extends State<EventDetailPage> {
children: [
Container(
width: MediaQuery.of(context).size.width * 0.81,
height: 26,
height: 28,
child: ElevatedButton(
onPressed: () {},
onPressed: () async {
_launchURL(controller.event.registerLink);
},
style: ButtonStyle(
backgroundColor: MaterialStateProperty.all(
Theme.of(context).colorScheme.secondary),
Expand Down
2 changes: 1 addition & 1 deletion pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ dependencies:
json_path: 0.4.1
page_transition: 2.0.4
timeago: 3.2.2
url_launcher: 6.1.5
url_launcher: ^6.1.5
firebase_core:
firebase_auth:
cloud_firestore:
Expand Down

0 comments on commit 9ad435a

Please sign in to comment.