Exemplo n.º 1
0
        public MyAbsencesPage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;

            //show loading indicator
            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            try
            {
                AFList myAbsencesList = (AFList)AfWindowsPhone.getInstance()
                    .getListBuilder()
                    .initBuilder(ShowcaseConstants.MY_ABSENCES_LIST, "connection.xml",
                        ShowcaseConstants.MY_ABSENCES_CONNECTION_KEY, ShowcaseUtils.getUserCredentials())
                    .setSkin(new MyAbsencesSkin())
                    .createComponent();
                ContentRoot.Children.Add(myAbsencesList.getView());
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }

            progressbar.HideAsync();
        }
Exemplo n.º 2
0
        public AbsenceTypesPage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;

            this.NavigationCacheMode = NavigationCacheMode.Disabled;
        }
Exemplo n.º 3
0
        public ProfilePage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;


            //show loading indicator
            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();


            Dictionary<string, string> securityConstraints = ShowcaseUtils.getUserCredentials();

            try
            {
                AFForm profileForm = (AFForm)AfWindowsPhone.getInstance().getFormBuilder()
                    .initBuilder(ShowcaseConstants.PROFILE_FORM, "connection.xml",
                        ShowcaseConstants.PROFILE_FORM_CONNECTION_KEY, securityConstraints).createComponent();

                ContentRoot.Children.Add(profileForm.getView());
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }

            var updateButton = new Button();
            updateButton.Content = Localization.translate("btn.update");
            updateButton.Click += UpdateButtonOnClick;
            var resetButton = new Button();
            resetButton.Content = Localization.translate("btn.reset");
            resetButton.Click += ResetButtonOnClick;
            var buttons = new StackPanel();
            buttons.Orientation = Orientation.Horizontal;
            buttons.HorizontalAlignment = HorizontalAlignment.Center;
            buttons.Children.Add(updateButton);
            buttons.Children.Add(resetButton);
            ContentRoot.Children.Add(buttons);

            //hide loading indicator
            progressbar.HideAsync();
        }
        public AbsenceManagementPage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;

            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            try
            {
                var absenceList = (AFList) AfWindowsPhone.getInstance().getListBuilder()
                    .initBuilder(ShowcaseConstants.ABSENCE_INSTANCE_EDIT_LIST, "connection.xml",
                        ShowcaseConstants.ABSENCE_INSTANCE_EDIT_LIST_CONNECTION_KEY,
                        ShowcaseUtils.getUserCredentials()).setSkin(new AbsenceManagementSkin())
                    .createComponent();
                AMListPanel.Children.Add(absenceList.getView());


                var absenceForm = (AFForm)AfWindowsPhone.getInstance().getFormBuilder()
                    .initBuilder(ShowcaseConstants.ABSENCE_INSTANCE_EDIT_FORM, "connection.xml",
                        ShowcaseConstants.ABSENCE_INSTANCE_EDIT_FORM_CONNECTION_KEY, ShowcaseUtils.getUserCredentials())
                    .setSkin(new AbsenceManagementSkin()).createComponent();
                AMFormPanel.Children.Add(absenceForm.getView());

                //connect list and form
                absenceList.getListView().IsItemClickEnabled = true;
                absenceList.getListView().ItemClick += AbsenceManagementPage_ItemClick;
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }
            var perform = new Button();
            perform.HorizontalAlignment = HorizontalAlignment.Center;
            perform.Content = Localization.translate("btn.perform");
            perform.Click += Perform_Click;
            AMFormPanel.Children.Add(perform);


            progressbar.HideAsync();
        }
Exemplo n.º 5
0
        public CreateAbsencePage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;

            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            var userCredentials = ShowcaseUtils.getUserCredentials();
            userCredentials.Add("user", userCredentials["username"]);
            try
            {
                AFForm ćreateAbsenceForm =
                    (AFForm)
                        AfWindowsPhone.getInstance()
                            .getFormBuilder()
                            .initBuilder(ShowcaseConstants.ABSENCE_ADD_FORM, "connection.xml",
                                ShowcaseConstants.ABSENCE_ADD_FORM_CONNECTION_KEY, userCredentials)
                            .createComponent();
                ContentRoot.Children.Add(ćreateAbsenceForm.getView());
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }
            var addButton = new Button();
            addButton.Content = Localization.translate("button.add");
            addButton.HorizontalAlignment = HorizontalAlignment.Center;
            addButton.Click += AddButtonOnClick;

            ContentRoot.Children.Add(addButton);

            progressbar.HideAsync();
        }
        public SupportedCountriesPage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;


            //show loading indicator
            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            try
            {
                var countryList =
                    (AFList)
                        AfWindowsPhone.getInstance()
                            .getListBuilder()
                            .initBuilder(ShowcaseConstants.COUNTRY_LIST, "connection.xml",
                                ShowcaseConstants.COUNTRY_LIST_CONNECTION_KEY, ShowcaseUtils.getUserCredentials())
                            .createComponent();
                CountryListPanel.Children.Add(countryList.getView());


                var countryForm = (AFForm)AfWindowsPhone.getInstance()
                    .getFormBuilder()
                    .initBuilder(ShowcaseConstants.COUNTRY_FORM, "connection.xml",
                        ShowcaseConstants.COUNTRY_FORM_CONNECTION_KEY, ShowcaseUtils.getUserCredentials())
                    .createComponent();
                CountryFormPanel.Children.Add(countryForm.getView());

                countryList.getListView().IsItemClickEnabled = true;
                countryList.getListView().ItemClick += OnItemClick;
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }
            var perform = new Button();
            perform.Content = Localization.translate("btn.perform");
            perform.Click += Perform_Click;

            var reset = new Button();
            reset.Content = Localization.translate("btn.reset");
            reset.Click += Reset_Click;

            var clear = new Button();
            clear.Content = Localization.translate("btn.clear");
            clear.Click += Clear_Click;

            var buttons = new StackPanel();
            buttons.HorizontalAlignment = HorizontalAlignment.Center;
            buttons.Orientation = Orientation.Horizontal;
            buttons.Children.Add(perform);
            buttons.Children.Add(reset);
            buttons.Children.Add(clear);
            CountryFormPanel.Children.Add(buttons);

            progressbar.HideAsync();
        }
Exemplo n.º 7
0
        public WelcomePage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;


            //language changer - start
            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            var commandBar = new CommandBar();
            var cz = new AppBarButton();
            var en = new AppBarButton();
            cz.Label = "Čeština";
            cz.Click += async (sender, args) =>
            {
                await progressbar.ShowAsync();
                var previousCacheSize = Frame.CacheSize;
                Frame.CacheSize = 0;
                Localization.changeLanguage("cs");
                await Task.Delay(100);
                Frame.Navigate(GetType());
                if (Frame.CanGoBack)
                {
                    Frame.BackStack.RemoveAt(0);
                }
                Frame.CacheSize = previousCacheSize;
                await progressbar.HideAsync();
            };
            en.Label = "English";
            en.Click += async (sender, args) =>
            {
                await progressbar.ShowAsync();
                var previousCacheSize = Frame.CacheSize;
                Frame.CacheSize = 0;
                Localization.changeLanguage("en");
                await Task.Delay(100);
                Frame.Navigate(GetType());
                if (Frame.CanGoBack)
                {
                    Frame.BackStack.RemoveAt(0);
                }
                Frame.CacheSize = previousCacheSize;
                await progressbar.HideAsync();
            };
            commandBar.SecondaryCommands.Add(cz);
            commandBar.SecondaryCommands.Add(en);
            BottomAppBar = commandBar;
            //language changer end

            var welcomeUser = new TextBlock();
            welcomeUser.Text = Localization.translate("welcome.msg") + ":" + ShowcaseUtils.getUserLogin();
            welcomeUser.FontSize = 22;

            var profile = new Button();
            profile.Content = Localization.translate("menu.profile");
            profile.HorizontalAlignment = HorizontalAlignment.Stretch;
            profile.Click += (sender, args) => { Frame.Navigate(typeof(ProfilePage)); };

            var logout = new Button();
            logout.Content = Localization.translate("btn.logout");
            logout.HorizontalAlignment = HorizontalAlignment.Stretch;
            logout.Click += (sender, args) =>
            {
                ShowcaseUtils.clearUserInPreferences();
                Frame.Navigate(typeof(LoginPage));
                Frame.BackStack.Clear();
            };

            var absenceManagement = new Button();
            absenceManagement.Content = Localization.translate("menu.absenceManagement");
            absenceManagement.HorizontalAlignment = HorizontalAlignment.Stretch;
            absenceManagement.Click += (sender, args) => { Frame.Navigate(typeof(AbsenceManagementPage)); };

            var supportedCountries = new Button();
            supportedCountries.Content = Localization.translate("menu.countries");
            supportedCountries.HorizontalAlignment = HorizontalAlignment.Stretch;
            supportedCountries.Click += (sender, args) => { Frame.Navigate(typeof(SupportedCountriesPage)); };

            var myAbsences = new Button();
            myAbsences.Content = Localization.translate("menu.myAbsences");
            myAbsences.HorizontalAlignment = HorizontalAlignment.Stretch;
            myAbsences.Click += (sender, args) => { Frame.Navigate(typeof(MyAbsencesPage)); };

            var createAbsence = new Button();
            createAbsence.Content = Localization.translate("menu.createAbsence");
            createAbsence.HorizontalAlignment = HorizontalAlignment.Stretch;
            createAbsence.Click += (sender, args) => { Frame.Navigate(typeof(CreateAbsencePage)); };

            var absenceTypes = new Button();
            absenceTypes.Content = Localization.translate("menu.absenceTypes");
            absenceTypes.HorizontalAlignment = HorizontalAlignment.Stretch;
            absenceTypes.Click += (sender, args) => { showChooseCountryDialogAndNavigate(); };

            ContentRoot.Children.Add(welcomeUser);
            ContentRoot.Children.Add(supportedCountries);
            ContentRoot.Children.Add(profile);
            ContentRoot.Children.Add(myAbsences);
            ContentRoot.Children.Add(absenceManagement);
            ContentRoot.Children.Add(createAbsence);
            ContentRoot.Children.Add(absenceTypes);
            ContentRoot.Children.Add(logout);

            progressbar.HideAsync();
        }
Exemplo n.º 8
0
        public LoginPage()
        {
            this.InitializeComponent();

            this.navigationHelper = new NavigationHelper(this);
            this.navigationHelper.LoadState += this.NavigationHelper_LoadState;
            this.navigationHelper.SaveState += this.NavigationHelper_SaveState;

            var progressbar = StatusBar.GetForCurrentView().ProgressIndicator;
            progressbar.Text = Localization.translate("please.wait");
            progressbar.ShowAsync();

            var commandBar = new CommandBar();
            var cz = new AppBarButton();
            var en = new AppBarButton();
            cz.Label = "Čeština";
            cz.Click += async (sender, args) =>
            {
                await progressbar.ShowAsync();
                var previousCacheSize = Frame.CacheSize;
                Frame.CacheSize = 0;
                Localization.changeLanguage("cs");
                await Task.Delay(100);
                Frame.Navigate(GetType());
                if (Frame.CanGoBack)
                {
                    Frame.BackStack.RemoveAt(0);
                }
                Frame.CacheSize = previousCacheSize;
                await progressbar.HideAsync();
            };
            en.Label = "English";
            en.Click += async (sender, args) =>
            {
                await progressbar.ShowAsync();
                var previousCacheSize = Frame.CacheSize;
                Frame.CacheSize = 0;
                Localization.changeLanguage("en");
                await Task.Delay(100);
                Frame.Navigate(GetType());
                if (Frame.CanGoBack)
                {
                    Frame.BackStack.RemoveAt(0);
                }
                Frame.CacheSize = previousCacheSize;
                await progressbar.HideAsync();
            };
            commandBar.SecondaryCommands.Add(cz);
            commandBar.SecondaryCommands.Add(en);
            BottomAppBar = commandBar;

            try
            {
                var login =
                    (AFForm)
                        AfWindowsPhone.getInstance()
                            .getFormBuilder()
                            .initBuilder(ShowcaseConstants.LOGIN_FORM, "connection.xml",
                                ShowcaseConstants.LOGIN_FORM_CONNECTION_KEY)
                            .setSkin(new LoginFormSkin())
                            .createComponent();
                ContentRoot.Children.Add(login.getView());
            }
            catch (Exception ex)
            {
                ShowcaseUtils.showComponentBuildFailedDialog();
                Debug.WriteLine(ex.StackTrace);
                progressbar.HideAsync();
                return;
            }
            var loginBtn = new Button();
            loginBtn.Content = Localization.translate("btn.login");
            loginBtn.HorizontalAlignment = HorizontalAlignment.Right;
            loginBtn.Click += LoginBtn_Click;
            ContentRoot.Children.Add(loginBtn);

            progressbar.HideAsync();
        }