/// <summary> /// Create a task (Indicating the due date in a "natural" way). /// </summary> /// <param name="content">Content of the task.</param> /// <param name="projectID">Project identifier.</param> /// <param name="order">Order.</param> /// <param name="labelIDs">Label identifiers.</param> /// <param name="priority">Priority.</param> /// <param name="dueString">Expiration specified in a "natural" manner.</param> /// <param name="dueLanguage">Expiry language.</param> /// <returns>Task created.</returns> public async Task <TaskModel> CreateTaskAsync(string content, long projectID, uint order, List <int> labelIDs, TaskModel.PriorityType priority, string dueString, string dueLanguage) { var parameters = new { content, project_id = projectID, order, label_ids = labelIDs, priority = (int)priority, due_string = dueString, due_lang = dueLanguage }; return(await CreateTaskAsync(parameters)); }
/// <summary> /// Create a task (Indicating expiration date as date without time). /// </summary> /// <param name="content">Content of the task.</param> /// <param name="projectID">Project identifier.</param> /// <param name="order">Order.</param> /// <param name="labelIDs">Label identifiers.</param> /// <param name="priority">Priority.</param> /// <param name="dueDate">Expiration specified as date.</param> /// <returns>Task created.</returns> public async Task <TaskModel> CreateTaskAsync(string content, long projectID, uint order, List <int> labelIDs, TaskModel.PriorityType priority, DateTime dueDate) { if (dueDate.Hour == 0 && dueDate.Minute == 0 && dueDate.Second == 0) { var parameters = new { content, project_id = projectID, order, label_ids = labelIDs, priority = (int)priority, due_date = dueDate.ToString("yyyy-MM-dd") }; return(await CreateTaskAsync(parameters)); } else { var parameters = new { content, project_id = projectID, order, label_ids = labelIDs, priority = (int)priority, due_datetime = dueDate.ToString("yyyy-MM-ddThh:mm:ssZ") }; return(await CreateTaskAsync(parameters)); } }
/// <summary> /// Update the indicated task. /// </summary> /// <param name="taskID">Task identifier.</param> /// <param name="content">Content of the task.</param> /// <param name="projectID">Project identifier.</param> /// <param name="labelIDs">Label identifiers.</param> /// <param name="priority">Priority.</param> /// <param name="dueString">Expiration specified in a "natural" manner.</param> /// <param name="dueLanguage">Expiry language.</param> /// <returns>Indicates if the modification has been made.</returns> public async Task <bool> UpdateTaskAsync(long taskID, string content, long projectID, List <int> labelIDs, TaskModel.PriorityType priority, string dueString, string dueLanguage) { var parameters = new { content, project_id = projectID, label_ids = labelIDs, priority = (int)priority, due_string = dueString, due_lang = dueLanguage }; return(await UpdateTaskAsync(taskID, parameters)); }