public void Test_AddTask_AddsTaskToCategory()
        {
            DateTime date1        = new DateTime(2008, 4, 10);
            Category testCategory = new Category("Household chores");

            testCategory.Save();

            Task testTask = new Task("Mow the lawn", date1);

            testTask.Save();

            Task testTask2 = new Task("Water the garden", date1);

            testTask2.Save();

            testCategory.AddTask(testTask);
            testCategory.AddTask(testTask2);

            List <Task> result   = testCategory.GetTasks();
            List <Task> testList = new List <Task> {
                testTask, testTask2
            };

            Assert.Equal(testList, result);
        }
Exemple #2
0
        public void Categories_AddTask_AssociateTaskWithCategory()
        {
            // Arrange
            Category newCategory = new Category("Chores");

            newCategory.Save();
            Task firstTask = new Task("Wash Dishes", "1999-01-01");

            firstTask.Save();
            Task secondTask = new Task("Empty Dishwasher", "2000-01-01");

            secondTask.Save();

            // Act
            newCategory.AddTask(firstTask);
            newCategory.AddTask(secondTask);

            List <Task> result   = newCategory.GetTasks();
            List <Task> testList = new List <Task> {
                firstTask, secondTask
            };

            // Assert
            Assert.Equal(testList, result);
        }
Exemple #3
0
        public void Test_AddTask_AddsTaskToCategory()
        {
            //Arrange
            Category testCategory = new Category("Household chores");

            testCategory.Save();

            Task testTask = new Task("Mow the lawn");

            testTask.Save();

            Task testTask2 = new Task("Water the garden");

            testTask2.Save();

            //Act
            testCategory.AddTask(testTask);
            testCategory.AddTask(testTask2);

            List <Task> result   = testCategory.GetTasks();
            List <Task> testList = new List <Task> {
                testTask, testTask2
            };

            //Assert
            Assert.Equal(testList, result);
        }
Exemple #4
0
        public void Test_GetTasks_RetrievesAllTasksWithCategory()
        {
            //Arrange
            Category testCategory = new Category("Household chores");

            testCategory.Save();

            Task firstTask = new Task("Mow the lawn", "2017-02-17");

            firstTask.Save();
            Task secondTask = new Task("Do the dishes", "2017-02-17");

            secondTask.Save();

            //Act
            testCategory.AddTask(firstTask);
            testCategory.AddTask(secondTask);
            List <Task> testTasks = new List <Task> {
                firstTask, secondTask
            };
            List <Task> savedTasks = testCategory.GetTasks();

            //Assert
            Assert.Equal(testTasks, savedTasks);
        }
Exemple #5
0
        public void Test_GetTasks_ReturnsAllCategoryTasks()
        {
            //Arrange
            Category testCategory = new Category("Household chores");

            testCategory.Save();

            Task testTask1 = new Task("Mow the lawn");

            testTask1.Save();

            Task testTask2 = new Task("Buy plane ticket");

            testTask2.Save();

            //Act
            testCategory.AddTask(testTask1);
            List <Task> savedTasks = testCategory.GetTasks();
            List <Task> testList   = new List <Task> {
                testTask1
            };

            //Assert
            Assert.Equal(testList, savedTasks);
        }
        public void Test_AddTask_AddsTaskToCategory()
        {
            //Arrange
              Category testCategory = new Category("Household chores");
              testCategory.Save();

              Task testTask = new Task("Mow the lawn", false);
              testTask.Save();

              Task testTask2 = new Task("Water the garden", false);
              testTask2.Save();

              //Act
              testCategory.AddTask(testTask);
              testCategory.AddTask(testTask2);

              List<Task> result = testCategory.GetTasks();
              List<Task> testList = new List<Task>{testTask, testTask2};

              //Assert
              Assert.Equal(testList, result);
        }
        public void Test_Delete_DeletesCategoryAssociationsFromDatabase()
        {
            //Arrange
              Task testTask = new Task("Mow the lawn", false);
              testTask.Save();

              string testName = "Home stuff";
              Category testCategory = new Category(testName);
              testCategory.Save();

              //Act
              testCategory.AddTask(testTask);
              testCategory.Delete();

              List<Category> resultTaskCategories = testTask.GetCategories();
              List<Category> testTaskCategories = new List<Category> {};

              //Assert
              Assert.Equal(testTaskCategories, resultTaskCategories);
        }
        public void Test_Delete_DeletesCategoryAssociationsFromDatabase()
        {
            DateTime date1    = new DateTime(2008, 4, 10);
            Task     testTask = new Task("Mow the lawn", date1);

            testTask.Save();

            string   testName     = "Home Stuff";
            Category testCategory = new Category(testName);

            testCategory.Save();

            testCategory.AddTask(testTask);
            testCategory.Delete();

            List <Category> resultTaskCategories = testTask.GetCategories();
            List <Category> testTaskCategories   = new List <Category> {
            };

            Assert.Equal(testTaskCategories, resultTaskCategories);
        }
        public void Test_GetTasks_RetrievesAllTasksWithCategory()
        {
            Category testCategory = new Category("Household chores");

            testCategory.Save();
            DateTime time = new DateTime(2016, 08, 08);

            Task firstTask = new Task("Mow the lawn", time);

            firstTask.Save();
            Task secondTask = new Task("Do the dishes", time);

            secondTask.Save();

            testCategory.AddTask(firstTask);
            List <Task> testTaskList = new List <Task> {
                firstTask
            };
            List <Task> resultTaskList = testCategory.GetTasks();

            Assert.Equal(testTaskList, resultTaskList);
        }
Exemple #10
0
        public void Delete_DeletesCategoryAssociationsFromDatabase_CategoryList()
        {
            //Arrange
            Task testTask = new Task("Mow the lawn", true);

            testTask.Save();
            string   testName     = "Home stuff";
            Category testCategory = new Category(testName);

            testCategory.Save();

            //Act
            testCategory.AddTask(testTask);
            testCategory.Delete();

            List <Category> resultTaskCategories = testTask.GetCategories();
            List <Category> testTaskCategories   = new List <Category> {
            };

            //Assert
            Assert.Equal(testTaskCategories, resultTaskCategories);
        }
        public void Test_GetTasks_ReturnsAllCatergoryTasks()
        {
            DateTime date1        = new DateTime(2008, 4, 10);
            Category testCategory = new Category("Household chores");

            testCategory.Save();

            Task testTask1 = new Task("Mow the lawn", date1);

            testTask1.Save();

            Task testTask2 = new Task("Buy plane ticket", date1);

            testTask2.Save();

            testCategory.AddTask(testTask1);
            List <Task> savedTasks = testCategory.GetTasks();
            List <Task> testList   = new List <Task> {
                testTask1
            };

            Assert.Equal(testList, savedTasks);
        }
        public void Test_GetTasks_ReturnAllCategoryTasks()
        {
            Category testCategory = new Category("Househould chores");
              testCategory.Save();
              DateTime testTime = new DateTime(2016, 1, 1);

              Task testTask1= new Task("Mow the lawn",testTime);
              testTask1.Save();

              Task testTask2 = new Task("Buy plane ticket",testTime);
              testTask2.Save();

              testCategory.AddTask(testTask1);
              List<Task> savedTasks = testCategory.GetTasks();
              List<Task> testList= new List<Task>{testTask1};
              Assert.Equal(testList,savedTasks);
        }
        public void Test_Delete_DeletesCategoryAssociationsFromDatabase()
        {
            //Arrange
              DateTime testTime = new DateTime(2016, 1, 1);

              Task testTask = new Task("Mow the lawn",testTime);
              testTask.Save();

              string testName = "Home stuff";
              Category testCategory = new Category(testName);
              testCategory.Save();

              //Act
              testCategory.AddTask(testTask);
              testCategory.Delete();

              List<Category> resultTaskCategories = testTask.GetCategories();
              List<Category> testTaskCategories = new List<Category> {};
              List<Task> resultsTasks= Task.GetAll();
              List<Task> testTasks= new List<Task>{testTask};

              //Assert
              Assert.Equal(testTaskCategories, resultTaskCategories);
              Assert.Equal(testTasks, resultsTasks);
        }
        public HomeModule()
        {
            //Index
            Get["/"] = _ => {
              List<Category> AllCategories = Category.GetAll();
              return View["index.cshtml", AllCategories];
            };

            //Get: Lists
            Get["/tasks"] = _ => {
              List<Task> AllTasks = Task.GetAll();
              return View["tasks.cshtml", AllTasks];
            };
            Get["/categories"] = _ => {
              List<Category> AllCategories = Category.GetAll();
              return View["categories.cshtml", AllCategories];
            };

            //Create new category
            Get["/categories/new"] = _ => {
              return View["categories_form.cshtml"];
            };
            Post["/categories/new"] = _ => {
              Category newCategory = new Category(Request.Form["category-name"]);
              newCategory.Save();
              return View["success.cshtml"];
            };

            //Create new task
            Get["/tasks/new"] = _ => {
              List<Category> AllCategories = Category.GetAll();
              return View["tasks_form.cshtml", AllCategories];
            };
            Post["/tasks/new"] = _ => {
              Task newTask = new Task(Request.Form["task-description"]);
              newTask.Save();
              Category taskCategory = new Category(Request.Form["category-id"]);
              Console.WriteLine("taskCategory: {0}", taskCategory.GetName());
              taskCategory.AddTask(newTask);
              return View["success.cshtml"];
            };

            //"Clear All" routes
            Post["/tasks/clear"] = _ => {
              Task.DeleteAll();
              return View["cleared.cshtml"];
            };
            Post["/categories/clear"] = _ => {
              Category.DeleteAll();
              return View["cleared.cshtml"];
            };

            //View specific category
            Get["categories/{id}"] = parameters => {
              Dictionary<string, object> model = new Dictionary<string, object>();
              var SelectedCategory = Category.Find(parameters.id);
              var CategoryTasks = SelectedCategory.GetTasks();
              model.Add("category", SelectedCategory);
              model.Add("tasks", CategoryTasks);
              return View["category.cshtml", model];
            };

            //View specific task
            Get["tasks/{id}"] = parameters => {
              Dictionary<string, object> model = new Dictionary<string, object>();
              Task SelectedTask = Task.Find(parameters.id);
              return View["task.cshtml", SelectedTask];
            };

            //Edit specific category
            Get["category/edit/{id}"] = parameters => {
              Category SelectedCategory = Category.Find(parameters.id);
              return View["category_edit.cshtml", SelectedCategory];
            };
            Post["category/edit/{id}"] = parameters => {
              Category SelectedCategory = Category.Find(parameters.id);
              SelectedCategory.Update(Request.Form["category-name"]);
              return View["success.cshtml"];
            };

            //Delete specific category
            Get["category/delete/{id}"] = parameters => {
              Category SelectedCategory = Category.Find(parameters.id);
              return View["category_delete.cshtml", SelectedCategory];
            };
            Post["category/delete/{id}"] = parameters => {
              Category SelectedCategory = Category.Find(parameters.id);
              SelectedCategory.Delete();
              return View["success.cshtml"];
            };
        }
        public HomeModule()
        {
            Get["/"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["index.cshtml", AllCategories]);
            };
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };
            Get["/tasks/new"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["tasks_form.cshtml", AllCategories]);
            };
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], new DateTime(Request.Form["due-date"]));
                newTask.Save();
                return(View["success.cshtml"]);
            };
            Delete["/tasks/delete"] = _ => {
                Task.DeleteAll();
                return(View["cleared.cshtml"]);
            };
            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };
            Post["task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };
            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };
            Get["/tasks/complete"] = _ => {
                List <Task> completedTasks = Task.GetAll(true);
                return(View["tasks.cshtml", completedTasks]);
            };
            Get["/tasks/incomplete"] = _ => {
                List <Task> incompleteTasks = Task.GetAll(false);
                return(View["tasks.cshtml", incompleteTasks]);
            };
            Patch["/tasks/{id}/complete"] = parameters => {
                Task.Complete(parameters.id);
                List <Task> allTasks = Task.GetAll();
                return(View["tasks.cshtml", allTasks]);
                // List<Category> AllCategories = Category.GetAll();
                // return View["index.cshtml", AllCategories];
            };
        }
Exemple #16
0
        public HomeModule()
        {
            Get["/"] = _ => {
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };

            //Create a new task
            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            };
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], Request.Form["date"]);
                newTask.Save();
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };

            //Create a new category
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };

            Get["tasks/{id}"] = parameters =>
            {
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                Task            targetTask     = Task.Find(parameters.id);
                List <Category> taskCategories = targetTask.GetCategories();
                List <Category> allCategories  = Category.GetAll();
                passedModel.Add("task", targetTask);
                passedModel.Add("taskCategories", taskCategories);
                passedModel.Add("allCategories", allCategories);
                return(View["task.cshtml", passedModel]);
            };
            Delete["tasks/{id}"] = parameters =>
            {
                Task targetTask = Task.Find(parameters.id);
                targetTask.Delete();
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };
            Patch["/tasks/{id}"] = parameters =>
            {
                string newName = Request.Form["new-task-name"];
                string newDate = Request.Form["new-task-date"];
                Task.Find(parameters.id).Update(newName, newDate);
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };

            Get["categories/{id}"] = parameters =>
            {
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                Category    targetCategory = Category.Find(parameters.id);
                List <Task> categoryTasks  = targetCategory.GetTasks();
                List <Task> allTasks       = Task.GetAll();
                passedModel.Add("category", targetCategory);
                passedModel.Add("categoryTasks", categoryTasks);
                passedModel.Add("allTasks", allTasks);
                return(View["category.cshtml", passedModel]);
            };
            Delete["categories/{id}"] = parameters =>
            {
                Category targetCategory = Category.Find(parameters.id);
                targetCategory.Delete();
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };
            Patch["/categories/{id}"] = parameters =>
            {
                string newName = Request.Form["new-category-name"];
                Category.Find(parameters.id).Update(newName);
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };

            Post["task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };
            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                Dictionary <string, object> passedModel = new Dictionary <string, object>()
                {
                };
                passedModel["categories"] = Category.GetAll();
                passedModel["tasks"]      = Task.GetAll();
                return(View["index.cshtml", passedModel]);
            };
            //
            // Get["/categories"] = _ => {
            //   var allCategories = Category.GetAll();
            //   return View["categories.cshtml", allCategories];
            // };
            // Post["/categories"] = _ => {
            //   var newCategory = new Category(Request.Form["category-name"]);
            //   newCategory.Save();
            //   var allCategories = Category.GetAll();
            //   return View["categories.cshtml", allCategories];
            // };
            //
            // Get["/categories/new"] = _ => {
            //   return View["category_form.cshtml"];
            // };
            //
            // Get["/categories/{id}"] = parameters => {
            //   Dictionary<string, object> model = new Dictionary<string, object>();
            //   var selectedCategory = Category.Find(parameters.id);
            //   var categoryTasks = selectedCategory.GetTasks();
            //   model.Add("category", selectedCategory);
            //   model.Add("tasks", categoryTasks);
            //   return View["category.cshtml", model];
            // };
            //
            // Get["/categories/{id}/tasks/new"] = parameters => {
            //   Dictionary<string, object> model = new Dictionary<string, object>();
            //   Category selectedCategory = Category.Find(parameters.id);
            //   List<Task> allTasks = selectedCategory.GetTasks();
            //   model.Add("category", selectedCategory);
            //   model.Add("tasks", allTasks);
            //   return View["category_tasks_form.cshtml", model];
            // };
            //
            // Post["/delete/task/{categoryId}/{taskId}"] = parameters => {
            //     Task targetTask = Task.Find(parameters.taskId);
            //     targetTask.Delete();
            //     Dictionary<string, object> model = new Dictionary<string, object>();
            //     var selectedCategory = Category.Find(parameters.categoryId);
            //     var categoryTasks = selectedCategory.GetTasks();
            //     model.Add("category", selectedCategory);
            //     model.Add("tasks", categoryTasks);
            //     return View["category.cshtml", model];
            // };
            //
            // Post["/delete/category/{categoryId}"] = parameters => {
            //     Category targetCategory = Category.Find(parameters.categoryId);
            //     targetCategory.Delete();
            //     List<Category> allCategories = Category.GetAll();
            //     return View["categories.cshtml", allCategories];
            // };
            //
            // Post["/tasks"] = _ => {
            //   Dictionary<string, object> model = new Dictionary<string, object>();
            //   Category selectedCategory = Category.Find(Request.Form["category-id"]);
            //   string taskDescription = Request.Form["task-description"];
            //   int newCategoryId = int.Parse(Request.Form["category-id"]);
            //   string newDate = Request.Form["date"];
            //   Task newTask = new Task(taskDescription, newCategoryId, newDate);
            //   newTask.Save();
            //   List<Task> categoryTasks = selectedCategory.GetTasks();
            //   model.Add("tasks", categoryTasks);
            //   model.Add("category", selectedCategory);
            //   return  View["category.cshtml", model];
            // };
        }
Exemple #17
0
 public void Test_GetTasks_RetrievesAllTasksWithCategory()
 {
     Category testCategory = new Category("Household chores");
       testCategory.Save();
       Task firstTask = new Task("Mow the lawn", new DateTime(2016,2,2), false);
       firstTask.Save();
       Task secondTask = new Task("Do the dishes",new DateTime(2016,2,2), false);
       secondTask.Save();
       testCategory.AddTask(firstTask);
       List<Task> testTaskList = new List<Task> {firstTask};
       List<Task> resultTaskList = testCategory.GetTasks();
       Assert.Equal(testTaskList, resultTaskList);
 }
Exemple #18
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };
            Post["/tasks"] = _ => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    selectedCategory      = Category.Find(Request.Form["category-id"]);
                List <Task> categoryTasks         = selectedCategory.GetTasks();
                string      taskDescription       = Request.Form["task-description"];
                Task        newTask = new Task(taskDescription);
                categoryTasks.Add(newTask);
                model.Add("tasks", categoryTasks);
                model.Add("category", selectedCategory);
                return(View["category.cshtml", model]);
            };
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };
            //Create a new task
            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            };
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };

            //Create a new category
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };

            Post["task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };
            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };
            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };
            Get["/categories/{id}/tasks/new"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    selectedCategory      = Category.Find(parameters.id);
                List <Task> allTasks = selectedCategory.GetTasks();
                model.Add("category", selectedCategory);
                model.Add("tasks", allTasks);
                return(View["category_tasks_form.cshtml", model]);
            };
        }
Exemple #19
0
 public HomeModule()
 {
     Get["/"] = _ => {
         List <Category> AllCategories = Category.GetAll();
         return(View["index.cshtml", AllCategories]);
     };
     Get["/tasks"] = _ => {
         List <Task> AllTasks = Task.GetAll();
         return(View["tasks.cshtml", AllTasks]);
     };
     Get["/categories"] = _ => {
         List <Category> AllCategories = Category.GetAll();
         return(View["categories.cshtml", AllCategories]);
     };
     Get["/categories/new"] = _ => {
         return(View["categories_form.cshtml"]);
     };
     Post["/categories/new"] = _ => {
         Category newCategory = new Category(Request.Form["category-name"]);
         newCategory.Save();
         return(View["success.cshtml"]);
     };
     Get["/tasks/new"] = _ => {
         List <Category> AllCategories = Category.GetAll();
         return(View["tasks_form.cshtml", AllCategories]);
     };
     Post["/tasks/new"] = _ => {
         Task newTask = new Task(Request.Form["task-description"], Request.Form["task-date"]);
         newTask.Save();
         return(View["success.cshtml"]);
     };
     Post["/tasks/delete"] = _ => {
         Task.DeleteAll();
         return(View["tasks_cleared.cshtml"]);
     };
     Post["/categories/clear"] = _ => {
         Category.DeleteAll();
         Task.DeleteAll();
         return(View["categories_cleared.cshtml"]);
     };
     Get["/tasks/{id}"] = parameters => {
         Dictionary <string, object> model = new Dictionary <string, object>();
         Task            SelectedTask      = Task.Find(parameters.id);
         List <Category> TaskCategories    = SelectedTask.GetCategories();
         List <Category> AllCategories     = Category.GetAll();
         model.Add("task", SelectedTask);
         model.Add("taskCategories", TaskCategories);
         model.Add("allCategories", AllCategories);
         return(View["task.cshtml", model]);
     };
     Get["/categories/{id}"] = parameters => {
         Dictionary <string, object> model = new Dictionary <string, object>();
         Category    SelectedCategory      = Category.Find(parameters.id);
         List <Task> CategoryTasks         = SelectedCategory.GetTasks();
         List <Task> AllTasks = Task.GetAll();
         model.Add("category", SelectedCategory);
         model.Add("categoryTasks", CategoryTasks);
         model.Add("allTasks", AllTasks);
         return(View["category.cshtml", model]);
     };
     Patch["/categories/finished/{id}"] = parameters => {
         Task isTaskDone = Task.Find(parameters.id);
         isTaskDone.UpdateDone(1);
         return(View["index.cshtml"]);
     };
     Post["/task/add_category"] = _ => {
         Category category = Category.Find(Request.Form["category-id"]);
         Task     task     = Task.Find(Request.Form["task-id"]);
         task.AddCategory(category);
         return(View["success.cshtml"]);
     };
     Post["/category/add_task"] = _ => {
         Category category = Category.Find(Request.Form["category-id"]);
         Task     task     = Task.Find(Request.Form["task-id"]);
         category.AddTask(task);
         return(View["success.cshtml"]);
     };
     // Get["/category/list"] = _ => {
     //     Console.WriteLine(Request.Query("house work"));
     //     Dictionary<string, object> model = new Dictionary<string, object>();
     //     List<Category> allCategories = Category.GetAll();
     //     foreach(var category in allCategories)
     //     {
     //         if(Request.Form[category.GetName()] != null)
     //         {
     //             List<Task> listTasks = category.GetTasks();
     //             model.Add(category.GetName(), listTasks);
     //         }
     //     }
     //     foreach(KeyValuePair<string, object> entry in model)
     //     {
     //         foreach(Task thisTask in entry.Value as List<Task>)
     //         {
     //             Console.WriteLine(thisTask.GetDescription());
     //         }
     //     }
     //     return View["categories_multiple.cshtml", model];
     // };
     Get["/category/edit/{id}"] = parameters => {
         Category SelectedCategory = Category.Find(parameters.id);
         return(View["category_edit.cshtml", SelectedCategory]);
     };
     Patch["/category/edit/{id}"] = parameters => {
         Category SelectedCategory = Category.Find(parameters.id);
         SelectedCategory.Update(Request.Form["category-name"]);
         return(View["success.cshtml"]);
     };
     Get["/category/delete/{id}"] = parameters => {
         Category SelectedCategory = Category.Find(parameters.id);
         return(View["category_delete.cshtml", SelectedCategory]);
     };
     Delete["/category/delete/{id}"] = parameters => {
         Category SelectedCategory = Category.Find(parameters.id);
         SelectedCategory.Delete();
         return(View["success.cshtml"]);
     };
 }
Exemple #20
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };

            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };

            Get["/categories"] = _ => {
                List <Category> allCategories = Category.GetAll();
                return(View["categories.cshtml", allCategories]);
            };

            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };

            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };

            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            };

            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], Request.Form["due-date"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };

            Post["/tasks/delete"] = _ => {
                Task.DeleteAll();
                return(View["cleared.cshtml"]);
            };

            Get["/categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };

            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> allCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("TaskCategories", TaskCategories);
                model.Add("allCategories", allCategories);
                return(View["task.cshtml", model]);
            };

            Post["task/add_category"] = _ => {
                Category        category       = Category.Find(Request.Form["category-id"]);
                Task            task           = Task.Find(Request.Form["task-id"]);
                List <Category> taskCategories = task.GetCategories();
                bool            tracker        = false;
                foreach (Category thisCategory in taskCategories)
                {
                    if (category.GetName() == thisCategory.GetName())
                    {
                        tracker = true;
                    }
                }
                if (!tracker)
                {
                    task.AddCategory(category);
                }
                return(View["success.cshtml"]);
            };

            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };
        }
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };
            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            };
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };

            //Create a new category
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };

            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };

            Post["task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };
            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };



            // Get["/categories/new"] = _ => {
            //   return View["categories_form.cshtml"];
            // };
            // Post["/categories/new"] = _ => {
            //   Category newCategory = new Category(Request.Form["category-name"]);
            //   newCategory.Save();
            //   return View["success.cshtml"];
            // };
            // Post["/categories/clear"] = _ => {
            //   Category.DeleteAll();
            //   // return View["cleared.cshtml"];  no cleared.cshtml in lesson plan, switched to success.cshtml
            //   return View["success.cshtml"];
            // };
            // Get["category/edit/{id}"] = parameters => {
            //   Category SelectedCategory = Category.Find(parameters.id);
            //   return View["category_edit.cshtml", SelectedCategory];
            // };
            // Patch["category/edit/{id}"] = parameters => {
            //   Category SelectedCategory = Category.Find(parameters.id);
            //   SelectedCategory.Update(Request.Form["category-name"]);
            //   return View["success.cshtml"];
            // };
            // Get["category/delete/{id}"] = parameters => {
            //   Category SelectedCategory = Category.Find(parameters.id);
            //   return View["category_delete.cshtml", SelectedCategory];
            // };
            // Delete["category/delete/{id}"] = parameters => {
            //   Category SelectedCategory = Category.Find(parameters.id);
            //   SelectedCategory.Delete();
            //   return View["success.cshtml"];
            // };
            // Get["/tasks/new"] = _ => {
            //   List<Category> AllCategories = Category.GetAll();
            //   return View["tasks_form.cshtml", AllCategories];
            // };
            // Post["/tasks/new"] = _ => {
            //   Task newTask = new Task(Request.Form["task-description"], Request.Form["category-id"]);
            //   newTask.Save();
            //   return View["success.cshtml"];
            // };
            //
            // Post["/tasks/clear"] = _ => {
            //   Task.DeleteAll();
            //   return View["success.cshtml"];
            //   // return View["cleared.cshtml"];  no cleared.cshtml in lesson plan, switched to success.cshtml
            // };
            // Get["/categories/{id}"] = parameters => {
            //   Dictionary<string, object> model = new Dictionary<string, object>();
            //   var SelectedCategory = Category.Find(parameters.id);
            //   var CategoryTasks = SelectedCategory.GetTasks();
            //   model.Add("category", SelectedCategory);
            //   model.Add("tasks", CategoryTasks);
            //   return View["category.cshtml", model];
            // };
        }
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            };

            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };

            Get["/tasks/completed"] = _ => {
                List <Task> CompletedTasks = Task.GetCompleted();
                return(View["tasks_completed.cshtml", CompletedTasks]);
            };

            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };

            //Create a new category
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };

            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };

            //Create a new task
            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            };

            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], Request.Form["completed"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };

            Post["/tasks/delete"] = _ => {
                Task.DeleteAll();
                return(View["cleared.cshtml"]);
            };

            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };

            Post["task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };

            Post["category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };

            Get["tasks/{id}/edit"] = parameters => {
                Task SelectedTask = Task.Find(parameters.id);
                return(View["task_update_form.cshtml", SelectedTask]);
            };

            Patch["tasks/{id}/updated"] = parameters => {
                Task SelectedTask = Task.Find(parameters.id);
                SelectedTask.UpdateProperties(Request.Form["new-task-description"], Request.Form["new-completed"]);
                return(View["success.cshtml", SelectedTask]);
            };

            Post["/tasks/delete"] = _ => {
                Task.DeleteAll();
                return(View["success.cshtml"]);
            };
        }
Exemple #23
0
        public HomeModule()
        {
            Get["/"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["index.cshtml", AllCategories]);
            };
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };
            Get["/tasks/new"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["tasks_form.cshtml", AllCategories]);
            };
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], Request.Form["dueDate"], Request.Form["completed"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };
            Post["/tasks/delete"] = _ => {
                Task.DeleteAll();
                return(View["index.cshtml"]);
            };
            Get["tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["/categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                var         SelectedCategory      = Category.Find(parameters.id);
                var         CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("tasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };

            Post["/task/add_category"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };
            Post["/category/add_task"] = _ => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };

            Get["tasks/completed"] = _ => {
                List <Task> updatedTasks = Task.CompletedTasks();
                return(View["completed_tasks.cshtml", updatedTasks]);
            };

            Get["tasks/update/{id}"] = _ => {
                List <Task> updatedTasks = Task.CompletedTasks();
                return(View["completed_tasks.cshtml", updatedTasks]);
            };

            Patch["tasks/update/{id}"] = parameters => {
                Task completedTask = Task.Find(parameters.id);
                completedTask.MarkComplete();
                List <Task> updatedTasks = Task.CompletedTasks();
                return(View["completed_tasks.cshtml", updatedTasks]);
            };

            Post["/tasks/sorted"] = _ => {
                List <Task> AllTasks = Task.OrderByDate();
                return(View["tasks.cshtml", AllTasks]);
            };
        }
        public HomeModule()
        {
            Get["/"] = _ =>
            {
                List <Category> AllCategories = Category.GetAll();
                return(View ["index.cshtml", AllCategories]);
            };

            Get["/tasks"] = _ =>
            {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            };

            Get["/categories"] = _ =>
            {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            };

            Get["/categories/new"] = _ =>
            {
                return(View["categories_form.cshtml"]);
            };

            Post["/categories/new"] = _ =>
            {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                return(View["success.cshtml"]);
            };

            Get["/tasks/new"] = _ =>
            {
                List <Category> AllCategories = Category.GetAll();
                return(View["tasks_form.cshtml", AllCategories]);
            };

            Post["/tasks/new"] = _ =>
            {
                string date = Request.Form["task-date"];
                Console.WriteLine(date);
                Task newTask = new Task(Request.Form["task-description"], Request.Form["task-date"]);
                newTask.Save();
                return(View["success.cshtml"]);
            };

            Post["/tasks/delete"] = _ =>
            {
                Task.DeleteAll();
                return(View["cleared.cshtml"]);
            };
            Get["tasks/{id}"] = parameters =>
            {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                return(View["task.cshtml", model]);
            };

            Get["categories/{id}"] = parameters =>
            {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            };

            Post["/categories/delete"] = _ =>
            {
                Category.DeleteAll();
                Task.DeleteAll();
                return(View["cleared.cshtml"]);
            };

            Post["task/add_category"] = _ =>
            {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                return(View["success.cshtml"]);
            };
            Post["category/add_task"] = _ =>
            {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                return(View["success.cshtml"]);
            };
        }
        public void Test_GetTasks_ReturnsAllCategoryTasks()
        {
            //Arrange
              Category testCategory = new Category("Household chores");
              testCategory.Save();

              Task testTask1 = new Task("Mow the lawn", false);
              testTask1.Save();

              Task testTask2 = new Task("Buy plane ticket", false);
              testTask2.Save();

              //Act
              testCategory.AddTask(testTask1);
              List<Task> savedTasks = testCategory.GetTasks();
              List<Task> testList = new List<Task> {testTask1};

              //Assert
              Assert.Equal(testList, savedTasks);
        }
Exemple #26
0
        public HomeModule()
        {
            Get["/"] = _ => {
                return(View["index.cshtml"]);
            }; //homepage with links to view all tasks and all categories
            Get["/tasks"] = _ => {
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            }; //page view all tasks
            Get["/categories"] = _ => {
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            }; //page view all categories
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            };
            Get["/tasks/new"] = _ => {
                return(View["tasks_form.cshtml"]);
            }; //returns form to add new task
            Post["/tasks/new"] = _ => {
                Task newTask = new Task(Request.Form["task-description"], Request.Form["category-id"]);
                newTask.Save();
                List <Task> AllTasks = Task.GetAll();
                return(View["tasks.cshtml", AllTasks]);
            }; //posts from form adding new task
            Get["/categories/new"] = _ => {
                return(View["categories_form.cshtml"]);
            }; //returns form to add new task
            Post["/categories/new"] = _ => {
                Category newCategory = new Category(Request.Form["category-name"]);
                newCategory.Save();
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            }; //posts from form adding new category
            Get["/tasks/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                model.Add("isCompleted", SelectedTask);
                return(View["task.cshtml", model]);
            }; //returns individual instance of task
            Get["/categories/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            }; //returns individual instance of category
            Post["/task/{id}/add_category"] = parameters => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                task.AddCategory(category);
                Dictionary <string, object> model          = new Dictionary <string, object>();
                List <Category>             taskCategories = task.GetCategories();
                List <Category>             allCategories  = Category.GetAll();
                model.Add("task", task);
                model.Add("taskCategories", taskCategories);
                model.Add("allCategories", allCategories);
                model.Add("isCompleted", task);
                return(View["index.cshtml", model]);
            }; //posts from form adding category
            Post["/category/{id}/add_task"] = parameters => {
                Category category = Category.Find(Request.Form["category-id"]);
                Task     task     = Task.Find(Request.Form["task-id"]);
                category.AddTask(task);
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category    SelectedCategory      = Category.Find(parameters.id);
                List <Task> CategoryTasks         = SelectedCategory.GetTasks();
                List <Task> AllTasks = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            }; //posts from form adding task to category page
            Get["/task/{id}/completed"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object> {
                };
                Task   SelectedTask  = Task.Find(parameters.id);
                string taskCompleted = Request.Query["task-completed"];
                model.Add("form-type", taskCompleted);
                model.Add("task", SelectedTask);
                return(View["completed.cshtml", model]);
            }; //returns page confirming task completion

            Patch["/task/{id}/completed"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Task            SelectedTask      = Task.Find(parameters.id);
                List <Category> TaskCategories    = SelectedTask.GetCategories();
                List <Category> AllCategories     = Category.GetAll();
                SelectedTask.Update(true);
                model.Add("task", SelectedTask);
                model.Add("taskCategories", TaskCategories);
                model.Add("allCategories", AllCategories);
                model.Add("isCompleted", SelectedTask);
                return(View["task.cshtml", model]);
            }; //returns category page with task marked completed

            Get["/category/edit/{id}"] = parameters => {
                Category SelectedCategory = Category.Find(parameters.id);
                return(View["category_edit.cshtml", SelectedCategory]);
            }; //edit individual category
            Patch["/category/edit/{id}"] = parameters => {
                Dictionary <string, object> model = new Dictionary <string, object>();
                Category SelectedCategory         = Category.Find(parameters.id);
                SelectedCategory.Update(Request.Form["category-name"]);
                List <Task> CategoryTasks = SelectedCategory.GetTasks();
                List <Task> AllTasks      = Task.GetAll();
                model.Add("category", SelectedCategory);
                model.Add("categoryTasks", CategoryTasks);
                model.Add("allTasks", AllTasks);
                return(View["category.cshtml", model]);
            }; //posts from editing individual category
            Get["/category/delete/{id}"] = parameters => {
                Category SelectedCategory = Category.Find(parameters.id);
                return(View["category_delete.cshtml", SelectedCategory]);
            }; //delete individual category
            Delete["/category/delete/{id}"] = parameters => {
                Category SelectedCategory = Category.Find(parameters.id);
                SelectedCategory.Delete();
                List <Category> AllCategories = Category.GetAll();
                return(View["categories.cshtml", AllCategories]);
            }; //delete individual category
        }