Skip to content

Commit 23d2a9c

Browse files
client: hub documents, refactoring
1 parent 92f30e2 commit 23d2a9c

55 files changed

Lines changed: 193 additions & 351 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

school_data_hub_flutter/lib/app_utils/shorebird_code_push_page.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import 'package:flutter_it/flutter_it.dart';
33
import 'package:gap/gap.dart';
44
import 'package:logging/logging.dart';
55
import 'package:school_data_hub_flutter/common/services/notification_service.dart';
6-
import 'package:school_data_hub_flutter/common/widgets/generic_components/bottom_nav_bar_no_filter_button.dart';
6+
import 'package:school_data_hub_flutter/common/widgets/generic_components/bottom_nav_bar/bottom_nav_bar_no_filter_button.dart';
77
import 'package:school_data_hub_flutter/common/widgets/generic_components/generic_app_bar.dart';
88
import 'package:school_data_hub_flutter/core/updater/shorebird_update_manager.dart';
99
import 'package:shorebird_code_push/shorebird_code_push.dart';

school_data_hub_flutter/lib/common/audio/presentation/audio_button.dart

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,14 @@ import 'package:school_data_hub_flutter/common/audio/presentation/widgets/audio_
66
import 'package:school_data_hub_flutter/common/audio/presentation/widgets/audio_thumbnail.dart';
77
import 'package:school_data_hub_flutter/common/services/notification_service.dart';
88
import 'package:school_data_hub_flutter/common/widgets/dialogs/confirmation_dialog.dart';
9-
import 'package:school_data_hub_flutter/core/session/hub_session_manager.dart';
9+
import 'package:school_data_hub_flutter/core/auth/auth_clearance_helper.dart';
1010

1111
/// A button that displays an audio thumbnail and handles playback.
1212
///
1313
/// On tap, it pre-loads the audio and shows the player overlay.
1414
/// On long press (admin only), it allows deletion of the audio file.
1515
class AudioButton extends StatefulWidget {
16-
const AudioButton({
17-
required this.file,
18-
required this.onDelete,
19-
super.key,
20-
});
16+
const AudioButton({required this.file, required this.onDelete, super.key});
2117

2218
/// The audio document to display and play.
2319
final HubDocument file;
@@ -73,7 +69,7 @@ class _AudioButtonState extends State<AudioButton> {
7369
}
7470

7571
Future<void> _handleLongPress() async {
76-
if (!di<HubSessionManager>().isAdmin) {
72+
if (!AuthClearanceHelper.isCreatorOrAdmin(widget.file.createdBy)) {
7773
di<NotificationService>().showSnackBar(
7874
NotificationType.error,
7975
'Nur Admins können Dokumente löschen',

school_data_hub_flutter/lib/common/widgets/app_async_action_button.dart renamed to school_data_hub_flutter/lib/common/widgets/generic_async_action_button.dart

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import 'package:flutter/material.dart';
22
import 'package:school_data_hub_flutter/common/theme/app_colors.dart';
33

4-
class AppAsyncActionButton extends StatelessWidget {
4+
class GenericAsyncActionButton extends StatelessWidget {
55
final Future function;
66
final String title;
7-
const AppAsyncActionButton({
7+
const GenericAsyncActionButton({
88
super.key,
99
required this.function,
1010
required this.title,
@@ -20,15 +20,13 @@ class AppAsyncActionButton extends StatelessWidget {
2020
width: double.infinity,
2121
child: ElevatedButton(
2222
style: ElevatedButton.styleFrom(
23-
backgroundColor: AppColors.appStyleButtonColor,
24-
minimumSize: const Size.fromHeight(50)),
23+
backgroundColor: AppColors.appStyleButtonColor,
24+
minimumSize: const Size.fromHeight(50),
25+
),
2526
onPressed: () async {
2627
await function;
2728
},
28-
child: Text(
29-
title,
30-
style: const TextStyle(fontSize: 17.0),
31-
),
29+
child: Text(title, style: const TextStyle(fontSize: 17.0)),
3230
),
3331
),
3432
);

school_data_hub_flutter/lib/common/widgets/generic_components/bottom_nav_bar_no_filter_button.dart renamed to school_data_hub_flutter/lib/common/widgets/generic_components/bottom_nav_bar/bottom_nav_bar_no_filter_button.dart

File renamed without changes.

school_data_hub_flutter/lib/common/widgets/generic_components/generic_bottom_nav_bar.dart renamed to school_data_hub_flutter/lib/common/widgets/generic_components/bottom_nav_bar/generic_bottom_nav_bar.dart

File renamed without changes.

school_data_hub_flutter/lib/common/widgets/generic_components/generic_bottom_nav_bar_no_filter.dart renamed to school_data_hub_flutter/lib/common/widgets/generic_components/bottom_nav_bar/generic_bottom_nav_bar_no_filter.dart

File renamed without changes.

school_data_hub_flutter/lib/common/widgets/generic_filter_button.dart renamed to school_data_hub_flutter/lib/common/widgets/generic_components/generic_filter_button.dart

File renamed without changes.

school_data_hub_flutter/lib/common/widgets/cached_image_or_download_inage.dart renamed to school_data_hub_flutter/lib/common/widgets/get_cached_image_or_download_inage.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import 'package:school_data_hub_flutter/app_utils/custom_encrypter.dart';
66
import 'package:school_data_hub_flutter/common/services/notification_service.dart';
77
import 'package:flutter_it/flutter_it.dart';
88

9-
Future<Image> cachedImageOrDownloadImage({
9+
Future<Image> getCachedImageOrDownloadImage({
1010
required String documentId,
1111
required bool decrypt,
1212
}) async {

school_data_hub_flutter/lib/common/widgets/custom_crop_image.dart renamed to school_data_hub_flutter/lib/common/widgets/hub_document/custom_crop_image.dart

File renamed without changes.

school_data_hub_flutter/lib/common/widgets/encrypted_document_image.dart renamed to school_data_hub_flutter/lib/common/widgets/hub_document/encrypted_document_image.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import 'package:flutter/material.dart';
2+
import 'package:flutter_it/flutter_it.dart';
23
import 'package:school_data_hub_flutter/common/theme/app_colors.dart';
3-
import 'package:school_data_hub_flutter/common/widgets/cached_image_or_download_inage.dart';
4-
import 'package:watch_it/watch_it.dart';
4+
import 'package:school_data_hub_flutter/common/widgets/get_cached_image_or_download_inage.dart';
55
import 'package:widget_zoom/widget_zoom.dart';
66

77
class EncryptedDocumentImage extends WatchingWidget {
@@ -29,7 +29,7 @@ class EncryptedDocumentImage extends WatchingWidget {
2929
WidgetZoom(
3030
heroAnimationTag: '$documentId$randomPart',
3131
zoomWidget: FutureBuilder<Image>(
32-
future: cachedImageOrDownloadImage(
32+
future: getCachedImageOrDownloadImage(
3333
documentId: documentId,
3434
decrypt: true,
3535
),

0 commit comments

Comments
 (0)