fixed shit in a really shitty way uwu
This commit is contained in:
parent
449b1d63c5
commit
2c333d4cc2
@ -69,19 +69,21 @@ class EditSubjectScreenState extends State<EditSubjectScreen> {
|
|||||||
Map<String, String> subs = await databaseProvider.userQuery
|
Map<String, String> subs = await databaseProvider.userQuery
|
||||||
.renamedSubjects(userId: user.id!);
|
.renamedSubjects(userId: user.id!);
|
||||||
subs.remove(widget.subject.id);
|
subs.remove(widget.subject.id);
|
||||||
databaseProvider.userStore
|
await databaseProvider.userStore
|
||||||
.storeRenamedSubjects(subs, userId: user.id!);
|
.storeRenamedSubjects(subs, userId: user.id!);
|
||||||
|
|
||||||
Map<String, String> teach = await databaseProvider.userQuery
|
Map<String, String> teach = await databaseProvider.userQuery
|
||||||
.renamedTeachers(userId: user.id!);
|
.renamedTeachers(userId: user.id!);
|
||||||
teach.remove(widget.teacher.id);
|
teach.remove(widget.teacher.id);
|
||||||
databaseProvider.userStore
|
await databaseProvider.userStore
|
||||||
.storeRenamedTeachers(teach, userId: user.id!);
|
.storeRenamedTeachers(teach, userId: user.id!);
|
||||||
|
|
||||||
updateProviders();
|
updateProviders();
|
||||||
|
|
||||||
setState(() {});
|
// im crying rn
|
||||||
Navigator.of(context).pop();
|
Navigator.of(context).pop();
|
||||||
|
Navigator.of(context).pop();
|
||||||
|
setState(() {});
|
||||||
},
|
},
|
||||||
icon: const Icon(FeatherIcons.trash2),
|
icon: const Icon(FeatherIcons.trash2),
|
||||||
),
|
),
|
||||||
|
@ -80,13 +80,13 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
|
||||||
editedShit = Provider.of<GradeProvider>(context, listen: false)
|
// editedShit = Provider.of<GradeProvider>(context, listen: false)
|
||||||
.grades
|
// .grades
|
||||||
.where((e) => e.teacher.isRenamed || e.subject.isRenamed)
|
// .where((e) => e.teacher.isRenamed || e.subject.isRenamed)
|
||||||
// .map((e) => e.subject)
|
// // .map((e) => e.subject)
|
||||||
.toSet()
|
// .toSet()
|
||||||
.toList()
|
// .toList()
|
||||||
..sort((a, b) => a.subject.name.compareTo(b.subject.name));
|
// ..sort((a, b) => a.subject.name.compareTo(b.subject.name));
|
||||||
|
|
||||||
List<Grade> other = Provider.of<GradeProvider>(context, listen: false)
|
List<Grade> other = Provider.of<GradeProvider>(context, listen: false)
|
||||||
.grades
|
.grades
|
||||||
@ -134,19 +134,30 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
var added = [];
|
var added = [];
|
||||||
var i = 0;
|
var i = 0;
|
||||||
|
|
||||||
|
List<Grade> need = [];
|
||||||
for (var s in editedShit) {
|
for (var s in editedShit) {
|
||||||
if (added.contains(s.subject.id)) continue;
|
if (added.contains(s.subject.id)) continue;
|
||||||
|
need.add(s);
|
||||||
|
added.add(s.subject.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (var s in need) {
|
||||||
Widget widget = PanelButton(
|
Widget widget = PanelButton(
|
||||||
onPressed: () => Navigator.of(context, rootNavigator: true).push(
|
onPressed: () async {
|
||||||
|
Navigator.of(context, rootNavigator: true).push(
|
||||||
CupertinoPageRoute(
|
CupertinoPageRoute(
|
||||||
builder: (context) => EditSubjectScreen(
|
builder: (context) => EditSubjectScreen(
|
||||||
subject: s.subject,
|
subject: s.subject,
|
||||||
teacher: s.teacher, // not sure why, but it works tho
|
teacher: s.teacher, // not sure why, but it works tho
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
);
|
||||||
title: Text(
|
|
||||||
|
setState(() {});
|
||||||
|
},
|
||||||
|
title: Column(
|
||||||
|
children: [
|
||||||
|
Text(
|
||||||
(s.subject.isRenamed && settingsProvider.renamedSubjectsEnabled
|
(s.subject.isRenamed && settingsProvider.renamedSubjectsEnabled
|
||||||
? s.subject.renamedTo
|
? s.subject.renamedTo
|
||||||
: s.subject.name.capital()) ??
|
: s.subject.name.capital()) ??
|
||||||
@ -158,6 +169,9 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
: FontStyle.normal,
|
: FontStyle.normal,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
Text((i + 1).toString() + '_' + need.length.toString()),
|
||||||
|
],
|
||||||
|
),
|
||||||
leading: Icon(
|
leading: Icon(
|
||||||
SubjectIcon.resolveVariant(context: context, subject: s.subject),
|
SubjectIcon.resolveVariant(context: context, subject: s.subject),
|
||||||
size: 22.0,
|
size: 22.0,
|
||||||
@ -170,13 +184,12 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
),
|
),
|
||||||
borderRadius: BorderRadius.vertical(
|
borderRadius: BorderRadius.vertical(
|
||||||
top: Radius.circular(i == 0 ? 12.0 : 4.0),
|
top: Radius.circular(i == 0 ? 12.0 : 4.0),
|
||||||
bottom: Radius.circular(i + 1 == editedShit.length ? 12.0 : 4.0),
|
bottom: Radius.circular(i + 1 == need.length ? 12.0 : 4.0),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
i += 1;
|
i += 1;
|
||||||
subjectTiles.add(widget);
|
subjectTiles.add(widget);
|
||||||
added.add(s.subject.id);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
tiles = subjectTiles;
|
tiles = subjectTiles;
|
||||||
@ -187,6 +200,15 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
settingsProvider = Provider.of<SettingsProvider>(context);
|
settingsProvider = Provider.of<SettingsProvider>(context);
|
||||||
user = Provider.of<UserProvider>(context);
|
user = Provider.of<UserProvider>(context);
|
||||||
|
|
||||||
|
// get edited shit
|
||||||
|
editedShit = Provider.of<GradeProvider>(context, listen: false)
|
||||||
|
.grades
|
||||||
|
.where((e) => e.teacher.isRenamed || e.subject.isRenamed)
|
||||||
|
// .map((e) => e.subject)
|
||||||
|
.toSet()
|
||||||
|
.toList()
|
||||||
|
..sort((a, b) => a.subject.name.compareTo(b.subject.name));
|
||||||
|
|
||||||
String themeModeText = {
|
String themeModeText = {
|
||||||
ThemeMode.light: "light".i18n,
|
ThemeMode.light: "light".i18n,
|
||||||
ThemeMode.dark: "dark".i18n,
|
ThemeMode.dark: "dark".i18n,
|
||||||
@ -194,6 +216,7 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
}[settingsProvider.theme] ??
|
}[settingsProvider.theme] ??
|
||||||
"?";
|
"?";
|
||||||
|
|
||||||
|
// build da tilés
|
||||||
buildSubjectTiles();
|
buildSubjectTiles();
|
||||||
|
|
||||||
return AnimatedBuilder(
|
return AnimatedBuilder(
|
||||||
@ -635,6 +658,8 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
setState(() {});
|
||||||
// _subjectName.text = "";
|
// _subjectName.text = "";
|
||||||
},
|
},
|
||||||
iconSize: 14,
|
iconSize: 14,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user