apple ad facebook integrated
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">ReGroup123</string>
|
||||
<string name="facebook_app_id">8076081959097016</string>
|
||||
<string name="fb_login_protocol_scheme">fb8076081959097016</string>
|
||||
<string name="facebook_client_token">ca5a1805872edbec0d3a0a0b02229ba5</string>
|
||||
<string name="app_name">Regroup</string>
|
||||
<string name="facebook_app_id">803386025107790</string>
|
||||
<string name="fb_login_protocol_scheme">fb803386025107790</string>
|
||||
<string name="facebook_client_token">fa69ee794ff94e50c7ddbfac1e035cb9</string>
|
||||
</resources>
|
||||
@@ -27,10 +27,9 @@ class ApiUrls {
|
||||
static const postcommunities = "${baseUrl}select-communities";
|
||||
|
||||
static const googlelogin = "${baseUrl}sign-in-with-google-login";
|
||||
static const applelogin = "${baseUrl}sign-in-with-google-login";
|
||||
static const applelogin = "${baseUrl}apple-login-or-registration";
|
||||
|
||||
static const storeDetailsOfOAuth = "${baseUrl}update-user-account-type";
|
||||
|
||||
static const getuserdetails = "${baseUrl}get-auth-user-data";
|
||||
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ import 'package:regroup/Utils/Common/googleOAuthService.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/dialogs.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart';
|
||||
import 'package:flutter_facebook_auth/flutter_facebook_auth.dart';
|
||||
@@ -27,8 +28,8 @@ class LoginScreen extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _LoginScreenState extends State<LoginScreen> {
|
||||
String _accessToken = "";
|
||||
Map _userData = {};
|
||||
Map<String, dynamic>? _userData;
|
||||
AccessToken? _accessToken;
|
||||
bool _checking = true;
|
||||
final TextEditingController _emailController = TextEditingController();
|
||||
RxBool isObscured = true.obs;
|
||||
@@ -50,16 +51,9 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
final resp = await LoginAPI().storeGoogleSignin(
|
||||
{"google_access_token": value, "one_signal_player_id": "ABCD"});
|
||||
if (resp.message == "go-to-signin-via-oauth") {
|
||||
// Get.to(()=> );
|
||||
Get.toNamed(RouteName.verifygoogleapplepage,
|
||||
arguments: {"email": resp.data});
|
||||
logger.d("go to sign in");
|
||||
} else if (resp.message == "profile-incomplete") {
|
||||
if (resp.data) {
|
||||
|
||||
}
|
||||
}
|
||||
else if (value == null) {
|
||||
} else if (value == null) {
|
||||
Get.snackbar(
|
||||
'Error',
|
||||
'Google Sign-In canceled',
|
||||
@@ -93,54 +87,54 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
});
|
||||
}
|
||||
|
||||
// _checkIfisLoggedIn() async {
|
||||
// //user token
|
||||
// final accessToken = await FacebookAuth.instance.accessToken;
|
||||
_checkIfisLoggedIn() async {
|
||||
//user token
|
||||
final accessToken = await FacebookAuth.instance.accessToken;
|
||||
|
||||
// setState(() {
|
||||
// _checking = false;
|
||||
// });
|
||||
setState(() {
|
||||
_checking = false;
|
||||
});
|
||||
|
||||
// if (accessToken != null) {
|
||||
// print("/////////////////////////////////////////xcheck");
|
||||
// print("worked");
|
||||
// print(accessToken.toJson());
|
||||
// final userData = await FacebookAuth.instance.getUserData();
|
||||
// // _accessToken = accessToken;
|
||||
// setState(() {
|
||||
// _userData = userData;
|
||||
// });
|
||||
// } else {
|
||||
// print("/////////////////////////////////////////check");
|
||||
if (accessToken != null) {
|
||||
print("/////////////////////////////////////////xcheck");
|
||||
print("worked");
|
||||
print(accessToken.toJson());
|
||||
final userData = await FacebookAuth.instance.getUserData();
|
||||
// _accessToken = accessToken;
|
||||
setState(() {
|
||||
_userData = userData;
|
||||
});
|
||||
} else {
|
||||
print("/////////////////////////////////////////check");
|
||||
|
||||
// print("not worked");
|
||||
// _login();
|
||||
// }
|
||||
// }
|
||||
print("not worked");
|
||||
_login();
|
||||
}
|
||||
}
|
||||
|
||||
// _login() async {
|
||||
// final LoginResult result = await FacebookAuth.instance.login();
|
||||
_login() async {
|
||||
final LoginResult result = await FacebookAuth.instance.login();
|
||||
|
||||
// if (result.status == LoginStatus.success) {
|
||||
// _accessToken = result.accessToken;
|
||||
if (result.status == LoginStatus.success) {
|
||||
_accessToken = result.accessToken;
|
||||
|
||||
// final userData = await FacebookAuth.instance.getUserData();
|
||||
// _userData = userData;
|
||||
// } else {
|
||||
// print(result.status);
|
||||
// print(result.message);
|
||||
// }
|
||||
// setState(() {
|
||||
// _checking = false;
|
||||
// });
|
||||
// }
|
||||
final userData = await FacebookAuth.instance.getUserData();
|
||||
_userData = userData;
|
||||
} else {
|
||||
print(result.status);
|
||||
print(result.message);
|
||||
}
|
||||
setState(() {
|
||||
_checking = false;
|
||||
});
|
||||
}
|
||||
|
||||
// _logout() async {
|
||||
// await FacebookAuth.instance.logOut();
|
||||
// _accessToken = null;
|
||||
// _userData = null;
|
||||
// setState(() {});
|
||||
// }
|
||||
_logout() async {
|
||||
await FacebookAuth.instance.logOut();
|
||||
_accessToken = null;
|
||||
_userData = null;
|
||||
setState(() {});
|
||||
}
|
||||
|
||||
_logincheck() async {
|
||||
if (_emailController.text.isBlank! || _passwordController.text.isBlank!) {
|
||||
@@ -414,8 +408,6 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
_loginWithApple();
|
||||
// Get.toNamed(
|
||||
// RouteName.verifygoogleapplepage);
|
||||
},
|
||||
child: Container(
|
||||
width: 55,
|
||||
@@ -473,16 +465,7 @@ class _LoginScreenState extends State<LoginScreen> {
|
||||
const Spacer(),
|
||||
GestureDetector(
|
||||
onTap: () async {
|
||||
/* FacebookAuth.instance.login(
|
||||
permissions: ['public_profile', 'email'],
|
||||
).then((value) {
|
||||
FacebookAuth.instance.getUserData().then((userData) {
|
||||
setState(() {
|
||||
/* _isLoggedIn = true;
|
||||
_userObj = userData; */
|
||||
});
|
||||
});
|
||||
}); */
|
||||
_checkIfisLoggedIn();
|
||||
},
|
||||
child: Container(
|
||||
width: 55,
|
||||
|
||||
@@ -4,6 +4,7 @@ import 'package:regroup/Common/base_manager.dart';
|
||||
import 'package:regroup/Common/controller/data/network/network_api.dart';
|
||||
import 'package:regroup/Global.dart';
|
||||
import 'package:regroup/Login/Model/LoginModel.dart';
|
||||
import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
|
||||
@@ -41,18 +42,12 @@ class LoginAPI {
|
||||
if (accountype == "1") {
|
||||
print('tell us individyal');
|
||||
Get.toNamed(RouteName.tellusindividualscreen,
|
||||
arguments: {
|
||||
'pageroute' : "mainscreen"
|
||||
}
|
||||
);
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
} else if (accountype == "2") {
|
||||
print('tell us business');
|
||||
|
||||
Get.toNamed(RouteName.tellusbusinessscreen,
|
||||
arguments: {
|
||||
'pageroute' : "mainscreen"
|
||||
}
|
||||
);
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
}
|
||||
} else {
|
||||
Get.toNamed(RouteName.mainscreen);
|
||||
@@ -76,14 +71,6 @@ class LoginAPI {
|
||||
return ResponseData<dynamic>(
|
||||
"go-to-signin-via-oauth", ResponseStatus.SUCCESS,
|
||||
data: response.data['data']['email']);
|
||||
}
|
||||
if (response.data['data']['is_account_type_updated'] == 2 ||
|
||||
response.data['data']['is_account_type_updated'] == 1) {
|
||||
//get user data
|
||||
|
||||
return ResponseData<dynamic>(
|
||||
"profile-incomplete", ResponseStatus.SUCCESS,
|
||||
data: response.data['data']['email']);
|
||||
} else {
|
||||
return ResponseData<dynamic>("go-to-login", ResponseStatus.SUCCESS);
|
||||
}
|
||||
@@ -92,14 +79,16 @@ class LoginAPI {
|
||||
return response;
|
||||
}
|
||||
|
||||
Future<ResponseData> storeAppleSignin(var data) async {
|
||||
Future<ResponseData> storeAppleSignin(var data,
|
||||
{String? emailReceived}) async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
final response = await NetworkApiServices()
|
||||
.postApi(data, ApiUrls.applelogin, optionalpar: true);
|
||||
if (response.status == ResponseStatus.SUCCESS) {
|
||||
await prefs.setString('access-token', response.data['data']['token']);
|
||||
if (response.data['data']['is_account_type_updated'] == 3) {
|
||||
Get.toNamed(RouteName.verifygoogleapplepage);
|
||||
Get.toNamed(RouteName.verifygoogleapplepage,
|
||||
arguments: {"email": emailReceived});
|
||||
return ResponseData<dynamic>(
|
||||
"go-to-signin-via-oauth", ResponseStatus.SUCCESS);
|
||||
} else {
|
||||
|
||||
@@ -15,7 +15,9 @@ class AppleOAuthService {
|
||||
logger.d("email is ${credential.email}");
|
||||
logger.d("fullname is ${credential.givenName}");
|
||||
logger.d("token is ${credential.userIdentifier}");
|
||||
// LoginAPI().storeAppleSignin();
|
||||
|
||||
await LoginAPI()
|
||||
.storeAppleSignin({"apple_auth_token": credential.userIdentifier}, emailReceived:credential.email );
|
||||
} catch (e) {
|
||||
print("Error occured");
|
||||
}
|
||||
|
||||
@@ -74,111 +74,108 @@ class _SplashScreenState extends State<SplashScreen> {
|
||||
initConnectivity();
|
||||
log(_connectionStatus.toString());
|
||||
|
||||
Future.delayed(Duration(seconds: 2), () async {
|
||||
if (_connectionStatus.contains(ConnectivityResult.none)) {
|
||||
var result = await Get.to(NoInternet());
|
||||
if (result != null && result) {
|
||||
print('this is first');
|
||||
Timer(const Duration(seconds: 1), () async {
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
token = prefs.getString('access-token');
|
||||
emailid = prefs.getString('email');
|
||||
myusername = prefs.getString('username');
|
||||
fullname = prefs.getString('fullname');
|
||||
phonenumber = prefs.getString('phone');
|
||||
|
||||
if (token == null || token!.isEmpty) {
|
||||
Get.toNamed(RouteName.onboarding1);
|
||||
} else {
|
||||
Getuserdetails().Getuser().then((value) {
|
||||
print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
// .then((value) {
|
||||
if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
String? accountype =
|
||||
getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
if (accountype == "1") {
|
||||
Get.toNamed(RouteName.tellusindividualscreen,
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
} else if (accountype == "2") {
|
||||
Get.toNamed(RouteName.tellusbusinessscreen,
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
}
|
||||
} else {
|
||||
Get.toNamed(RouteName.mainscreen);
|
||||
}
|
||||
});
|
||||
// print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
|
||||
// // .then((value) {
|
||||
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
// String? accountype =
|
||||
// getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
// if (accountype == "1") {
|
||||
// Get.toNamed(RouteName.tellusindividualscreen,
|
||||
// arguments: {
|
||||
// 'pageroute' : "mainscreen"
|
||||
// }
|
||||
// );
|
||||
// } else if (accountype == "2") {
|
||||
// Get.toNamed(RouteName.tellusbusinessscreen);
|
||||
// }
|
||||
// } else {
|
||||
// Get.toNamed(RouteName.mainscreen);
|
||||
// }
|
||||
// }
|
||||
// );
|
||||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
Timer(const Duration(seconds: 2), () async {
|
||||
print('this is second');
|
||||
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
token = prefs.getString('access-token');
|
||||
emailid = prefs.getString('email');
|
||||
myusername = prefs.getString('username');
|
||||
fullname = prefs.getString('fullname');
|
||||
phonenumber = prefs.getString('phone');
|
||||
|
||||
if (token == null || token!.isEmpty) {
|
||||
Get.toNamed(RouteName.onboarding1);
|
||||
} else {
|
||||
Getuserdetails().Getuser().then((value) {
|
||||
print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
// .then((value) {
|
||||
if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
String? accountype =
|
||||
getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
if (accountype == "1") {
|
||||
Get.toNamed(RouteName.tellusindividualscreen,
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
} else if (accountype == "2") {
|
||||
Get.toNamed(RouteName.tellusbusinessscreen,
|
||||
arguments: {'pageroute': "mainscreen"});
|
||||
}
|
||||
} else {
|
||||
Get.toNamed(RouteName.mainscreen);
|
||||
}
|
||||
});
|
||||
|
||||
// }
|
||||
// );
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
// Future.delayed(Duration(seconds: 2), () async {
|
||||
// Timer(const Duration(seconds: 1), () async {
|
||||
// Get.toNamed(RouteName.onboarding1);
|
||||
// });
|
||||
// if (_connectionStatus.contains(ConnectivityResult.none)) {
|
||||
// var result = await Get.to(NoInternet());
|
||||
// if (result != null && result) {
|
||||
// Timer(const Duration(seconds: 1), () async {
|
||||
// SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
// token = prefs.getString('access-token');
|
||||
// emailid = prefs.getString('email');
|
||||
// myusername = prefs.getString('username');
|
||||
// fullname = prefs.getString('fullname');
|
||||
// phonenumber = prefs.getString('phone');
|
||||
|
||||
// if (token == null || token!.isEmpty) {
|
||||
// Get.toNamed(RouteName.onboarding1);
|
||||
// } else {
|
||||
// Getuserdetails().Getuser().then((value) {
|
||||
// print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
// // .then((value) {
|
||||
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
// String? accountype =
|
||||
// getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
// if (accountype == "1") {
|
||||
// Get.toNamed(RouteName.tellusindividualscreen,
|
||||
// arguments: {'pageroute': "mainscreen"});
|
||||
// } else if (accountype == "2") {
|
||||
// Get.toNamed(RouteName.tellusbusinessscreen,
|
||||
// arguments: {'pageroute': "mainscreen"});
|
||||
// }
|
||||
// } else {
|
||||
// Get.toNamed(RouteName.mainscreen);
|
||||
// }
|
||||
// });
|
||||
// // print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
|
||||
// // // .then((value) {
|
||||
// // if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
// // String? accountype =
|
||||
// // getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
// // if (accountype == "1") {
|
||||
// // Get.toNamed(RouteName.tellusindividualscreen,
|
||||
// // arguments: {
|
||||
// // 'pageroute' : "mainscreen"
|
||||
// // }
|
||||
// // );
|
||||
// // } else if (accountype == "2") {
|
||||
// // Get.toNamed(RouteName.tellusbusinessscreen);
|
||||
// // }
|
||||
// // } else {
|
||||
// // Get.toNamed(RouteName.mainscreen);
|
||||
// // }
|
||||
// // }
|
||||
// // );
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// } else {
|
||||
// Timer(const Duration(seconds: 2), () async {
|
||||
// print('this is second');
|
||||
|
||||
// SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
// token = prefs.getString('access-token');
|
||||
// emailid = prefs.getString('email');
|
||||
// myusername = prefs.getString('username');
|
||||
// fullname = prefs.getString('fullname');
|
||||
// phonenumber = prefs.getString('phone');
|
||||
|
||||
// if (token == null || token!.isEmpty) {
|
||||
// Get.toNamed(RouteName.onboarding1);
|
||||
// } else {
|
||||
// Getuserdetails().Getuser().then((value) {
|
||||
// print(getuserobj!.data!.userData!.isProfileUpdated!);
|
||||
// // .then((value) {
|
||||
// if (getuserobj?.data?.userData?.isProfileUpdated == 0) {
|
||||
// String? accountype =
|
||||
// getuserobj?.data?.userData?.principalTypeXid.toString();
|
||||
|
||||
// if (accountype == "1") {
|
||||
// Get.toNamed(RouteName.tellusindividualscreen,
|
||||
// arguments: {'pageroute': "mainscreen"});
|
||||
// } else if (accountype == "2") {
|
||||
// Get.toNamed(RouteName.tellusbusinessscreen,
|
||||
// arguments: {'pageroute': "mainscreen"});
|
||||
// }
|
||||
// } else {
|
||||
// Get.toNamed(RouteName.mainscreen);
|
||||
// }
|
||||
// });
|
||||
|
||||
// // }
|
||||
// // );
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
// });
|
||||
|
||||
Future.delayed(Duration(seconds: 2), () async {
|
||||
Get.toNamed(RouteName.onboarding1);
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
|
||||
Reference in New Issue
Block a user