29 lines
920 B
Dart
29 lines
920 B
Dart
import 'package:cloud_firestore/cloud_firestore.dart';
|
|
import 'package:cookbook/data/models/recipe_model.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class CreateRecipeController {
|
|
final TextEditingController labelController = TextEditingController();
|
|
final TextEditingController ingredientsLinesController = TextEditingController();
|
|
final TextEditingController imageUrlController = TextEditingController();
|
|
|
|
List<String> ingredientLinesList = [];
|
|
final db = FirebaseFirestore.instance;
|
|
|
|
void clearControllers() {
|
|
labelController.clear();
|
|
imageUrlController.clear();
|
|
ingredientsLinesController.clear();
|
|
}
|
|
|
|
Future<void> addRecipe() async {
|
|
Recipe newRecipe = Recipe(
|
|
label: labelController.text,
|
|
ingredientLines: ingredientLinesList,
|
|
imageUrl: imageUrlController.text);
|
|
|
|
clearControllers();
|
|
|
|
await db.collection('myRecipes').add(newRecipe.toMap());
|
|
}
|
|
} |