public IActionResult Index()
        {
            webapiUrl = "https://localhost:44377/";
            //"http://172.17.0.2/";
            //"https://localhost:44377/";

            try
            {
                TodoItemsViewModel data = new TodoItemsViewModel();
                data.todoItems = new List <TodoItem>();
                using (HttpClient client = new HttpClient())
                {
                    client.BaseAddress = new Uri(webapiUrl);
                    HttpResponseMessage response = client.GetAsync("/api/TodoItems").Result;
                    string result = response.Content.ReadAsStringAsync().Result;
                    data.todoItems = JsonConvert.DeserializeObject <List <TodoItem> >(result);
                }

                return(View(data));
            }
            catch (Exception ex)
            {
                return(Content(ex.Message.ToString()));
            }
        }
Exemple #2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            tasksViewModel = new TodoItemsViewModel();

            int taskID = Intent.GetIntExtra("TaskID", 0);

            if (taskID > 0)
            {
                task = tasksViewModel.GetTask(taskID);
                Log.Debug(TaskyApp.TAG, "selected task {0}", task.ToString());
            }

            SetContentView(Resource.Layout.TaskDetails);
            nameTextEdit  = FindViewById <EditText>(Resource.Id.NameText);
            notesTextEdit = FindViewById <EditText>(Resource.Id.NotesText);
            saveButton    = FindViewById <Button>(Resource.Id.SaveButton);

            doneCheckbox         = FindViewById <CheckBox>(Resource.Id.chkDone);
            doneCheckbox.Checked = task.Done;

            cancelDeleteButton      = FindViewById <Button>(Resource.Id.CancelDeleteButton);
            cancelDeleteButton.Text = (task.ID == 0 ? "Cancel" : "Delete");

            nameTextEdit.Text  = task.Name;
            notesTextEdit.Text = task.Notes;

            // button clicks
            cancelDeleteButton.Click += (sender, e) => { cancelDelete(); };
            saveButton.Click         += (sender, e) => { Save(); };
        }
Exemple #3
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.Main);

            tasksViewModel = new TodoItemsViewModel();

            addTaskButton = FindViewById <Button>(Resource.Id.btn_add);
            if (addTaskButton != null)
            {
                addTaskButton.Click += delegate {
                    Log.Debug(TaskyApp.TAG, "addTaskButton pressed");
                    StartActivity(typeof(TodoItemActivity));
                };
            }

            taskListView = FindViewById <ListView>(Resource.Id.lv_task_list);
            if (taskListView != null)
            {
                taskListView.ItemClick += (object sender, AdapterView.ItemClickEventArgs e) =>
                {
                    Log.Debug(TaskyApp.TAG, "click item {0} and ID {1}", e.Position, e.Id);
                    var taskDetails = new Intent(this, typeof(TodoItemActivity));
                    taskDetails.PutExtra("TaskID", (int)e.Id);
                    StartActivity(taskDetails);
                };
            }

            listAdapter = new TodoItemListAdapter(this, tasksViewModel.GetTasks());
        }
        /// <summary>
        /// GET: TodoItem/
        /// </summary>
        /// <param name="searchString">string to search for specific todo items by name</param>
        /// <returns></returns>
        public async Task <IActionResult> Index(string searchString)
        {
            using (var client = new HttpClient())
            {
                // add the appropriate properties on top of the client base address.
                client.BaseAddress = new Uri("http://todoapilab17.azurewebsites.net/");

                //the .Result is important for us to extract the result of the response from the call
                var response = client.GetAsync("/api/todo/").Result;
                if (response.EnsureSuccessStatusCode().IsSuccessStatusCode)
                {
                    var stringResult = await response.Content.ReadAsStringAsync();

                    List <TodoItem> demTodoItems = JsonConvert.DeserializeObject <List <TodoItem> >(stringResult);
                    var             todoItems    = from t in demTodoItems
                                                   select t;

                    if (!String.IsNullOrEmpty(searchString))
                    {
                        todoItems = todoItems.Where(s => s.Name.Contains(searchString));
                    }

                    var todoItemsVM = new TodoItemsViewModel();
                    todoItemsVM.TodoItems = todoItems.ToList();

                    return(View(todoItemsVM));
                }
                return(View());
            }
        }
Exemple #5
0
        public void ToggleTodoItemCommandIsNotNull()
        {
            // Arrange
            var sut = new TodoItemsViewModel(todoItemService);

            // Assert
            Assert.IsNotNull(sut.ToggleIsCompleteCommand);
        }
Exemple #6
0
        public void DeleteTodoItemCommandIsNotNull()
        {
            // Arrange
            var sut = new TodoItemsViewModel(todoItemService);

            // Assert
            Assert.IsNotNull(sut.DeleteTodoItemCommand);
        }
Exemple #7
0
        public TodoItemsPage()
        {
            InitializeComponent();

            var todoItemService = IoC.IoCRegister.Container.Resolve <ITodoItemService>();

            // TODO: Remove hardcodeds
            MessagingCenter.Subscribe <TodoItemsViewModel, TodoItem>(this, "DeletedTodoItem", async(obj, item) =>
            {
                await DisplayAlert("Info", $"ToDo item {item.Name} has been deleted correctly", "Ok");
            });

            BindingContext = viewModel = new TodoItemsViewModel(todoItemService);
        }
Exemple #8
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            tasksViewModel = new TodoItemsViewModel();
        }
Exemple #9
0
 public TodoItemsView(TodoItemsViewModel viewModel)
 {
     DataContext = viewModel;
     InitializeComponent();
 }