@@ -41,6 +41,63 @@ Future<Map<String,dynamic>> fetchImages(String albumID, int page) async {
4141 }
4242}
4343
44+ Future <Map <String ,dynamic >> fetchTagImages (String tagID, int page) async {
45+ Map <String , String > queries = {
46+ "format" : "json" ,
47+ "method" : "pwg.tags.getImages" ,
48+ "tag_id" : tagID,
49+ "per_page" : "100" ,
50+ "page" : page.toString (),
51+ };
52+
53+ try {
54+ Response response = await API ().dio.get ('ws.php' , queryParameters: queries);
55+
56+ if (response.statusCode == 200 ) {
57+ return json.decode (response.data);
58+ } else {
59+ return {
60+ 'stat' : 'fail' ,
61+ 'result' : response.statusMessage
62+ };
63+ }
64+ } catch (e) {
65+ var error = e as DioError ;
66+ return {
67+ 'stat' : 'fail' ,
68+ 'result' : error.message
69+ };
70+ }
71+ }
72+
73+ Future <Map <String ,dynamic >> fetchFavoriteImages (int page) async {
74+ Map <String , String > queries = {
75+ "format" : "json" ,
76+ "method" : "pwg.users.favorites.getList" ,
77+ "per_page" : "100" ,
78+ "page" : page.toString (),
79+ };
80+
81+ try {
82+ Response response = await API ().dio.get ('ws.php' , queryParameters: queries);
83+
84+ if (response.statusCode == 200 ) {
85+ return json.decode (response.data);
86+ } else {
87+ return {
88+ 'stat' : 'fail' ,
89+ 'result' : response.statusMessage
90+ };
91+ }
92+ } catch (e) {
93+ var error = e as DioError ;
94+ return {
95+ 'stat' : 'fail' ,
96+ 'result' : error.message
97+ };
98+ }
99+ }
100+
44101Future <dynamic > getImageInfo (int imageId) async {
45102 Map <String , String > queries = {
46103 "format" : "json" ,
@@ -238,7 +295,7 @@ Future<dynamic> removeImage(int imageId, String catId) async {
238295 if (imageInfo['stat' ] == 'fail' ) return imageInfo;
239296
240297 List <String > categories = imageInfo['result' ]['categories' ].map <String >(
241- (cat) => cat['id' ].toString ()
298+ (cat) => cat['id' ].toString ()
242299 ).toList ();
243300 categories.removeWhere ((cat) => cat == catId);
244301
@@ -309,9 +366,9 @@ Future<dynamic> moveImage(int imageId, List<int> categories) async {
309366
310367 try {
311368 Response response = await API ().dio.post (
312- 'ws.php' ,
313- data: formData,
314- queryParameters: queries
369+ 'ws.php' ,
370+ data: formData,
371+ queryParameters: queries
315372 );
316373
317374 if (response.statusCode == 200 ) {
0 commit comments