Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class _HomePageState extends State<HomePage> {
- String username = 'user name';
- String userEmail = 'email address';
- @override
- void initState() {
- super.initState();
- getCurrentUserName().then((value) {
- username = value;
- });
- getLanguage();
- }
- String language;
- var refreshKey = GlobalKey<RefreshIndicatorState>();
- Map data;
- String news;
- String signIn;
- List<Tab> tabs;
- ListView sideBarTabs;
- Future<String> getCurrentUserName() {
- return new Future<String>.delayed(new Duration(milliseconds: 10000),() async {
- //Do a long running task. E.g. Network Call.
- final FirebaseUser currentUser = await _auth.currentUser();
- //assert(user.uid == currentUser.uid);
- username = currentUser.displayName;
- return username;
- });
- }
- Future getLanguage() async {
- SharedPreferences prefs = await SharedPreferences.getInstance();
- int lang = prefs.getInt('Language');
- setState(() {
- if (lang != 1) {
- language = 'ku';
- news = 'ههوا';
- signIn = 'بچۆ ژوورهوه';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- } else{
- language = 'ar';
- news = 'أخبار';
- signIn = 'تسجيل الدخول';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- }
- });
- }
- Future<String> _SignInWithGoogle() async {
- final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
- final GoogleSignInAuthentication googleAuth =
- await googleUser.authentication;
- final AuthCredential credential = GoogleAuthProvider.getCredential(
- accessToken: googleAuth.accessToken,
- idToken: googleAuth.idToken,
- );
- final FirebaseUser user = await _auth.signInWithCredential(credential);
- assert(user.email != null);
- assert(user.displayName != null);
- assert(!user.isAnonymous);
- assert(await user.getIdToken() != null);
- final FirebaseUser currentUser = await _auth.currentUser();
- assert(user.uid == currentUser.uid);
- SharedPreferences prefs = await SharedPreferences.getInstance();
- prefs.setString('username', user.displayName);
- prefs.setString('useremail', user.email);
- //prefs.setString('IdToken', await user.getIdToken());
- }
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- debugShowCheckedModeBanner: false,
- home: DefaultTabController(
- length: 9,
- child: Scaffold(
- appBar: new AppBar(
- bottom: TabBar(
- labelColor: Colors.black,
- isScrollable: true,
- tabs: tabs,
- ),
- iconTheme: new IconThemeData(color: Colors.black),
- backgroundColor: Colors.white,
- title: Text(
- "App Name",
- style: TextStyle(color: Colors.black),
- ),
- ),
- drawer: new Drawer(
- child: sideBarTabs,
- ),
- class _HomePageState extends State<HomePage> {
- String username = 'user name';
- String userEmail = 'email address';
- @override
- void initState() {
- super.initState();
- getCurrentUserName().then((value) {
- username = value;
- });
- getLanguage();
- }
- String language;
- var refreshKey = GlobalKey<RefreshIndicatorState>();
- Map data;
- String news;
- String signIn;
- List<Tab> tabs;
- ListView sideBarTabs;
- Future<String> getCurrentUserName() {
- return new Future<String>(() async{
- //Do a long running task. E.g. Network Call.
- SharedPreferences prefs = await SharedPreferences.getInstance();
- username = prefs.getString('username');
- return username;
- });
- }
- Future getLanguage() async {
- SharedPreferences prefs = await SharedPreferences.getInstance();
- int lang = prefs.getInt('Language');
- setState(() {
- if (lang != 1) {
- language = 'ku';
- news = 'ههوا';
- signIn = 'بچۆ ژوورهوه';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- } else{
- language = 'ar';
- news = 'أخبار';
- signIn = 'تسجيل الدخول';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- }
- });
- }
- Future<String> _SignInWithGoogle() async {
- final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
- final GoogleSignInAuthentication googleAuth =
- await googleUser.authentication;
- final AuthCredential credential = GoogleAuthProvider.getCredential(
- accessToken: googleAuth.accessToken,
- idToken: googleAuth.idToken,
- );
- final FirebaseUser user = await _auth.signInWithCredential(credential);
- assert(user.email != null);
- assert(user.displayName != null);
- assert(!user.isAnonymous);
- assert(await user.getIdToken() != null);
- final FirebaseUser currentUser = await _auth.currentUser();
- assert(user.uid == currentUser.uid);
- SharedPreferences prefs = await SharedPreferences.getInstance();
- prefs.setString('username', user.displayName);
- prefs.setString('useremail', user.email);
- //prefs.setString('IdToken', await user.getIdToken());
- }
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- debugShowCheckedModeBanner: false,
- home: DefaultTabController(
- length: 9,
- child: Scaffold(
- appBar: new AppBar(
- bottom: TabBar(
- labelColor: Colors.black,
- isScrollable: true,
- tabs: tabs,
- ),
- iconTheme: new IconThemeData(color: Colors.black),
- backgroundColor: Colors.white,
- title: Text(
- "App Name",
- style: TextStyle(color: Colors.black),
- ),
- ),
- drawer: new Drawer(
- child: sideBarTabs,
- ),
- class _HomePageState extends State<HomePage> {
- String username = 'user name';
- String userEmail = 'email address';
- @override
- void initState() {
- super.initState();
- getCurrentUser();
- getLanguage();
- }
- String language;
- var refreshKey = GlobalKey<RefreshIndicatorState>();
- Map data;
- String news;
- String signIn;
- List<Tab> tabs;
- ListView sideBarTabs;
- Future<void> getCurrentUser() async{
- SharedPreferences prefs = await SharedPreferences.getInstance();
- setState(() {
- if (_auth.currentUser() != null) {
- username = prefs.getString('username');
- userEmail = prefs.getString('useremail');
- } else{
- username = 'App name';
- userEmail = 'test@app.com';
- }
- });
- }
- Future getLanguage() async {
- SharedPreferences prefs = await SharedPreferences.getInstance();
- int lang = prefs.getInt('Language');
- setState(() {
- if (lang != 1) {
- language = 'ku';
- news = 'ههوا';
- signIn = 'بچۆ ژوورهوه';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- } else{
- language = 'ar';
- news = 'أخبار';
- signIn = 'تسجيل الدخول';
- sideBarTabs = ListView(
- children: <Widget>[
- new UserAccountsDrawerHeader(
- accountName: Text(username),
- accountEmail: Text(userEmail),
- currentAccountPicture: GestureDetector(
- child: new CircleAvatar(
- backgroundColor: Colors.black,
- child: Icon(Icons.person),
- ),
- ),
- decoration: new BoxDecoration(
- color: Colors.pink,
- ),
- ),
- InkWell(
- onTap: () {
- var route = new MaterialPageRoute(
- builder: (BuildContext context) => new HomePage(),
- );
- Navigator.of(context).push(route);
- },
- child: ListTile(
- title: Text(news),
- leading: Icon(Icons.featured_play_list),
- )),
- InkWell(
- onTap: () {
- _SignInWithGoogle();
- },
- child: ListTile(
- title: Text(signIn),
- leading: Icon(Icons.person),
- )),
- ],
- );
- }
- });
- }
- Future<String> _SignInWithGoogle() async {
- final GoogleSignInAccount googleUser = await _googleSignIn.signIn();
- final GoogleSignInAuthentication googleAuth =
- await googleUser.authentication;
- final AuthCredential credential = GoogleAuthProvider.getCredential(
- accessToken: googleAuth.accessToken,
- idToken: googleAuth.idToken,
- );
- final FirebaseUser user = await _auth.signInWithCredential(credential);
- assert(user.email != null);
- assert(user.displayName != null);
- assert(!user.isAnonymous);
- assert(await user.getIdToken() != null);
- final FirebaseUser currentUser = await _auth.currentUser();
- assert(user.uid == currentUser.uid);
- SharedPreferences prefs = await SharedPreferences.getInstance();
- prefs.setString('username', user.displayName);
- prefs.setString('useremail', user.email);
- //prefs.setString('IdToken', await user.getIdToken());
- }
- @override
- Widget build(BuildContext context) {
- return MaterialApp(
- debugShowCheckedModeBanner: false,
- home: DefaultTabController(
- length: 9,
- child: Scaffold(
- appBar: new AppBar(
- bottom: TabBar(
- labelColor: Colors.black,
- isScrollable: true,
- tabs: tabs,
- ),
- iconTheme: new IconThemeData(color: Colors.black),
- backgroundColor: Colors.white,
- title: Text(
- "App Name",
- style: TextStyle(color: Colors.black),
- ),
- ),
- drawer: new Drawer(
- child: sideBarTabs,
- ),
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement