Exemplo n.º 1
0
 //Saves Task, used by RepeatableTask.SaveTask()
 public void SaveRepeatTask(RepeatableTask savedTask)
 {
     if (doesTaskExist(savedTask.getTaskId()))
     {
         MySqlConnection conn = null;
         try
         {
             conn = new MySqlConnection(connectionString);
             conn.Open();
             MySqlCommand cmd = new MySqlCommand("UPDATE `Task` SET `title` = @title, `notes` = @notes," +
                                                 "`allowNotifications` = @allowNotifications, `isComplete` = @isComplete, `isRepeatable` = @isRepeatable," +
                                                 "`taskFKey` = @taskFKey WHERE `taskId` =  @taskId", conn);
             cmd.Parameters.Add(new MySqlParameter("taskId", savedTask.getTaskId()));
             cmd.Parameters.Add(new MySqlParameter("title", savedTask.getTitle()));
             cmd.Parameters.Add(new MySqlParameter("notes", savedTask.getDescription()));
             cmd.Parameters.Add(new MySqlParameter("allowNotifications", savedTask.getAllowNotifications()));
             cmd.Parameters.Add(new MySqlParameter("isComplete", savedTask.getIsComplete()));
             cmd.Parameters.Add(new MySqlParameter("isRepeatable", false));
             cmd.Parameters.Add(new MySqlParameter("taskFKey", savedTask.getTaskId()));
             cmd.ExecuteNonQuery();
         }
         catch (Exception ex)
         {
             Console.WriteLine("SaveRepeatTask Failure!" + ex);
         }
         finally
         {
             if (conn != null)
             {
                 conn.Close();
             }
         }
     }
 }
Exemplo n.º 2
0
        public List <Task> LoadList(int userId)
        {
            List <Task>     taskList = new List <Task>();
            MySqlConnection conn     = null;
            MySqlCommand    command  = null;

            try
            {
                conn = new MySqlConnection(connectionString);
                conn.Open();

                command = new MySqlCommand(
                    "SELECT * FROM `Task` WHERE `taskFKey` = @userId;",
                    conn
                    );

                command.Parameters.AddWithValue("@userId", userId);
                MySqlDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    int Rindex = 0;
                    int Dindex = 0;
                    if (reader.GetValue(5).Equals(1))
                    {
                        RepeatableTask currentTask = new RepeatableTask((String)reader.GetValue(1), (String)reader.GetValue(3), new Dictionary <int, SubTask>(Rindex, reader.GetValue(4)));
                        taskList.Add(currentTask);
                    }
                    else
                    {
                        DisposableTask currentTask = new DisposableTask((String)reader.GetValue(1), (String)reader.GetValue(3), new Dictionary <int, SubTask>(Dindex, reader.GetValue(4)));
                        taskList.Add(currentTask);
                    }
                    Rindex++;
                    Dindex++;
                }
                return(taskList);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Something went horribly wrong! " + ex);
                return(new List <Task>());
            }
            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }
        }
Exemplo n.º 3
0
        //if createTask is clicked
        private void backToDash(object sender, RoutedEventArgs e)
        {
            taskTitle = this.taskTitleText.Text;
            taskDesc  = this.descText.Text;

            if (this.yesRadio.IsChecked == true)
            {
                this.repeatable = true;
                //create repeatableTask

                RepeatableTask rt = new RepeatableTask(taskTitle, taskDesc, dict);
                rt.setTaskFKey(user.UserId);
                rt.SaveTask(); //save task to db
                list.Add(rt);

                Dashboard dash = new Dashboard(user);
                NavigationService.Navigate(dash);
            }
            else if (this.noRadio.IsChecked == true)
            {
                repeatable = false;
                //create disposableTask

                DisposableTask dt = new DisposableTask(taskTitle, taskDesc, dict);
                dt.setTaskFKey(user.UserId);
                //dt.setTaskFKey(55);
                //TODO user.UserId does not return the correct ID
                dt.SaveTask(); //save task to db
                list.Add(dt);

                Dashboard dash = new Dashboard(user);
                NavigationService.Navigate(dash);
            }



            //NavigationService nav = NavigationService.GetNavigationService(this);
            // nav.Navigate(new Uri("/GUI/Dashboard.xaml", UriKind.RelativeOrAbsolute));
        }
Exemplo n.º 4
0
        //Inserts new Repeatable task into the table
        public int InsertRepeatTask(RepeatableTask newTask)
        {
            MySqlConnection conn    = null;
            MySqlCommand    command = null;
            int             taskId  = 0;

            try
            {
                conn = new MySqlConnection(connectionString);
                conn.Open();

                command = new MySqlCommand("INSERT INTO `Task` (`title`,`notes`,`allowNotifications`, `isComplete`,`isRepeatable`) " +
                                           "VALUES(@title, @notes, @allowNotifications, @isComplete, @isRepeatable);" +
                                           "SELECT `taskId` AS `taskId` FROM `Task` WHERE `taskId` = @@Identity;", conn);

                command.Parameters.AddWithValue("@title", newTask.getTitle());
                command.Parameters.AddWithValue("@notes", newTask.getDescription());
                command.Parameters.AddWithValue("@allowNotifications", newTask.getAllowNotifications());
                command.Parameters.AddWithValue("@isComplete", newTask.getIsComplete());
                command.Parameters.AddWithValue("@isRepeatable", 1);

                MySqlDataReader reader = command.ExecuteReader();
                taskId = (int)reader.GetValue(0);
            }
            catch (Exception ex)
            {
                Console.WriteLine("InsertDisposableTask: Failure!" + ex);
            }
            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }
            return(taskId);
        }
Exemplo n.º 5
0
        //Pulls Repeatable task from db
        public RepeatableTask retrieveRepeatTask(int taskId)
        {
            MySqlConnection conn       = null;
            RepeatableTask  repeatTask = null;

            if (doesTaskExist(taskId))
            {
                try
                {
                    conn = new MySqlConnection(connectionString);
                    conn.Open();
                    MySqlCommand cmd = new MySqlCommand("SELECT* from `Task` WHERE `TaskId` =  @taskId", conn);
                    cmd.Parameters.Add(new MySqlParameter("taskId", taskId));
                    MySqlDataReader reader = cmd.ExecuteReader();

                    repeatTask.setTaskId((int)reader.GetValue(0));                 //TaskId
                    repeatTask.setTitle((String)reader.GetValue(1));               //Title
                    repeatTask.setDescription((String)reader.GetValue(2));         //Description
                    repeatTask.setAllowNotifications((Boolean)reader.GetValue(3)); //allowNotifications
                    repeatTask.setIsComplete((Boolean)reader.GetValue(4));         //isComplete
                }
                catch (Exception ex)
                {
                    Console.WriteLine("retrieveRepeatTask Failed!" + ex);
                }
                finally
                {
                    if (conn != null)
                    {
                        conn.Close();
                    }
                }
                repeatTask.setSubTasks(FetchAllSubTasks(taskId));
            }
            return(repeatTask);
        }