/// <summary> /// Returns list of contacts, that are registered on Magtifun /// </summary> /// <returns> /// Contact list from MagtiFun /// </returns> public List <MagtifunContact> GetContactsList() { var contactList = new List <MagtifunContact>(); string text; using (var handler = new HttpClientHandler { UseCookies = false }) using (var client = new HttpClient(handler)) { var message = new HttpRequestMessage(HttpMethod.Get, CONTACTS_URL); message.Headers.Add("Cookie", cookie); var result = client.SendAsync(message); text = result.Result.Content.ReadAsStringAsync().Result; } var indexOfFirstContact = text.IndexOf("// Generate Contacts Array"); if (indexOfFirstContact == -1) { return(null); } var trimmedText = text.Substring(indexOfFirstContact); var indexOfClosingScriptTag = trimmedText.IndexOf("</script>"); var substr = trimmedText.Substring(0, indexOfClosingScriptTag); var linesArray = substr.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries); for (int i = 1; i < linesArray.Length; i++) { var contactArray = linesArray[i].Substring(linesArray[i].IndexOf('(')).Split(','); var newContact = new MagtifunContact(); newContact.FirstName = contactArray[1].Replace("\"", ""); newContact.NickName = contactArray[2].Replace("\"", ""); newContact.LastName = contactArray[3].Replace("\"", ""); newContact.Number = contactArray[4].Replace("\"", ""); newContact.Gender = contactArray[5].Replace("\"", "") == "0" ? Gender.Female : Gender.Male; var dateOfBirth = contactArray[7].Replace("\"", "").Replace(");", ""); if (dateOfBirth.Equals("0000-00-00")) { newContact.DateOfBirth = null; } else { newContact.DateOfBirth = DateTime.ParseExact(dateOfBirth, "yyyy-MM-dd", CultureInfo.InvariantCulture); } contactList.Add(newContact); } return(contactList); }
/// <summary> /// Returns list of contacts, that are registered on Magtifun /// </summary> /// <returns> /// Contact list from MagtiFun /// </returns> public List<MagtifunContact> GetContactsList() { var contactList = new List<MagtifunContact>(); string text; using (var handler = new HttpClientHandler { UseCookies = false }) using (var client = new HttpClient(handler)) { var message = new HttpRequestMessage(HttpMethod.Get, CONTACTS_URL); message.Headers.Add("Cookie", cookie); var result = client.SendAsync(message); text = result.Result.Content.ReadAsStringAsync().Result; } var indexOfFirstContact = text.IndexOf("// Generate Contacts Array"); if (indexOfFirstContact == -1) return null; var trimmedText = text.Substring(indexOfFirstContact); var indexOfClosingScriptTag = trimmedText.IndexOf("</script>"); var substr = trimmedText.Substring(0, indexOfClosingScriptTag); var linesArray = substr.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries); for (int i = 1; i < linesArray.Length; i++) { var contactArray = linesArray[i].Substring(linesArray[i].IndexOf('(')).Split(','); var newContact = new MagtifunContact(); newContact.FirstName = contactArray[1].Replace("\"", ""); newContact.NickName = contactArray[2].Replace("\"", ""); newContact.LastName = contactArray[3].Replace("\"", ""); newContact.Number = contactArray[4].Replace("\"", ""); newContact.Gender = contactArray[5].Replace("\"", "") == "0" ? Gender.Female : Gender.Male; var dateOfBirth = contactArray[7].Replace("\"", "").Replace(");", ""); if (dateOfBirth.Equals("0000-00-00")) newContact.DateOfBirth = null; else newContact.DateOfBirth = DateTime.ParseExact(dateOfBirth, "yyyy-MM-dd", CultureInfo.InvariantCulture); contactList.Add(newContact); } return contactList; }