Skip to content

Commit f087273

Browse files
committed
add blog connected to endpint
1 parent 8a3989c commit f087273

File tree

2 files changed

+44
-1
lines changed

2 files changed

+44
-1
lines changed

lib/Blog/addBlog.dart

Lines changed: 29 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
1+
import 'dart:convert';
2+
13
import 'package:blogapp/CustumWidget/OverlayCard.dart';
4+
import 'package:blogapp/Model/addBlogModels.dart';
5+
import 'package:blogapp/NetworkHandler.dart';
6+
import 'package:blogapp/Pages/HomePage.dart';
27
import 'package:flutter/material.dart';
38
import 'package:image_picker/image_picker.dart';
49

@@ -16,6 +21,7 @@ class _AddBlogState extends State<AddBlog> {
1621
ImagePicker _picker = ImagePicker();
1722
PickedFile _imageFile;
1823
IconData iconphoto = Icons.image;
24+
NetworkHandler networkHandler = NetworkHandler();
1925
@override
2026
Widget build(BuildContext context) {
2127
return Scaffold(
@@ -144,7 +150,29 @@ class _AddBlogState extends State<AddBlog> {
144150

145151
Widget addButton() {
146152
return InkWell(
147-
onTap: () {},
153+
onTap: () async {
154+
if (_imageFile != null && _globalkey.currentState.validate()) {
155+
AddBlogModel addBlogModel =
156+
AddBlogModel(body: _body.text, title: _title.text);
157+
var response = await networkHandler.post1(
158+
"/blogpost/Add", addBlogModel.toJson());
159+
print(response.body);
160+
161+
if (response.statusCode == 200 || response.statusCode == 201) {
162+
String id = json.decode(response.body)["data"];
163+
var imageResponse = await networkHandler.patchImage(
164+
"/blogpost/add/coverImage/$id", _imageFile.path);
165+
print(imageResponse.statusCode);
166+
if (imageResponse.statusCode == 200 ||
167+
imageResponse.statusCode == 201) {
168+
Navigator.pushAndRemoveUntil(
169+
context,
170+
MaterialPageRoute(builder: (context) => HomePage()),
171+
(route) => false);
172+
}
173+
}
174+
}
175+
},
148176
child: Center(
149177
child: Container(
150178
height: 50,

lib/NetworkHandler.dart

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,21 @@ class NetworkHandler {
4141
return response;
4242
}
4343

44+
Future<http.Response> post1(String url, var body) async {
45+
String token = await storage.read(key: "token");
46+
url = formater(url);
47+
log.d(body);
48+
var response = await http.post(
49+
url,
50+
headers: {
51+
"Content-type": "application/json",
52+
"Authorization": "Bearer $token"
53+
},
54+
body: json.encode(body),
55+
);
56+
return response;
57+
}
58+
4459
Future<http.StreamedResponse> patchImage(String url, String filepath) async {
4560
url = formater(url);
4661
String token = await storage.read(key: "token");

0 commit comments

Comments
 (0)