Ejemplo n.º 1
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            //preferenceHandler = new PreferenceHandler();
            var menuController = (MyMenuController)Storyboard.InstantiateViewController("MyMenuController");

            // create a slideout navigation controller with the top navigation controller and the menu view controller
            NavController = new NavController();
            Boolean     IsLogged   = PreferenceHandler.IsLoggedIn();
            UserDetails userDetail = PreferenceHandler.GetUserDetails();

            if (string.IsNullOrEmpty(PreferenceHandler.GetDomainKey()))
            {
                var ConfigurationController = Storyboard.InstantiateViewController("ConfigurationController") as ConfigurationController;
                NavController.PushViewController(ConfigurationController, true);
            }
            else
            {
                InvokeApi.SetDomainUrl(PreferenceHandler.GetDomainKey());
                if (string.IsNullOrEmpty(PreferenceHandler.GetConfig()))
                {
                    var ConfigurationController = Storyboard.InstantiateViewController("ConfigurationController") as ConfigurationController;
                    NavController.PushViewController(ConfigurationController, true);
                }
                else
                {
                    var config = JsonConvert.DeserializeObject <B2CConfiguration>(PreferenceHandler.GetConfig());
                    B2CConfigManager.GetInstance().Initialize(config);
                    if (IsLogged)
                    {
                        if (userDetail.RoleId == 2)
                        {
                            var FeedbackViewController = Storyboard.InstantiateViewController("FeedbackViewController") as FeedbackViewController;
                            NavController.PushViewController(FeedbackViewController, false);
                        }
                        else
                        {
                            var MapViewController = (MapViewController)Storyboard.InstantiateViewController("MapViewController");
                            NavController.PushViewController(MapViewController, false);
                        }
                    }
                    else
                    {
                        var ViewController = (ViewController)Storyboard.InstantiateViewController("ViewController");
                        NavController.PushViewController(ViewController, false);
                    }
                }
            }
            SidebarController                = new SidebarNavigation.SidebarController(this, NavController, menuController);
            SidebarController.MenuWidth      = (IsLogged ? 250 : 0);
            SidebarController.ReopenOnRotate = false;
            SidebarController.MenuLocation   = SidebarNavigation.MenuLocations.Left;
        }
Ejemplo n.º 2
0
        protected override void OnResume()
        {
            base.OnResume();

            Task startupWork = new Task(() =>
            {
                Log.Debug(TAG, "Performing some startup work that takes a bit of time.");
                Task.Delay(3000);  // Simulate a bit of startup work.
                Log.Debug(TAG, "Working in the background - important stuff.");
            });

            startupWork.ContinueWith(async t =>
            {
                Log.Debug(TAG, "Work is finished.");


                if (string.IsNullOrEmpty(PreferenceHandler.GetDomainKey()))
                {
                    StartActivity(new Intent(Application.Context, typeof(ConfigActivity)));
                    Finish();
                }
                else
                {
                    InvokeApi.SetDomainUrl(PreferenceHandler.GetDomainKey());
                    if (string.IsNullOrEmpty(PreferenceHandler.GetConfig()))
                    {
                        StartActivity(new Intent(Application.Context, typeof(ConfigActivity)));
                        Finish();
                    }
                    else
                    {
                        var config = JsonConvert.DeserializeObject <B2CConfiguration>(PreferenceHandler.GetConfig());
                        B2CConfigManager.GetInstance().Initialize(config);
                        if (PreferenceHandler.IsLoggedIn())
                        {
                            await Utils.Utils.RefreshToken(this);
                            Intent intent = new Intent(Application.Context, typeof(AdminDashboardActivity));
                            intent.PutExtra(MainActivity.KEY_USER_ROLE, (int)Constants.USER_ROLE.ADMIN);
                            StartActivity(intent);
                            Finish();
                        }
                        else
                        {
                            StartActivity(new Intent(Application.Context, typeof(LoginActivity)));
                            Finish();
                        }
                    }
                }
            }, TaskScheduler.FromCurrentSynchronizationContext());

            startupWork.Start();
        }
        public void WillPresentNotification(UNUserNotificationCenter center, UNNotification notification, Action <UNNotificationPresentationOptions> completionHandler)
        {
            // Do your magic to handle the notification data
            Console.WriteLine("WillPresentNotification gaurav 1 val");

            //PreferenceHandler prefsHandler = new PreferenceHandler();
            if (PreferenceHandler.IsLoggedIn())
            {
                int roleId = PreferenceHandler.GetUserDetails().RoleId;
                if (roleId == (int)EM_PORTABLE.Utils.Constants.USER_ROLE.ADMIN)
                {
                    BTProgressHUD.ForceiOS6LookAndFeel = true;
                    BTProgressHUD.ShowToast("New Alert Received !", true, 2000.0);
                }
            }
            //UIApplication.SharedApplication.ApplicationIconBadgeNumber++;
            //UserDetails userDT = prefsHandler.GetUserDetails();

            //UIApplication.SharedApplication.ApplicationIconBadgeNumber = UIApplication.SharedApplication.ApplicationIconBadgeNumber + 1;
        }
Ejemplo n.º 4
0
        public override void OnMessageReceived(RemoteMessage message)
        {
            try
            {
                Log.Debug(TAG, "From: " + message.From);
                Log.Debug(TAG, "Notification Message Body: " + message.GetNotification().Body);

                //var preferenceHandler = new PreferenceHandler();
                bool isLoggedIn = PreferenceHandler.IsLoggedIn();
                if (isLoggedIn)
                {
                    int roleId = PreferenceHandler.GetUserDetails().RoleId;
                    if (roleId == (int)EM_PORTABLE.Utils.Constants.USER_ROLE.ADMIN)
                    {
                        SendNotification(message.GetNotification().Body);
                        IncrementNotificationCount();
                    }
                }
            }
            catch (Exception e)
            {
                Log.Debug(TAG, e.Message);
            }
        }
Ejemplo n.º 5
0
        private void SetDrawer()
        {
            //var toolbar = FindViewById<Android.Support.V7.Widget.Toolbar>(Resource.Id.toolbar);
            //SetSupportActionBar(toolbar);

            //Enable support action bar to display hamburger
            SupportActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_menu);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);

            drawerLayout   = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
            navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);

            // var preferenceHandler = new PreferenceHandler();
            bool isLoggedIn = PreferenceHandler.IsLoggedIn();

            if (isLoggedIn)
            {
                int roleId = PreferenceHandler.GetUserDetails().RoleId;
                if (roleId == (int)EM_PORTABLE.Utils.Constants.USER_ROLE.STUDENT)
                {
                    IMenu nav_Menu = navigationView.Menu;
                    nav_Menu.FindItem(Resource.Id.nav_dashboard).SetVisible(false);
                    //nav_Menu.FindItem(Resource.Id.nav_reports).SetVisible(false);
                    nav_Menu.FindItem(Resource.Id.nav_insights).SetVisible(false);
                    nav_Menu.FindItem(Resource.Id.nav_alerts).SetVisible(false);
                }
            }

            TextView textViewUserName =
                navigationView.GetHeaderView(0).FindViewById <TextView>(
                    Resource.Id.textViewUserName);
            //PreferenceHandler pref = new PreferenceHandler();
            UserDetails user = PreferenceHandler.GetUserDetails();

            textViewUserName.Text = user.FirstName + " " + user.LastName;

            TextView textViewLogout =
                navigationView.GetHeaderView(0).FindViewById <TextView>(
                    Resource.Id.tv_logout);

            textViewLogout.Click += delegate
            {
                Logout(new LogoutModel(PreferenceHandler.GetUserDetails().Email));
            };

            navigationView.NavigationItemSelected += (sender, e) =>
            {
                e.MenuItem.SetChecked(true);

                //react to click here and swap fragments or navigate
                switch (e.MenuItem.ItemId)
                {
                case Resource.Id.nav_dashboard:
                    break;

                //case Resource.Id.nav_reports:
                //    StartActivity(new Intent(Application.Context, typeof(GlobalReportsActivity)));
                //    break;
                case Resource.Id.nav_alerts:
                    showAlerts();
                    break;

                case Resource.Id.nav_insights:
                    Intent intent = new Intent(Application.Context, typeof(InsightsActivity));
                    StartActivity(intent);
                    break;

                case Resource.Id.nav_change_password:
                    StartActivity(new Intent(Application.Context, typeof(ChangePasswordActivity)));
                    break;
                }

                drawerLayout.CloseDrawers();
            };
        }
Ejemplo n.º 6
0
        private void SetDrawer()
        {
            SupportActionBar.SetHomeAsUpIndicator(Resource.Drawable.ic_menu);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);

            drawerLayout   = FindViewById <DrawerLayout>(Resource.Id.drawer_layout);
            navigationView = FindViewById <NavigationView>(Resource.Id.nav_view);
            bool isLoggedIn = PreferenceHandler.IsLoggedIn();

            if (isLoggedIn)
            {
                int roleId = PreferenceHandler.GetUserDetails().RoleId;
                if (roleId == (int)EM_PORTABLE.Utils.Constants.USER_ROLE.STUDENT)
                {
                    IMenu nav_Menu = navigationView.Menu;
                    nav_Menu.FindItem(Resource.Id.nav_dashboard).SetVisible(false);
                    nav_Menu.FindItem(Resource.Id.nav_insights).SetVisible(false);
                    nav_Menu.FindItem(Resource.Id.nav_alerts).SetVisible(false);
                }
            }

            TextView textViewUserName =
                navigationView.GetHeaderView(0).FindViewById <TextView>(
                    Resource.Id.textViewUserName);
            UserDetails user = PreferenceHandler.GetUserDetails();

            textViewUserName.Text = user.FirstName + " " + user.LastName;

            TextView textViewLogout =
                navigationView.GetHeaderView(0).FindViewById <TextView>(
                    Resource.Id.tv_logout);

            textViewLogout.Click += delegate
            {
                Logout(new LogoutModel(PreferenceHandler.GetUserDetails().Email));
            };

            navigationView.NavigationItemSelected += (sender, e) =>
            {
                e.MenuItem.SetChecked(true);
                //react to click here and swap fragments or navigate
                switch (e.MenuItem.ItemId)
                {
                case Resource.Id.nav_dashboard:
                    break;

                case Resource.Id.nav_alerts:
                    showAlerts();
                    break;

                case Resource.Id.nav_insights:
                    Intent intent = new Intent(Application.Context, typeof(InsightsActivity));
                    StartActivity(intent);
                    break;

                case Resource.Id.nav_change_password:
                    StartActivity(new Intent(Application.Context, typeof(ChangePasswordActivity)));
                    break;
                }

                drawerLayout.CloseDrawers();
            };

            //if (optionsMenu != null)
            //{
            //    MenuInflater.Inflate(Resource.Menu.main_menu, optionsMenu);

            //    if (PreferenceHandler.GetUserDetails().RoleId == (int)Constants.USER_ROLE.STUDENT)
            //    {
            //        optionsMenu.GetItem(0).SetVisible(false);
            //    }
            //    else
            //    {
            //        RelativeLayout alertItem = (RelativeLayout)(optionsMenu.FindItem(Resource.Id.alerts).ActionView);
            //        alertItem.Click += delegate
            //        {
            //            showAlerts();
            //        };
            //        notifCount = alertItem.FindViewById<TextView>(Resource.Id.notif_count);
            //        setNotificationCount();
            //    }
            //}
        }