private void GetData()
        {
            TodoistService todoistService = new TodoistService();

            if (app.projects != null && app.projects.Count() > 0)
            {
                UpdateFilterTasksAndProjects();
            }

            if (app.TemporaryDesynchronized.Count > 0)
                SyncStatusLabel.Text = String.Format("{0} item(s) to be sync.", app.TemporaryDesynchronized.Count);

            progressIndicator.Text = "Updating data";

            updateAllIconButton.IsEnabled = false;

            todoistService.SyncAndGetUpdated(progressIndicator,
            (data) =>
            {
                UpdateBasedOnTemporaryDessychronized(data);

                app.projects = data.Projects;
                app.items = data.Items;
                app.notes = data.Notes;
            },
            (error) =>
            {
                MessageBox.Show(error, "Metroist", MessageBoxButton.OK);
            },
            () =>
            {
                updateAllIconButton.IsEnabled = true;
                UpdateFilterTasksAndProjects();
            },
            () =>
            {
                updateAllIconButton.IsEnabled = true;

                if (app.settings.ApplicationStartingCounter == 5 && !app.settings.ApplicationIsRated)
                {
                    Visual.Controls.MessageBox msgBox = Visual.Controls.MessageBox.Show(
                        "Do you like Metroist for Windows Phone?", "Love us?", "5 stars!", "maybe later");

                    msgBox.Closed += (sender, e) =>
                    {
                        if (e.Result == Visual.Controls.MessageBox.CustomMessageBoxResult.Yes)
                        {
                            app.settings.ApplicationIsRated = true;

                            try
                            {
                                MarketplaceReviewTask marketplaceReviewTask = new MarketplaceReviewTask();
                                marketplaceReviewTask.Show();
                            }
                            catch { }
                        }
                        else
                            app.settings.ApplicationStartingCounter = 0;
                    };
                }
            });

            HandleNetworkStatusViewer();
        }