Skip to content

Commit

Permalink
Merge branch 'main' into prod/festapp
Browse files Browse the repository at this point in the history
  • Loading branch information
miakh committed Nov 15, 2024
2 parents 3b6798a + d6e382e commit e6fc817
Show file tree
Hide file tree
Showing 40 changed files with 657 additions and 441 deletions.
2 changes: 1 addition & 1 deletion android/app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<application
android:label="Fstapp"
android:name="${applicationName}"
android:icon="@mipmap/launcher_icon"
android:icon="@mipmap/ic_launcher"
android:enableOnBackInvokedCallback="true">
<activity
android:name=".MainActivity"
Expand Down
Binary file modified android/app/src/main/res/mipmap-hdpi/ic_launcher.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 not shown.
Binary file modified android/app/src/main/res/mipmap-mdpi/ic_launcher.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 not shown.
Binary file modified android/app/src/main/res/mipmap-xhdpi/ic_launcher.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 not shown.
Binary file modified android/app/src/main/res/mipmap-xxhdpi/ic_launcher.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 not shown.
Binary file modified android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.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 not shown.
5 changes: 4 additions & 1 deletion assets/translations/cs.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "Město",
"Birth year": "Rok narození",
"Sign up": "Vytvořit účet",
"I'm": "Jsem",
"I am": "Jsem",
"First time?": "Poprvé?",
"Add existing": "Přidat už vytvořeného",
"Registration is almost complete!": "Registrace je téměř dokončená!",
Expand Down Expand Up @@ -277,5 +277,8 @@
"Start time must be earlier than end time.": "Čas začátku musí být dřívější než čas konce.",
"You are offline. Please check your internet connection.": "Jsi offline. Zkontroluj své internetové připojení.",
"More": "Více",
"Songbook": "Zpěvník",
"Smaller": "Menší",
"Larger": "Větší",
"_": "_"
}
5 changes: 4 additions & 1 deletion assets/translations/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "Stadt",
"Birth year": "Geburtsjahr",
"Sign up": "Anmelden",
"I'm": "Ich bin",
"I am": "Ich bin",
"First time?": "Zum ersten Mal?",
"Add existing": "Bestehendes hinzufügen",
"Registration is almost complete!": "Die Registrierung ist fast abgeschlossen!",
Expand Down Expand Up @@ -277,5 +277,8 @@
"Start time must be earlier than end time.": "Der Startzeitpunkt muss früher als der Endzeitpunkt sein.",
"You are offline. Please check your internet connection.": "Du bist offline. Bitte überprüfe deine Internetverbindung.",
"More": "Mehr",
"Songbook": "Liederbuch",
"Smaller": "Kleiner",
"Larger": "Größer",
"_": "_"
}
5 changes: 4 additions & 1 deletion assets/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "City",
"Birth year": "Birth year",
"Sign up": "Sign up",
"I'm": "I'm",
"I am": "I am",
"First time?": "First time?",
"Add existing": "Add existing",
"Registration is almost complete!": "Registration is almost complete!",
Expand Down Expand Up @@ -277,5 +277,8 @@
"Start time must be earlier than end time.": "Start time must be earlier than end time.",
"You are offline. Please check your internet connection.": "You are offline. Please check your internet connection.",
"More": "More",
"Songbook": "Songbook",
"Smaller": "Smaller",
"Larger": "Larger",
"_":"_"
}
5 changes: 4 additions & 1 deletion assets/translations/pl.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "Miasto",
"Birth year": "Rok urodzenia",
"Sign up": "Zarejestruj się",
"I'm": "Jestem",
"I am": "Jestem",
"First time?": "Pierwszy raz?",
"Add existing": "Dodaj istniejący",
"Registration is almost complete!": "Rejestracja jest prawie zakończona!",
Expand Down Expand Up @@ -276,5 +276,8 @@
"Start time must be earlier than end time.": "Czas rozpoczęcia musi być wcześniejszy niż czas zakończenia.",
"You are offline. Please check your internet connection.": "Jesteś offline. Sprawdź swoje połączenie z internetem.",
"More": "Więcej",
"Songbook": "Śpiewnik",
"Smaller": "Mniejszy",
"Larger": "Większy",
"_": "_"
}
5 changes: 4 additions & 1 deletion assets/translations/sk.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "Mesto",
"Birth year": "Rok narodenia",
"Sign up": "Zaregistrovať sa",
"I'm": "Som",
"I am": "Som",
"First time?": "Prvýkrát?",
"Add existing": "Pridať existujúci",
"Registration is almost complete!": "Registrácia je takmer dokončená!",
Expand Down Expand Up @@ -277,5 +277,8 @@
"Start time must be earlier than end time.": "Čas začiatku musí byť skorší ako čas konca.",
"You are offline. Please check your internet connection.": "Si offline. Skontroluj svoje internetové pripojenie.",
"More": "Viac",
"Songbook": "Spevník",
"Smaller": "Menší",
"Larger": "Väčší",
"_": "_"
}
5 changes: 4 additions & 1 deletion assets/translations/uk.json
Original file line number Diff line number Diff line change
Expand Up @@ -175,7 +175,7 @@
"City": "Місто",
"Birth year": "Рік народження",
"Sign up": "Зареєструватися",
"I'm": "Я",
"I am": "Я",
"First time?": "Вперше?",
"Add existing": "Додати існуючий",
"Registration is almost complete!": "Реєстрацію майже завершено!",
Expand Down Expand Up @@ -277,5 +277,8 @@
"Start time must be earlier than end time.": "Час початку повинен бути раніше часу закінчення.",
"You are offline. Please check your internet connection.": "Ви офлайн. Будь ласка, перевірте своє інтернет-з'єднання.",
"More": "Більше",
"Songbook": "Пісенник",
"Smaller": "Менше",
"Larger": "Більше",
"_": "_"
}
4 changes: 2 additions & 2 deletions flutter_launcher_icons.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
dev_dependencies:
flutter_launcher_icons: "^0.13.1"
flutter_launcher_icons: "^0.14.1"

flutter_launcher_icons:
android: "launcher_icon"
android: true
ios: true
image_path: "assets/icons/fstappicon.png"
min_sdk_android: 21 # android min sdk min:16, default 21
Expand Down
6 changes: 3 additions & 3 deletions ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -675,7 +675,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 41860034A371AF7B12D79E87 /* Pods-OneSignalNotificationServiceExtension.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_OBJC_WEAK = YES;
Expand Down Expand Up @@ -713,7 +713,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 123F1F10B8600F1A8A29F7E1 /* Pods-OneSignalNotificationServiceExtension.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_OBJC_WEAK = YES;
Expand Down Expand Up @@ -750,7 +750,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = 11F34DEAD2F757956490C165 /* Pods-OneSignalNotificationServiceExtension.profile.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = AppIcon;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++20";
CLANG_ENABLE_OBJC_WEAK = YES;
Expand Down
123 changes: 1 addition & 122 deletions ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
Original file line number Diff line number Diff line change
@@ -1,122 +1 @@
{
"images" : [
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "2x",
"size" : "20x20"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "3x",
"size" : "20x20"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "1x",
"size" : "29x29"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "2x",
"size" : "29x29"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "3x",
"size" : "29x29"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "2x",
"size" : "40x40"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "3x",
"size" : "40x40"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "2x",
"size" : "60x60"
},
{
"filename" : "[email protected]",
"idiom" : "iphone",
"scale" : "3x",
"size" : "60x60"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "1x",
"size" : "20x20"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "2x",
"size" : "20x20"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "1x",
"size" : "29x29"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "2x",
"size" : "29x29"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "1x",
"size" : "40x40"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "2x",
"size" : "40x40"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "1x",
"size" : "76x76"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "2x",
"size" : "76x76"
},
{
"filename" : "[email protected]",
"idiom" : "ipad",
"scale" : "2x",
"size" : "83.5x83.5"
},
{
"filename" : "[email protected]",
"idiom" : "ios-marketing",
"scale" : "1x",
"size" : "1024x1024"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{"images":[{"size":"20x20","idiom":"iphone","filename":"[email protected]","scale":"2x"},{"size":"20x20","idiom":"iphone","filename":"[email protected]","scale":"3x"},{"size":"29x29","idiom":"iphone","filename":"[email protected]","scale":"1x"},{"size":"29x29","idiom":"iphone","filename":"[email protected]","scale":"2x"},{"size":"29x29","idiom":"iphone","filename":"[email protected]","scale":"3x"},{"size":"40x40","idiom":"iphone","filename":"[email protected]","scale":"2x"},{"size":"40x40","idiom":"iphone","filename":"[email protected]","scale":"3x"},{"size":"57x57","idiom":"iphone","filename":"[email protected]","scale":"1x"},{"size":"57x57","idiom":"iphone","filename":"[email protected]","scale":"2x"},{"size":"60x60","idiom":"iphone","filename":"[email protected]","scale":"2x"},{"size":"60x60","idiom":"iphone","filename":"[email protected]","scale":"3x"},{"size":"20x20","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"20x20","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"29x29","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"29x29","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"40x40","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"40x40","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"50x50","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"50x50","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"72x72","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"72x72","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"76x76","idiom":"ipad","filename":"[email protected]","scale":"1x"},{"size":"76x76","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"83.5x83.5","idiom":"ipad","filename":"[email protected]","scale":"2x"},{"size":"1024x1024","idiom":"ios-marketing","filename":"[email protected]","scale":"1x"}],"info":{"version":1,"author":"xcode"}}
2 changes: 1 addition & 1 deletion lib/AppRouter.dart
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ class AppRouter extends RootStackRouter {
AutoRoute(page: MyScheduleRoute.page, path: "/:{$LINK}/${MySchedulePage.ROUTE}"),
AutoRoute(page: ProgramViewRoute.page, path: "/:{$LINK}/${ProgramViewPage.ROUTE}"),
AutoRoute(page: GameRoute.page, path: "/:{$LINK}/${GamePage.ROUTE}"),
AutoRoute(page: SongRoute.page, path: "/:{$LINK}/${SongPage.ROUTE}"),

AutoRoute(page: HomeRoute.page, path: "/:{$LINK}", children: [
AutoRoute(page: UserRoute.page, path: "${UserPage.ROUTE}"),
Expand All @@ -56,7 +57,6 @@ class AppRouter extends RootStackRouter {
AutoRoute(page: EventRoute.page, path: ":id")
]),
AutoRoute(page: NewsRoute.page, path: "${NewsPage.ROUTE}"),
AutoRoute(page: SongRoute.page, path: "${SongPage.ROUTE}"),
AutoRoute(page: MapRoute.page, path: "${MapPage.ROUTE}", maintainState: false, children: [
AutoRoute(path: ':id', page: MapRoute.page,),
]),
Expand Down
3 changes: 2 additions & 1 deletion lib/appConfig.dart
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ class AppConfig {
static const bool isOwnProgramSupported = true;
static const bool isNotificationsSupported = true;
static const bool isWebNotificationsSupported = true;
static const bool isUsersImportSupported = true;
static const bool isGameSupported = true;
static const bool isSongBookSupported = true;
static const String oneSignalAppId = '73f77f22-961a-4ded-9647-e33a7ac14f90';

static const int organization = 1;
Expand Down
46 changes: 46 additions & 0 deletions lib/components/dataGrid/DataGridHelper.dart
Original file line number Diff line number Diff line change
@@ -1,16 +1,62 @@
import 'package:collection/collection.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:fstapp/AppRouter.gr.dart';
import 'package:fstapp/RouterService.dart';
import 'package:fstapp/dataModels/IconModel.dart';
import 'package:fstapp/dataModels/PlaceModel.dart';
import 'package:fstapp/dataModels/UserInfoModel.dart';
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:fstapp/dataServices/DbOccasions.dart';
import 'package:fstapp/pages/HtmlEditorPage.dart';
import 'package:fstapp/themeConfig.dart';
import 'package:fstapp/widgets/CustomThreeStateCheckbox.dart';
import 'package:pluto_grid_plus/pluto_grid_plus.dart';

class DataGridHelper
{
static Widget buildHtmlEditorButton({
required BuildContext context,
required String field,
required PlutoColumnRendererContext rendererContext,
required Future<String?> Function() loadContent,
}) {
String? textToEdit;
String? oldText = rendererContext.row.cells[field]?.value;
if (oldText != null) {
textToEdit = oldText;
}

return ElevatedButton(
onPressed: () async {
Map<String, dynamic> param = {
HtmlEditorPage.parContent: textToEdit,
HtmlEditorPage.parLoad: loadContent,
};

RouterService.navigatePageInfo(context, HtmlEditorRoute(content: param)).then((value) async {
if (value != null) {
var newText = value as String;
if (newText != textToEdit) {
rendererContext.row.cells[field]?.value = newText;
var cell = rendererContext.row.cells[field]!;
rendererContext.stateManager.changeCellValue(cell, cell.value, force: true);
}
}
});
},
child: Row(
children: [
const Icon(Icons.edit),
Padding(
padding: const EdgeInsets.all(6),
child: Text("Edit".tr()),
),
],
),
);
}

static T? getValueOrNull<T>(dynamic value, {T? emptyValue}) {
if (value == emptyValue || value == "") return null;
if (value is String) return value.trim() as T;
Expand Down
12 changes: 12 additions & 0 deletions lib/dataModels/InformationModel.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import 'package:pluto_grid_plus/pluto_grid_plus.dart';

class InformationModel extends IPlutoRowModel {
static const String gameType = "game";
static const String songType = "song";

int? id;
InformationHiddenModel? informationHidden;
Expand Down Expand Up @@ -79,6 +80,17 @@ class InformationModel extends IPlutoRowModel {
);
}

static InformationModel fromPlutoJsonSong(Map<String, dynamic> json) {
return InformationModel(
id: json[Tb.information.id] == -1 ? null : json[Tb.information.id],
title: json[Tb.information.title],
description: json[Tb.information.description],
type: songType,
isHidden: json[Tb.information.is_hidden] == "true" ? true : false,
order: json[Tb.information.order],
);
}

@override
PlutoRow toPlutoRow() {
return PlutoRow(cells: {
Expand Down
Loading

0 comments on commit e6fc817

Please sign in to comment.