public override int Run(String[] RemainingArguments) { IRavenEntity taskToFetch = new SparkTask(); var actualTaskId = "SparkTasks/" + TaskId; taskToFetch.Id = actualTaskId; if (TaskId == null) { Console.WriteLine("Please specify an Id for the task to activate"); return 0; } SparkTask taskToSet = SparkLogic.fetch(taskToFetch) as SparkTask; TaskStateControl taskStateControl = new TaskStateControl(); ActiveTaskProcess taskProcessor = new ActiveTaskProcess(); if (taskToSet == null) { Console.WriteLine("The task specified doesn't exist"); return 0; } var result = taskStateControl.SetActiveTask(taskToSet); if (result == true) { Console.WriteLine("The task was activated"); } if (taskToSet != null && result == false) { taskStateControl.PauseTask(); taskStateControl.SetActiveTask(taskToSet); Console.WriteLine("The Task was activated. The previous task was put on pause"); } ReminderControl.StartTime = DateTime.Now; taskProcessor.SetStartTime(); return 0; }
public override int Run(string[] remainingArguments) { if (EntityType.ToLower() == "task") { SparkTask taskToDelete = new SparkTask(); var actualId = "SparkTasks/" + IdToDelete; taskToDelete.Id = actualId; DeleteItemCmd deleteItemCmd = new DeleteItemCmd(); deleteItemCmd.ItemToWork = taskToDelete; var result = deleteItemCmd.DeleteItem(); Console.WriteLine(result); return 0; } if(EntityType.ToLower() == "reminder") { SparkTask reminderToDelete = new SparkTask(); var actualId = "Reminders/" + IdToDelete; reminderToDelete.Id = actualId; DeleteItemCmd deleteItemCmd = new DeleteItemCmd(); deleteItemCmd.ItemToWork = reminderToDelete; var result = deleteItemCmd.DeleteItem(); Console.WriteLine(result); return 0; } else { Console.WriteLine("The type of entity should be a task or reminder"); } return 0; }
public static TimeSpan GetElapsedTime(this SparkTask taskToGetTimeFrom) { DateTime currentTime = DateTime.Now; TimeSpan elapsedTime = currentTime - taskToGetTimeFrom.StartDate; taskToGetTimeFrom.TimeElapsed = taskToGetTimeFrom.TimeElapsed.Add(elapsedTime); taskToGetTimeFrom.StartDate = DateTime.Now; // return ent.TimeElapsed; return(taskToGetTimeFrom.TimeElapsed); }
public bool SetActiveTask(SparkTask taskToActivate) { var activeTask = repo.GetActiveTask(); if (activeTask == null || activeTask.State != TaskState.InProgress) { taskToActivate.State = TaskState.InProgress; taskToActivate.StartDate = DateTime.Now; repo.Update(taskToActivate); return true; } else { return false; } }
public IRavenEntity GetItem(String entityName) { if (entityName == "task") { SparkTask itemToAdd = new SparkTask(); while (itemToAdd.Description == null || itemToAdd.Description == "") { Console.WriteLine("Add a description for the task"); itemToAdd.Description = Console.ReadLine(); if (itemToAdd.Description == null || itemToAdd.Description == "") { Console.WriteLine("You must add a Description"); } } while (itemToAdd.Duration <= 0) { int toDuration; Console.WriteLine("Add a duration (in minutes) for the task"); String input = Console.ReadLine(); if (int.TryParse(input, out toDuration)) { itemToAdd.Duration = toDuration; } if (itemToAdd.Duration <= 0) { Console.WriteLine("The duration must be a number greater than 0"); } } Console.WriteLine("Add a Client for the task"); itemToAdd.Client = Console.ReadLine(); itemToAdd.StartDate= DateTime.Now; itemToAdd.State= TaskState.Paused; return itemToAdd; } if (entityName == "reminder") { Reminder itemToAdd = new Reminder(); while (itemToAdd.Description == null|| itemToAdd.Description == "") { Console.WriteLine("Add a description for the reminder"); itemToAdd.Description = Console.ReadLine(); } while (itemToAdd.Interval <= 0) { Console.WriteLine("Add an interval (in minutes) for the reminder"); String input = Console.ReadLine(); int ToInterval; if (int.TryParse(input, out ToInterval)) { itemToAdd.Interval = ToInterval; } if (itemToAdd.Interval <= 0) { Console.WriteLine("The Interval must be a number greater than 0"); } } return itemToAdd; } return null; }
public ReminderEventArgs(Reminder receivedReminder, SparkTask receivedTask) { TheReminder = receivedReminder; TheTask = receivedTask; }
public override int Run(string[] remainingArguments) { if(EntityType.ToLower() == "task") { SparkTask taskToAdd = new SparkTask(); taskToAdd.Description = Description; int duration; if (int.TryParse(Duration, out duration)) { if (duration <= 0) { Console.WriteLine("The duration must be a number grather than 0"); return 0; } taskToAdd.Duration = duration; } else { Console.WriteLine("The duration must be an integer"); return 0; } taskToAdd.Client = Client; taskToAdd.StartDate = DateTime.Now; taskToAdd.State = TaskState.Paused; AddItemCmd addItemCmd = new AddItemCmd(); addItemCmd.ItemToWork = taskToAdd; var result = addItemCmd.AddItem(); Console.WriteLine(result); return 0; } if (EntityType.ToLower() == "reminder") { Reminder reminderToAdd = new Reminder(); reminderToAdd.Description = Description; int interval; if (int.TryParse(Duration, out interval)) { if (interval <= 0) { Console.WriteLine("The duration must be a number grather than 0"); return 0; } reminderToAdd.Interval = interval; } else { Console.WriteLine("The duration must be an integer"); return 0; } String pattern = @"((?<hour>\d{2})\:(?<minutes>\d{2}))"; var regex = new Regex(pattern, RegexOptions.IgnoreCase); var match = regex.Match(TimeOfActivation); int hour, minutes; if (!int.TryParse(match.Groups["hour"].Value, out hour) || !int.TryParse(match.Groups["minutes"].Value, out minutes)) { Console.WriteLine("The hour has to be numbers"); return 0; } if (int.TryParse(match.Groups["hour"].Value, out hour)) { if (hour < 00 && hour > 23) { Console.WriteLine("The hours must be between 00 and 23"); return 0; } } if (int.TryParse(match.Groups["minutes"].Value, out minutes)) { if (minutes < 00 && minutes > 59) { Console.WriteLine("minutes must be between 00 and 59"); return 0; } } DateTime ActivationTime = DateTime.Now; TimeSpan ts = new TimeSpan(hour, minutes, 0); ActivationTime = ActivationTime.Date + ts; reminderToAdd.TimeOfActivation = ActivationTime; reminderToAdd.Type = ReminderType.Custom; reminderToAdd.Source = ReminderSource.User; AddItemCmd addItemCmd = new AddItemCmd(); addItemCmd.ItemToWork = reminderToAdd; var result = addItemCmd.AddItem(); Console.WriteLine(result); return 0; } else { Console.WriteLine("The type of entity should be a task or reminder"); } return 0; }