public void GetTitles(ApiInfo liveAPI) { var corp = ((CorporationKey)EveXml.CreateApiKey(Convert.ToInt32(Properties.Settings.Default.CorpAPI), Properties.Settings.Default.VCode).Init().GetActualKey()).Corporation; var titles = corp.GetMemberTracking().Result.Members.Where(member => member.CharacterName == UserName).FirstOrDefault().Title.Split(new string[] { ", " }, StringSplitOptions.RemoveEmptyEntries); var titleList = new List <Title>(); foreach (var title in titles) { titleList.Add(new Title() { UserId = Id, TitleName = title }); } Titles = titleList; if ((GetToonId(IDType.Corporation, liveAPI.ApiKey, liveAPI.VerificationCode) == GetToonId(IDType.Corporation, Convert.ToInt32(Properties.Settings.Default.CorpAPI), Properties.Settings.Default.VCode)) && (!this.Titles.Any(title => title.TitleName == "CEO")) ) { Titles.Add(new Title() { UserId = this.Id, TitleName = "CEO" }); } }
public List <Character> GetDetails() { CharacterKey key = EveXml.CreateCharacterKey(ApiKey, VerificationCode); var chars = key.Characters.ToList(); //var charList = key.GetCharacterList(); return(chars); }
public long GetCorpOrAllianceId(IDType type, int apiKey, string vcode) { long result = -1; try { var newkey = EveXml.CreateApiKey(apiKey, vcode).Init(); if ((newkey.IsValidKey()) && newkey.KeyType != (ApiKeyType.Corporation)) { var cKey = (CharacterKey)newkey.GetActualKey(); Character toon = null; try { //var things = cKey.Characters; toon = cKey.Characters.Single(c => c.CharacterName.ToUpper() == this.UserName.ToUpper()); } catch (Exception ex) { } if (toon != null) { if (type == IDType.Corporation) { result = toon.CorporationId; } else if (type == IDType.Alliance) { result = toon.AllianceId; } } } else if ((newkey.IsValidKey()) && newkey.KeyType == (ApiKeyType.Corporation)) { var cKey = (CorporationKey)newkey.GetActualKey(); Corporation corp = cKey.Corporation; if (corp != null) { if (type == IDType.Corporation) { result = corp.CorporationId; } else if (type == IDType.Alliance) { result = corp.AllianceId; } } } } catch (Exception ex) { } return(result); }
public void GetDetails(bool JustDoIt = false) { bool unloadApis = false; if (ApiKeys.Count == 0) { unloadApis = LoadApiKeys(); } ApiInfo liveAPI = new ApiInfo(); if ((MemberSince == null) || (Avatar == null) || (JustDoIt)) { foreach (ApiInfo info in ApiKeys) { try { var newkey = EveXml.CreateApiKey(info.ApiKey, info.VerificationCode).Init(); if ((newkey.IsValidKey()) && newkey.KeyType != (ApiKeyType.Corporation)) { var cKey = (CharacterKey)newkey.GetActualKey(); Character toon = null; try { toon = cKey.Characters.Single(c => c.CharacterName == UserName); } catch (Exception ex) { } if (toon != null) { liveAPI = info; MemberSince = toon.GetCharacterInfo().Result.CorporationDate; //var tempAvatar = ImageServer.DownloadCharacterImage(toon.CharacterId, ImageServer.ImageSize.Size128px); //using (var stream = new MemoryStream()) //{ // tempAvatar.Save(stream, System.Drawing.Imaging.ImageFormat.Png); // Avatar = string.Format("data:image/png;base64,{0}", Convert.ToBase64String(stream.ToArray())); //} //tempAvatar.Dispose(); Avatar = GetAvatar(toon.CharacterId, ImageServer.ImageSize.Size128px); break; } } } catch (Exception ex) { } } if (MemberType == IDType.Corporation.ToString()) { GetTitles(liveAPI); } } if (unloadApis) { UnloadApiKeys(); } }
public bool ValidateStandings(string checkName, long checkCorpId, long checkAllianceId, int apiKey, string vcode) { bool result = false; List <double> standings = new List <double>(); try { var newkey = EveXml.CreateApiKey(apiKey, vcode).Init(); var cKey = (CorporationKey)newkey.GetActualKey(); List <long> list = new List <long>(); list.Add(checkCorpId); if (checkAllianceId > 0) { list.Add(checkAllianceId); } var api = new EveApi("R3MUS Recruitment", Convert.ToInt64(apiKey), vcode); Dictionary <long, string> dict = api.ConvertIDsToNames(list); string checkCorpName = dict[checkCorpId]; string checkAllianceName = string.Empty; if (dict.Count == 2) { checkAllianceName = dict[checkAllianceId]; } var cList = cKey.Corporation.GetContactList().Result; var contactList = cList.CorporationContacts.Concat(cList.AllianceContacts); var filteredContactList = contactList.Where (c => (c.ContactName == checkName) || (c.ContactName == checkCorpName) || (c.ContactName == checkAllianceName) ); foreach (var contact in filteredContactList) { standings.Add(contact.Standing); result = (contact.Standing == 10); if (result) { break; } } } catch (Exception ex) { } if (result) { MemberType = IDType.Plus10.ToString(); foreach (var value in Properties.Settings.Default.SharedCommsCorpIDs) { if (value.Contains(checkCorpId.ToString())) { MemberType = IDType.SharedComms.ToString(); CorpId = checkCorpId; CorpTicker = value.Split(new string[] { ":" }, StringSplitOptions.RemoveEmptyEntries)[0]; } } } else { if ((standings.Count == 0) || (standings.Min() >= 0.0)) { MemberType = IDType.Guest.ToString(); } } return(result); }