Skip to content
This repository has been archived by the owner on Sep 17, 2022. It is now read-only.

Commit

Permalink
Merge branch 'release/v1.4.15-beta.5'
Browse files Browse the repository at this point in the history
  • Loading branch information
hanerx committed Jun 2, 2021
2 parents 95418d8 + f2f5fec commit 3028798
Show file tree
Hide file tree
Showing 12 changed files with 846 additions and 64 deletions.
12 changes: 11 additions & 1 deletion lib/component/Card.dart
@@ -1,6 +1,7 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/model/comic_source/baseSourceModel.dart';
import 'package:dcomic/model/comic_source/sourceProvider.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:dcomic/view/comic_detail_page.dart';
Expand Down Expand Up @@ -39,7 +40,16 @@ class HomePageCard extends StatelessWidget {
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
imageUrl: '$imageUrl',
cacheManager: BadCertificateCacheManager(),
httpHeaders: {'referer': 'http://images.dmzj.com'},
progressIndicatorBuilder:
(context, url, downloadProgress) =>
CircularProgressIndicator(
value: downloadProgress.progress),
errorWidget: (context, url, error) => Icon(Icons.error),
),
),
borderRadius: BorderRadius.circular(5),
),
Expand Down
12 changes: 11 additions & 1 deletion lib/component/SubscribeCard.dart
Expand Up @@ -3,6 +3,7 @@ import 'dart:io';
import 'package:badges/badges.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/model/comic_source/baseSourceModel.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:dcomic/generated/l10n.dart';
Expand Down Expand Up @@ -128,7 +129,16 @@ class _Card extends StatelessWidget {
progressIndicatorBuilder: (context, url, downloadProgress) => Center(
child: CircularProgressIndicator(value: downloadProgress.progress),
),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
fit: BoxFit.cover,
imageUrl: '$cover',
cacheManager: BadCertificateCacheManager(),
httpHeaders: {'referer': 'http://images.dmzj.com'},
progressIndicatorBuilder: (context, url, downloadProgress) => Center(
child: CircularProgressIndicator(value: downloadProgress.progress),
),
errorWidget: (context, url, error) => Icon(Icons.error),
),
);
}
}
13 changes: 12 additions & 1 deletion lib/component/comic/ComicListTile.dart
Expand Up @@ -3,6 +3,7 @@ import 'dart:io';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/component/comic/BaseListTile.dart';
import 'package:dcomic/model/comic_source/baseSourceModel.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:dcomic/utils/tool_methods.dart';
Expand Down Expand Up @@ -114,7 +115,17 @@ class ComicListTile extends StatelessWidget {
child: CircularProgressIndicator(value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
imageUrl: cover,
httpHeaders: headers,
cacheManager: BadCertificateCacheManager(),
progressIndicatorBuilder: (context, url, downloadProgress) => Container(
child: Center(
child: CircularProgressIndicator(value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
),
);
}
}
16 changes: 15 additions & 1 deletion lib/component/comic/HistoryListTile.dart
@@ -1,6 +1,7 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/component/comic/BaseListTile.dart';
import 'package:dcomic/model/comic_source/baseSourceModel.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:dcomic/utils/tool_methods.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
Expand Down Expand Up @@ -38,7 +39,20 @@ class HistoryListTile extends StatelessWidget {
value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
imageUrl: '$cover',
fit: BoxFit.cover,
cacheManager: BadCertificateCacheManager(),
httpHeaders: {'referer': 'http://images.dmzj.com'},
progressIndicatorBuilder: (context, url, downloadProgress) =>Container(
child: Center(
child: CircularProgressIndicator(
value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
width: 100,
),
width: 100,
),
detail: <Widget>[
Expand Down
15 changes: 14 additions & 1 deletion lib/component/comic/SearchListTile.dart
@@ -1,5 +1,6 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/component/comic/BaseListTile.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:dcomic/utils/tool_methods.dart';
Expand Down Expand Up @@ -39,7 +40,19 @@ class SearchListTile extends StatelessWidget {
value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
imageUrl: cover,
httpHeaders: headers,
cacheManager: BadCertificateCacheManager(),
progressIndicatorBuilder:
(context, url, downloadProgress) => Container(
child: Center(
child: CircularProgressIndicator(
value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
),
),
detail: <Widget>[
Text(
Expand Down
54 changes: 36 additions & 18 deletions lib/component/comic/SubjectListTile.dart
@@ -1,17 +1,26 @@
import 'package:cached_network_image/cached_network_image.dart';
import 'package:dcomic/component/comic/BaseListTile.dart';
import 'package:dcomic/utils/ProxyCacheManager.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

class SubjectListTile extends StatelessWidget{
class SubjectListTile extends StatelessWidget {
final String cover;
final VoidCallback onPressed;
final Map<String,String> headers;
final Map<String, String> headers;
final String title;
final String recommendBrief;
final String recommendReason;

const SubjectListTile({Key key, this.cover, this.onPressed, this.headers, this.title, this.recommendBrief, this.recommendReason}) : super(key: key);
const SubjectListTile(
{Key key,
this.cover,
this.onPressed,
this.headers,
this.title,
this.recommendBrief,
this.recommendReason})
: super(key: key);

@override
Widget build(BuildContext context) {
Expand All @@ -21,14 +30,24 @@ class SubjectListTile extends StatelessWidget{
leading: CachedNetworkImage(
imageUrl: cover,
httpHeaders: headers,
progressIndicatorBuilder:
(context, url, downloadProgress) => Container(
progressIndicatorBuilder: (context, url, downloadProgress) => Container(
child: Center(
child: CircularProgressIndicator(
value: downloadProgress.progress),
child: CircularProgressIndicator(value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
errorWidget: (context, url, error) => CachedNetworkImage(
imageUrl: cover,
httpHeaders: headers,
cacheManager: BadCertificateCacheManager(),
progressIndicatorBuilder: (context, url, downloadProgress) =>
Container(
child: Center(
child:
CircularProgressIndicator(value: downloadProgress.progress),
),
),
errorWidget: (context, url, error) => Icon(Icons.error),
),
),
detail: <Widget>[
Text(
Expand All @@ -44,10 +63,10 @@ class SubjectListTile extends StatelessWidget{
TextSpan(children: [
WidgetSpan(
child: Icon(
Icons.tag,
color: Colors.grey,
size: 23,
)),
Icons.tag,
color: Colors.grey,
size: 23,
)),
TextSpan(
text: " ",
),
Expand All @@ -63,10 +82,10 @@ class SubjectListTile extends StatelessWidget{
TextSpan(children: [
WidgetSpan(
child: Icon(
Icons.message,
color: Colors.grey,
size: 23,
)),
Icons.message,
color: Colors.grey,
size: 23,
)),
TextSpan(
text: " ",
),
Expand All @@ -78,5 +97,4 @@ class SubjectListTile extends StatelessWidget{
],
);
}

}
}
47 changes: 42 additions & 5 deletions lib/http/DMZJRequestHandler.dart
Expand Up @@ -85,7 +85,8 @@ class DMZJRequestHandler extends SingleDomainRequestHandler {
return dio.get('/classify/$categoryId-$date-$tag/$type/$page.json');
}

Future<Response> getNovelCategoryDetail(String categoryId,{int tag:0, int type:0, int page:0}){
Future<Response> getNovelCategoryDetail(String categoryId,
{int tag: 0, int type: 0, int page: 0}) {
return dio.get('/novel/$categoryId/$tag/$type/$page.json');
}

Expand All @@ -101,7 +102,7 @@ class DMZJRequestHandler extends SingleDomainRequestHandler {
return dio.get('/novel/rank/$type/$tag/$page.json');
}

Future<Response> getNovelFilterTags(){
Future<Response> getNovelFilterTags() {
return dio.get('/novel/tag.json');
}
}
Expand Down Expand Up @@ -208,7 +209,7 @@ class DMZJCommentRequestHandler extends SingleDomainRequestHandler {
class DMZJV4RequestHandler extends SingleDomainRequestHandler {
DMZJV4RequestHandler() : super('https://nnv4api.dmzj1.com');

Future<Map> getParam({bool login: false}) async {
Future<Map<String,dynamic>> getParam({bool login: false}) async {
var data = {
"channel": Platform.operatingSystem,
"version": "3.0.0",
Expand Down Expand Up @@ -276,9 +277,45 @@ class DMZJV4RequestHandler extends SingleDomainRequestHandler {
}
return null;
}

Future<List<ComicUpdateListItemResponse>> getUpdateList(
{String type: '0', int page: 0}) async {
var response = await dio.get('/comic/update/list/$type/$page',
queryParameters: await getParam(login: true));
if (response.statusCode == 200) {
var data = ComicUpdateListResponse.fromBuffer(
ToolMethods.decrypt(response.data));
if (data.errno != 0) {
throw data.errmsg;
}
return data.data;
}
return null;
}

Future<List<ComicRankListItemResponse>> getRankingList(
{int tagId: 0, int byTime: 0, int rankType: 0, int page: 0}) async {
Map<String,dynamic> map={
'tag_id': tagId,
'by_time': byTime,
'rank_type': rankType,
'page': page
};
map.addAll(await getParam(login: true));
var response = await dio.get('/comic/rank/list', queryParameters: map);
if (response.statusCode == 200) {
var data =
ComicRankListResponse.fromBuffer(ToolMethods.decrypt(response.data));
if (data.errno != 0) {
throw data.errmsg;
}
return data.data;
}
return null;
}
}

class DMZJJuriRequestHandler extends SingleDomainRequestHandler{
class DMZJJuriRequestHandler extends SingleDomainRequestHandler {
DMZJJuriRequestHandler() : super('https://jurisdiction.dmzj1.com');

Future<Response> getNovel(int volumeID, int chapterID) {
Expand All @@ -293,7 +330,7 @@ class DMZJJuriRequestHandler extends SingleDomainRequestHandler{
}
}

class DarkSideRequestHandler extends SingleDomainRequestHandler{
class DarkSideRequestHandler extends SingleDomainRequestHandler {
DarkSideRequestHandler() : super('https://dark-dmzj.hloli.net');

Future<Response> getDarkInfo() {
Expand Down

0 comments on commit 3028798

Please sign in to comment.