protected void LoadUserData() { var credentials = GetCredentialsFrom(User.Identity.Name); string path = string.Format( options.AlbaUsersHtmlPath, credentials.AlbaAccountId); if (io.File.Exists(path)) { io.File.Delete(path); } var client = AuthClient(); client.Authenticate(credentials); var assignedHtml = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignmentsPage()); string usersHtml = cuc.DownloadUsers.GetUsersHtml(assignedHtml); if (!io.Directory.Exists(io.Path.GetDirectoryName(path))) { io.Directory.CreateDirectory(io.Path.GetDirectoryName(path)); } io.File.WriteAllText(path, usersHtml); }
public void Upload(string path, string languageFilePath) { if (client.BasePath == null) { throw new UserException("You are not logged on to Alba. Please Logon."); } if (string.IsNullOrWhiteSpace(path)) { return; } var languages = LanguageDownloader.LoadLanguagesFrom(languageFilePath); using (var reader = new StreamReader(path)) using (CsvReader csv = new CsvReader(reader, CultureInfo.InvariantCulture)) { csv.Configuration.Delimiter = ","; csv.Configuration.PrepareHeaderForMatch = (string header, int index) => header.ToLower(); var addresses = csv.GetRecords <AlbaAddressImport>(); foreach (var address in addresses) { Thread.Sleep(msDelay); int languageId = languages .First(l => string.Equals( l.Name, address.Language, System.StringComparison.OrdinalIgnoreCase)) .Id; int statusId = AddressStatusText.Status[address.Status]; var save = new AlbaAddressSave { Address_ID = address.Address_ID, Territory_ID = address.Territory_ID, LanguageId = languageId, StatusId = statusId, Name = address.Name, Suite = address.Suite, Address = address.Address, City = address.City, Province = address.Province, Postal_code = address.Postal_code, Country = address.Country, Latitude = address.Latitude, Longitude = address.Longitude, Telephone = address.Telephone, Notes = address.Notes, Notes_private = address.Notes_private }; var saveUrl = RelativeUrlBuilder.SaveAddress(save); var resultString = client.DownloadString(saveUrl); // TODO: Need to geocode } } }
protected void LoadUserManagementData() { var credentials = GetCredentialsFrom(User.Identity.Name); string path = string.Format( options.AlbaUserManagementHtmlPath, credentials.AlbaAccountId); if (io.File.Exists(path)) { io.File.Delete(path); } var client = AuthClient(); client.Authenticate(credentials); var json = client.DownloadString( RelativeUrlBuilder.GetUserManagementPage()); string html = AlbaJsonResultParser.ParseDataHtml(json, "users"); if (!io.Directory.Exists(io.Path.GetDirectoryName(path))) { io.Directory.CreateDirectory(io.Path.GetDirectoryName(path)); } io.File.WriteAllText(path, html); }
public void SaveAs(string path) { var html = client.DownloadString( RelativeUrlBuilder.GetLanguages()); File.WriteAllText(path, html); }
public void SaveAs(string fileName) { var html = client.DownloadString( RelativeUrlBuilder.GetUserManagementPage()); List <AlbaHtmlUser> users = GetUsers(html); }
public void SaveAs(string fileName, int accountId) { var resultString = client.DownloadString( RelativeUrlBuilder.ExportAllAddresses(accountId)); string text = AddressExportParser.Parse(resultString); TextFileGateway.Save(fileName, text); }
public void SaveAs(string fileName) { var resultString = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignments()); string html = TerritoryAssignmentParser.Parse(resultString); SaveAs(html, fileName); }
public void Authorize_WithAllCredentials_ReturnsCorrectHash() { var credentials = new Credentials("account1", "user1", "P@ssw0rd"); credentials.K1MagicString = "test-string-to-hash-with"; var url = RelativeUrlBuilder.AuthenticationUrlFrom(credentials); Assert.AreEqual("ce24996002987b88a0cab15bf7538b4ee649ce19", ExtractHashFrom(url)); }
static void Main(string[] args) { var url2 = RouteBuilder.ResolveRoute <FakeController2>(c => c.GetStuff()); var fail = RouteBuilder.Fill("foo/{id}", "id", "world"); var url1 = RouteBuilder.ResolveRoute <FakeController1>(c => c.GetStuff("foo")) .Fill("id", "1212"); var linker = new RelativeUrlBuilder("/myapproot"); var rel = linker.To <FakeController3>(c => c.ManyVars("", "", 0)).Fill("a", "12", "b", "13", "c", "14"); }
public List <Territory> SaveAs(string fileName) { var resultString = client.DownloadString(RelativeUrlBuilder.GetAllTerritories()); AllTerritories = TerritoryResultParser.Parse(resultString); var assignmentsResultString = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignments()); string assignmentsHtml = TerritoryAssignmentParser.Parse(assignmentsResultString); var assignments = new DownloadTerritoryAssignments(client).GetAssignments(assignmentsHtml); foreach (var t in AllTerritories) { var assignment = assignments.FirstOrDefault(a => string.Equals(a.Number, t.Number, StringComparison.OrdinalIgnoreCase)); if (assignment != null) { int monthsAgoCompleted = assignment.MonthsAgoCompleted ?? 0; int yearsAgoCompleted = monthsAgoCompleted / 12; t.Status = assignment.Status; t.MobileLink = assignment.MobileLink; t.SignedOutTo = assignment.SignedOutTo; t.SignedOut = assignment.SignedOut; t.LastCompletedBy = assignment.LastCompletedBy; t.LastCompleted = assignment.LastCompleted; t.MonthsAgoCompleted = assignment.MonthsAgoCompleted; t.YearsAgoCompleted = assignment.LastCompleted == null ? 99 : yearsAgoCompleted; t.NeverCompleted = assignment.LastCompleted == null; } } var filteredTerritories = Filter(AllTerritories); foreach (var t in filteredTerritories) { t.FillColor = FillColorFor(t); } var kml = new TerritoryToKmlConverter().KmlFrom(filteredTerritories); new KmlGateway().Save(fileName, kml); return(filteredTerritories.ToList()); }
public void SaveAs(string fileName) { // Downloads html instead of json Territory Assignments var resultString = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignmentsPage()); List <User> users = GetUsers(GetUsersHtml(resultString)); using (var writer = new StreamWriter(fileName)) using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture)) { csv.WriteRecords(users); } }
public void RequestToAddNew_WithTestTerritory_ReturnsCorrectlyEncodedUrl() { string expected = @"/ts?mod=territories&cmd=add&kind=0&number=TestNumber-123¬es=Test+Notes&description=Test+Description&border=1.11+-2.22%2c-3.33+-4.44"; var territory = new Territory("TestId") { Number = "TestNumber-123", Description = "Test Description", Notes = "Test Notes", }; territory.Border.Vertices.Add(new Vertex(1.11, -2.22)); territory.Border.Vertices.Add(new Vertex(-3.33, -4.44)); string url = RelativeUrlBuilder.RequestToAddNew(territory); Assert.AreEqual(expected, url); }
void LoadUserData(Guid albaAccountId) { string path = string.Format(options.AlbaUsersHtmlPath, albaAccountId); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } // TODO: Get credentials with albaAccountId var credentials = albaCredentialService.GetCredentialsFrom(User.Identity.Name); var client = AuthorizationClient(); client.Authenticate(credentials); var assignedHtml = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignmentsPage()); string usersHtml = cuc.DownloadUsers.GetUsersHtml(assignedHtml); System.IO.File.WriteAllText(path, usersHtml); }
private void Load(Guid albaAccountId) { string path = string.Format(options.AlbaAssignmentsHtmlPath, albaAccountId); if (System.IO.File.Exists(path)) { System.IO.File.Delete(path); } var client = AuthorizationClient(); var useCase = new DownloadTerritoryAssignments(client); var credentials = albaCredentialService.GetCredentialsFrom(User.Identity.Name); client.Authenticate(credentials); var resultString = client.DownloadString( RelativeUrlBuilder.GetTerritoryAssignments()); string html = TerritoryAssignmentParser.Parse(resultString); System.IO.File.WriteAllText(path, html); }
public void Upload() { if (client.BasePath == null) { view.ShowMessageBox("You are not logged on to Alba. Please Logon."); return; } string fileName = view.OpenFileDialog("kml"); if (string.IsNullOrWhiteSpace(fileName)) { return; } var kml = new KmlGateway().Load(fileName); var territories = new KmlToTerritoryConverter() .TerritoryListFrom(kml) .Where(t => t.Border != null && t.Border.Vertices != null && t.Border.Vertices.Count > 0) .ToList(); view.AppendResultText("Uploading " + territories.Count + " territory borders..."); foreach (var territory in territories) { int count = territory.Border.Vertices.Count; var url = RelativeUrlBuilder.RequestToAddNew(territory); var resultString = client.DownloadString(url); view.AppendResultText("Territory: " + territory.Number); view.AppendResultText(count + " vertices where uploaded..." + Environment.NewLine); view.AppendResultText(resultString + Environment.NewLine + Environment.NewLine); Thread.Sleep(delay); } }