ammaratef45 / ammaratef45/hydroponics-garden

integrate with apple and google calendar and famous reminder apps

Abierto
#27 0 comentarios 0 reacciones 0 asignados Ver en GitHub
hacktoberfest todo
Lenguaje dominante
Dart
Estrellas
2
Forks
1
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

https://api.github.com/ammaratef45/hydroponics-garden/blob/dfd1dd179156b44080547a0b6fff3b8e178c0c8a/lib/widgets/calendar_widget.dart#L16

```dart

import 'package:calendar_view/calendar_view.dart';
import 'package:flutter/material.dart';
import 'package:hydroponic_garden/firebase/auth.dart';
import 'package:hydroponic_garden/firebase/firestore.dart';
import 'package:hydroponic_garden/model/plant.dart';
import 'package:hydroponic_garden/widgets/error_text_widget.dart';
import 'package:hydroponic_garden/widgets/loading_text_widget.dart';
import 'package:hydroponic_garden/widgets/main_widget.dart';

class CalendarPage extends StatelessWidget {
static const routeName = 'calendar';
final EventController controller = EventController();

CalendarPage({super.key});

// TODO: integrate with apple and google maps and famous reminder apps
void _addEvents(List plants) {
// TODO: add events to important care events for plants
// for example: pruning, trimming, health check .. etc
for (Plant p in plants) {
// TODO: make the events show continiously across days
controller.add(CalendarEventData(
title: p.description.name,
date: p.harvestDate,
endDate: p.endHarvestDate,
startTime: p.harvestDate,
endTime: p.endHarvestDate,
));
}
}

@override
Widget build(BuildContext context) {
return MainWidget(
showBottomNavigationMenu: true,
navigationIndex: 1,
title: 'Calendar',
body: StreamBuilder>(
stream: FireStore.instance().userPlants(Auth.instance().user!.uid),
builder: (context, snapshot) {
if (snapshot.hasError) {
return ErrorTextWidget.failedToLoad;
}
if (!snapshot.hasData) {
return LoadingTextWidget.standard;
}
controller.removeWhere((e) => true);
_addEvents(snapshot.data!);
return MonthView(
controller: controller,
);
},
),
);
}
}

```

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.