private void UpdateLastSeenString(TLPrivacyRules rules) { _privacyRules = rules; TLPrivacyRuleBase mainRule = null; var mainRuleString = string.Empty; var minusCount = 0; var plusCount = 0; foreach (var rule in rules.Rules) { if (rule is TLPrivacyValueAllowAll) { mainRule = rule; mainRuleString = AppResources.Everybody; } if (rule is TLPrivacyValueAllowContacts) { mainRule = rule; mainRuleString = AppResources.MyContacts; } if (rule is TLPrivacyValueDisallowAll) { mainRule = rule; mainRuleString = AppResources.Nobody; } if (rule is TLPrivacyValueDisallowUsers) { minusCount += ((TLPrivacyValueDisallowUsers)rule).Users.Count; } if (rule is TLPrivacyValueAllowUsers) { plusCount += ((TLPrivacyValueAllowUsers)rule).Users.Count; } } if (mainRule == null) { mainRule = new TLPrivacyValueDisallowAll(); mainRuleString = AppResources.Nobody; } var countStrings = new List <string>(); if (minusCount > 0) { countStrings.Add("-" + minusCount); } if (plusCount > 0) { countStrings.Add("+" + plusCount); } if (countStrings.Count > 0) { mainRuleString += string.Format(" ({0})", string.Join(", ", countStrings)); } LastSeenSubtitle = mainRuleString.ToLowerInvariant(); }
private string GetPrivacyString(TLPrivacyRules rules, out TLPrivacyRules currentRules) { currentRules = rules; TLPrivacyRuleBase mainRule = null; var mainRuleString = string.Empty; var minusCount = 0; var plusCount = 0; foreach (var rule in rules.Rules) { if (rule is TLPrivacyValueAllowAll) { mainRule = rule; mainRuleString = AppResources.Everybody; } if (rule is TLPrivacyValueAllowContacts) { mainRule = rule; mainRuleString = AppResources.MyContacts; } if (rule is TLPrivacyValueDisallowAll) { mainRule = rule; mainRuleString = AppResources.Nobody; } if (rule is TLPrivacyValueDisallowUsers) { minusCount += ((TLPrivacyValueDisallowUsers)rule).Users.Count; } if (rule is TLPrivacyValueAllowUsers) { plusCount += ((TLPrivacyValueAllowUsers)rule).Users.Count; } } if (mainRule == null) { mainRule = new TLPrivacyValueDisallowAll(); mainRuleString = AppResources.Nobody; } var countStrings = new List <string>(); if (minusCount > 0) { countStrings.Add("-" + minusCount); } if (plusCount > 0) { countStrings.Add("+" + plusCount); } if (countStrings.Count > 0) { mainRuleString += string.Format(" ({0})", string.Join(", ", countStrings)); } return(mainRuleString); }