Skip to content

Commit 399e8a4

Browse files
supports https
1 parent 5374a32 commit 399e8a4

File tree

4 files changed

+87
-88
lines changed

4 files changed

+87
-88
lines changed

lib/Controllers/ChatController.dart

Lines changed: 35 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ import 'package:sm_websocket/sm_websocket.dart';
1111
import 'package:string_to_hex/string_to_hex.dart';
1212

1313
class ChatController {
14-
Future<List<Message>> getMessages({String sender}) async{
14+
Future<List<Message>> getMessages({String sender}) async {
1515
CoreUser connectedUser = await UsersRepository.getConnectedUser();
1616
final response = await post(
17-
Uri.http(baseURL,"api/chat/getMessages/"),
17+
Uri.https(baseURL, "api/chat/getMessages/"),
1818
headers: <String, String>{
1919
'Content-Type': 'application/json; charset=UTF-8',
2020
},
@@ -23,27 +23,26 @@ class ChatController {
2323
"receiver": connectedUser.id,
2424
}),
2525
);
26-
if(response.statusCode==200){
26+
if (response.statusCode == 200) {
2727
var body = json.decode(response.body);
2828
List<Message> messages = [];
2929

30-
for(var obj in body){
31-
Message message = Message.fromJson(obj,connectedUser.id);
30+
for (var obj in body) {
31+
Message message = Message.fromJson(obj, connectedUser.id);
3232
messages.add(message);
3333
}
3434

3535
return messages;
36-
}else{
36+
} else {
3737
throw Exception('Request API Failed');
3838
}
39-
4039
}
4140

42-
Future<String> addMessageToDataBase({Message message}) async{
41+
Future<String> addMessageToDataBase({Message message}) async {
4342
CoreUser connectedUser = await UsersRepository.getConnectedUser();
4443

4544
final response = await post(
46-
Uri.http(baseURL,"api/chat/addMessage/"),
45+
Uri.https(baseURL, "api/chat/addMessage/"),
4746
headers: <String, String>{
4847
'Content-Type': 'application/json; charset=UTF-8',
4948
},
@@ -54,19 +53,19 @@ class ChatController {
5453
"message": message.message,
5554
}),
5655
);
57-
if(response.statusCode==200){
56+
if (response.statusCode == 200) {
5857
var body = json.decode(response.body);
5958
String message = body["message"] as String;
6059

6160
return message;
62-
}else{
61+
} else {
6362
throw Exception('Request API Failed');
6463
}
6564
}
6665

67-
Future<String> generateDiscussionId({String sender,String receiver}) async {
66+
Future<String> generateDiscussionId({String sender, String receiver}) async {
6867
final response = await post(
69-
Uri.http(baseURL,"api/chat/generateDiscussionId/"),
68+
Uri.https(baseURL, "api/chat/generateDiscussionId/"),
7069
headers: <String, String>{
7170
'Content-Type': 'application/json; charset=UTF-8',
7271
},
@@ -76,73 +75,70 @@ class ChatController {
7675
}),
7776
);
7877

79-
if(response.statusCode==200){
78+
if (response.statusCode == 200) {
8079
var body = json.decode(response.body);
8180
String discussionId = body["discussionId"] as String;
8281

8382
return discussionId;
84-
}else{
83+
} else {
8584
throw Exception('Request API Failed');
8685
}
8786
}
8887

89-
90-
void sendMessageToWebSocket({Message message,WebSocket webSocket}) async{
88+
void sendMessageToWebSocket({Message message, WebSocket webSocket}) async {
9189
CoreUser connectedUser = await UsersRepository.getConnectedUser();
9290

93-
String discussionId = await this.generateDiscussionId(sender: connectedUser.id,receiver: message.receiver);
94-
message.discussionId=discussionId;
91+
String discussionId = await this.generateDiscussionId(
92+
sender: connectedUser.id, receiver: message.receiver);
93+
message.discussionId = discussionId;
9594

9695
webSocket.send(
97-
jsonEncode(message.toJson())
98-
); //parse message to JSON then to String
96+
jsonEncode(message.toJson())); //parse message to JSON then to String
9997
}
10098

101-
Future<List<Conversations>> getConversations() async{
99+
Future<List<Conversations>> getConversations() async {
102100
CoreUser connectedUser = await UsersRepository.getConnectedUser();
103101

104102
final response = await post(
105-
Uri.http(baseURL,"api/chat/getConversations/"),
103+
Uri.https(baseURL, "api/chat/getConversations/"),
106104
headers: <String, String>{
107105
'Content-Type': 'application/json; charset=UTF-8',
108106
},
109-
body: jsonEncode(<String, String>{
110-
"sender": connectedUser.id
111-
}),
107+
body: jsonEncode(<String, String>{"sender": connectedUser.id}),
112108
);
113-
if(response.statusCode==200){
109+
if (response.statusCode == 200) {
114110
var body = json.decode(response.body);
115111
List<Conversations> conversations = [];
116112

117-
118113
body.forEach((key, value) {
119-
120114
List<PopulatedMessage> messages = [];
121-
for(var message in value){
122-
PopulatedMessage populatedMessage = PopulatedMessage.fromJson(message, connectedUser.id);
115+
for (var message in value) {
116+
PopulatedMessage populatedMessage =
117+
PopulatedMessage.fromJson(message, connectedUser.id);
123118
messages.add(populatedMessage);
124119
}
125-
messages.sort((m1,m2) {
120+
messages.sort((m1, m2) {
126121
return m1.createdAt.compareTo(m2.createdAt);
127122
});
128-
Conversations conversation = Conversations.fromJson(messages, key, connectedUser);
123+
Conversations conversation =
124+
Conversations.fromJson(messages, key, connectedUser);
129125
conversations.add(conversation);
130126
});
131127

132128
return conversations;
133-
}else{
129+
} else {
134130
throw Exception('Request API Failed');
135131
}
136132
}
137133

138-
int getUnseenMessages(List<PopulatedMessage> messages,CoreUser connectedUser){
139-
int count=0;
140-
for(var message in messages){
141-
if(message.seen=="false" && (message.sender.id!=connectedUser.id)){
134+
int getUnseenMessages(
135+
List<PopulatedMessage> messages, CoreUser connectedUser) {
136+
int count = 0;
137+
for (var message in messages) {
138+
if (message.seen == "false" && (message.sender.id != connectedUser.id)) {
142139
count++;
143140
}
144141
}
145142
return count;
146-
147143
}
148144
}

lib/Controllers/UsersController.dart

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ import 'package:chatup/Storage/UsersRepository.dart';
77
import 'package:http/http.dart';
88

99
class UsersController {
10-
Future<int> Login(String username,String password) async{
10+
Future<int> Login(String username, String password) async {
1111
final response = await post(
12-
Uri.http(baseURL,"api/users/login/"),
12+
Uri.https(baseURL, "api/users/login/"),
1313
headers: <String, String>{
1414
'Content-Type': 'application/json; charset=UTF-8',
1515
},
@@ -18,32 +18,30 @@ class UsersController {
1818
"password": password,
1919
}),
2020
);
21-
if(response.statusCode==200) {
21+
if (response.statusCode == 200) {
2222
var jsonData = json.decode(response.body);
2323
User connectedUser = User.fromJson(jsonData);
24-
CoreUser storedUser = CoreUser.fromUser(connectedUser, jsonData['token'], "none", "none");
24+
CoreUser storedUser =
25+
CoreUser.fromUser(connectedUser, jsonData['token'], "none", "none");
2526
UsersRepository.addUser(storedUser);
2627
}
27-
return response.statusCode;
28+
return response.statusCode;
2829
}
2930

30-
Future<List<User>> getUsers() async{
31-
32-
final response = await get(
33-
Uri.http(baseURL,"api/users/")
34-
);
35-
if(response.statusCode==200){
31+
Future<List<User>> getUsers() async {
32+
final response = await get(Uri.https(baseURL, "api/users/"));
33+
if (response.statusCode == 200) {
3634
var body = json.decode(response.body);
3735
List<User> users = [];
3836

39-
for(var obj in body){
37+
for (var obj in body) {
4038
User user = User.fromJson(obj);
4139
users.add(user);
4240
}
4341

4442
return users;
45-
}else{
43+
} else {
4644
throw Exception('Request API Failed');
4745
}
4846
}
49-
}
47+
}

lib/Login/loginPage.dart

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,12 @@
11
import 'package:chatup/Controllers/UsersController.dart';
22
import 'package:chatup/Home/HomePage.dart';
33
import 'package:chatup/Models/CoreUser.dart';
4-
import 'package:chatup/Statics/Statics.dart';
54
import 'package:chatup/Storage/UsersRepository.dart';
65
import 'package:flutter/material.dart';
76
import 'package:chatup/CustomWidgets/title.dart';
87
import 'package:chatup/Signup/signup.dart';
98
import 'package:flutter_easyloading/flutter_easyloading.dart';
109

11-
1210
class LoginPage extends StatefulWidget {
1311
LoginPage({Key key, this.title}) : super(key: key);
1412

@@ -120,41 +118,46 @@ class _LoginPageState extends State<LoginPage> {
120118
_formKey.currentState.save();
121119
EasyLoading.show(status: 'loading...');
122120
usersController.Login(email, password).then((responseCode) async {
123-
print("response code :"+responseCode.toString());
124-
switch(responseCode) {
125-
case 200: {
126-
CoreUser connected = await UsersRepository.getConnectedUser();
127-
EasyLoading.dismiss();
128-
Navigator.push(
129-
context, MaterialPageRoute(builder: (context) => Homepage(connected))
130-
);
131-
}
132-
break;
121+
print("response code :" + responseCode.toString());
133122

134-
case 201: {
135-
EasyLoading.showError('Mot de passe incorrect');
136-
print("Mot de passe incorrect");
137-
}
138-
break;
123+
switch (responseCode) {
124+
case 200:
125+
{
126+
CoreUser connected = await UsersRepository.getConnectedUser();
127+
EasyLoading.dismiss();
128+
Navigator.push(
129+
context,
130+
MaterialPageRoute(
131+
builder: (context) => Homepage(connected)));
132+
}
133+
break;
139134

140-
case 202: {
141-
EasyLoading.showError("Ce compte n'exsite pas");
142-
}
143-
break;
135+
case 201:
136+
{
137+
EasyLoading.showError('Mot de passe incorrect');
138+
print("Mot de passe incorrect");
139+
}
140+
break;
144141

145-
case 203: {
146-
EasyLoading.showError('Verifier votre compte');
147-
}
148-
break;
142+
case 202:
143+
{
144+
EasyLoading.showError("Ce compte n'exsite pas");
145+
}
146+
break;
149147

150-
default: {
151-
EasyLoading.showError('Try again later');
152-
}
153-
break;
154-
}
148+
case 203:
149+
{
150+
EasyLoading.showError('Verifier votre compte');
151+
}
152+
break;
155153

154+
default:
155+
{
156+
EasyLoading.showError('Try again later');
157+
}
158+
break;
159+
}
156160
});
157-
158161
},
159162
child: InkWell(
160163
child: Container(

lib/Statics/Statics.dart

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
import 'package:intl/intl.dart';
22

3-
String baseURL = "10.0.2.2:3000"; //10.0.2.2:3000
4-
String baseUploadsURL = "http://10.0.2.2:3000/uploads/";//ressources route
3+
//String baseURL = "10.0.2.2:3000"; //10.0.2.2:3000
4+
//String baseUploadsURL = "http://10.0.2.2:3000/uploads/";//ressources route
5+
6+
String baseURL = "mixchatt.herokuapp.com"; //10.0.2.2:3000
7+
String baseUploadsURL =
8+
"https://mixchatt.herokuapp.com/uploads/"; //ressources route
59

610
DateFormat dateFormat = DateFormat("dd/MM/yyyy HH:mm");
711
DateFormat groupFormat = DateFormat("dd/MM/yyyy");
812
DateFormat timeFormat = DateFormat("HH:mm");
913

10-
1114
void logLongString(String s) {
1215
if (s == null || s.length <= 0) return;
1316
const int n = 1000;
@@ -20,4 +23,3 @@ void logLongString(String s) {
2023
endIndex = startIndex + n;
2124
}
2225
}
23-

0 commit comments

Comments
 (0)