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
|
||||
.renamedSubjects(userId: user.id!);
|
||||
subs.remove(widget.subject.id);
|
||||
databaseProvider.userStore
|
||||
await databaseProvider.userStore
|
||||
.storeRenamedSubjects(subs, userId: user.id!);
|
||||
|
||||
Map<String, String> teach = await databaseProvider.userQuery
|
||||
.renamedTeachers(userId: user.id!);
|
||||
teach.remove(widget.teacher.id);
|
||||
databaseProvider.userStore
|
||||
await databaseProvider.userStore
|
||||
.storeRenamedTeachers(teach, userId: user.id!);
|
||||
|
||||
updateProviders();
|
||||
|
||||
setState(() {});
|
||||
// im crying rn
|
||||
Navigator.of(context).pop();
|
||||
Navigator.of(context).pop();
|
||||
setState(() {});
|
||||
},
|
||||
icon: const Icon(FeatherIcons.trash2),
|
||||
),
|
||||
|
@ -80,13 +80,13 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
void initState() {
|
||||
super.initState();
|
||||
|
||||
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));
|
||||
// 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));
|
||||
|
||||
List<Grade> other = Provider.of<GradeProvider>(context, listen: false)
|
||||
.grades
|
||||
@ -134,29 +134,43 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
var added = [];
|
||||
var i = 0;
|
||||
|
||||
List<Grade> need = [];
|
||||
for (var s in editedShit) {
|
||||
if (added.contains(s.subject.id)) continue;
|
||||
need.add(s);
|
||||
added.add(s.subject.id);
|
||||
}
|
||||
|
||||
for (var s in need) {
|
||||
Widget widget = PanelButton(
|
||||
onPressed: () => Navigator.of(context, rootNavigator: true).push(
|
||||
CupertinoPageRoute(
|
||||
builder: (context) => EditSubjectScreen(
|
||||
subject: s.subject,
|
||||
teacher: s.teacher, // not sure why, but it works tho
|
||||
onPressed: () async {
|
||||
Navigator.of(context, rootNavigator: true).push(
|
||||
CupertinoPageRoute(
|
||||
builder: (context) => EditSubjectScreen(
|
||||
subject: s.subject,
|
||||
teacher: s.teacher, // not sure why, but it works tho
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
title: Text(
|
||||
(s.subject.isRenamed && settingsProvider.renamedSubjectsEnabled
|
||||
? s.subject.renamedTo
|
||||
: s.subject.name.capital()) ??
|
||||
'',
|
||||
style: TextStyle(
|
||||
color: AppColors.of(context).text.withOpacity(.95),
|
||||
fontStyle: settingsProvider.renamedSubjectsItalics
|
||||
? FontStyle.italic
|
||||
: FontStyle.normal,
|
||||
),
|
||||
);
|
||||
|
||||
setState(() {});
|
||||
},
|
||||
title: Column(
|
||||
children: [
|
||||
Text(
|
||||
(s.subject.isRenamed && settingsProvider.renamedSubjectsEnabled
|
||||
? s.subject.renamedTo
|
||||
: s.subject.name.capital()) ??
|
||||
'',
|
||||
style: TextStyle(
|
||||
color: AppColors.of(context).text.withOpacity(.95),
|
||||
fontStyle: settingsProvider.renamedSubjectsItalics
|
||||
? FontStyle.italic
|
||||
: FontStyle.normal,
|
||||
),
|
||||
),
|
||||
Text((i + 1).toString() + '_' + need.length.toString()),
|
||||
],
|
||||
),
|
||||
leading: Icon(
|
||||
SubjectIcon.resolveVariant(context: context, subject: s.subject),
|
||||
@ -170,13 +184,12 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
),
|
||||
borderRadius: BorderRadius.vertical(
|
||||
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;
|
||||
subjectTiles.add(widget);
|
||||
added.add(s.subject.id);
|
||||
}
|
||||
|
||||
tiles = subjectTiles;
|
||||
@ -187,6 +200,15 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
settingsProvider = Provider.of<SettingsProvider>(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 = {
|
||||
ThemeMode.light: "light".i18n,
|
||||
ThemeMode.dark: "dark".i18n,
|
||||
@ -194,6 +216,7 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
}[settingsProvider.theme] ??
|
||||
"?";
|
||||
|
||||
// build da tilés
|
||||
buildSubjectTiles();
|
||||
|
||||
return AnimatedBuilder(
|
||||
@ -635,6 +658,8 @@ class PersonalizeSettingsScreenState extends State<PersonalizeSettingsScreen>
|
||||
),
|
||||
),
|
||||
);
|
||||
|
||||
setState(() {});
|
||||
// _subjectName.text = "";
|
||||
},
|
||||
iconSize: 14,
|
||||
|
Loading…
x
Reference in New Issue
Block a user