Logout button for userProfile and AdminProfile Preliminary endpoints for backend to create and fetch user Removed authguard Refactored loginGoogle to googleAuthService.dart
61 lines
1.6 KiB
Dart
61 lines
1.6 KiB
Dart
import 'dart:convert';
|
|
import 'package:http/http.dart' as http;
|
|
import 'package:insparkspokalen_ui/services/googleAuthService.dart';
|
|
import 'package:insparkspokalen_ui/models/activityModel.dart';
|
|
|
|
class ActivityService {
|
|
final String baseUrl = 'https://group-10-15.pvt.dsv.su.se/activity';
|
|
//final String baseUrl = 'http://localhost:8080/activity';
|
|
|
|
// Hämtar alla aktiviteter
|
|
Future<List<ActivityModel>> fetchActivities() async {
|
|
|
|
try {
|
|
final response = await http.get(Uri.parse('$baseUrl/all'));
|
|
|
|
print("Response body: ${response.body}");
|
|
|
|
if (response.statusCode == 200) {
|
|
final List<dynamic> jsonResponse = json.decode(response.body);
|
|
return jsonResponse
|
|
.map((activity) => ActivityModel.fromJson(activity))
|
|
.toList();
|
|
} else {
|
|
throw Exception(
|
|
'Fel vid hämtning av aktiviteter: ${response.statusCode}',
|
|
);
|
|
}
|
|
} catch (e) {
|
|
throw Exception('Ett fel uppstod vid hämtning av aktiviteter: $e');
|
|
}
|
|
}
|
|
|
|
//Hämta en specifik aktivitet
|
|
//kod
|
|
|
|
// Skapa en ny aktivitet med post
|
|
Future<void> createActivity(ActivityModel activity) async {
|
|
|
|
|
|
try {
|
|
final response = await http.post(
|
|
Uri.parse('$baseUrl/add'),
|
|
headers: {'Content-Type': 'application/json'},
|
|
body: jsonEncode(activity.toJson()),
|
|
);
|
|
|
|
if (response.statusCode != 201) {
|
|
throw Exception(
|
|
'Fel vid skapande av aktivitet: ${response.statusCode}',
|
|
);
|
|
}
|
|
} catch (e) {
|
|
throw Exception('Ett fel uppstod vid skapande av aktivitet: $e');
|
|
}
|
|
}
|
|
|
|
//Ta bort en aktivitet
|
|
|
|
|
|
}
|