public ImportStatus StartImportFromBasecamp(string url, string token, bool processClosed, bool disableNotifications) { ProjectSecurity.DemandAuthentication(); //Validate all data if (string.IsNullOrEmpty(url)) { throw new ArgumentException(SettingsResource.EmptyURL); } if (string.IsNullOrEmpty(token)) { throw new ArgumentException(SettingsResource.EmptyToken); } if (!Uri.IsWellFormedUriString(url, UriKind.Absolute)) { throw new ArgumentException(SettingsResource.MalformedUrl); } if (!Regex.IsMatch(url.Trim(), @"^http[s]{0,1}://.+\.basecamphq\.com[/]{0,1}$")) { throw new ArgumentException(SettingsResource.NotBasecampUrl); } ImportQueue.Add(url, token, processClosed, disableNotifications); return(ImportQueue.GetStatus()); }
public ImportStatus GetStatus() { if (!CoreContext.UserManager.IsUserInGroup(SecurityContext.CurrentAccount.ID, Core.Users.Constants.GroupAdmin.ID)) { throw new SecurityException(); } return(ImportQueue.GetStatus()); }
public ImportStatus GetImportFromBasecampStatus() { ProjectSecurity.DemandAuthentication(); return(ImportQueue.GetStatus()); }