public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { HowOften howOften = (value == null ? HowOften.Never : (HowOften)value); bool reverse = (parameter == null ? false : (bool)parameter); bool visible = reverse ? howOften == HowOften.Never : howOften != HowOften.Never; if (visible) { return(Visibility.Visible); } else { return(Visibility.Collapsed); } }
private string createPostParameter(Alert alert, bool isEdit) { string domainExt = "com"; string feedKey = "1"; string _email = email; HowOften _howOften = alert.howOften; if (alert.deliveryTo == DeliveryTo.Feed) { feedKey = "2"; _howOften = HowOften.AsItHappens; _email = string.Empty; } if (!string.IsNullOrEmpty(_email)) { domainExt = _email.Substring(_email.LastIndexOf(".") + 1); } string _sources = string.Empty; foreach (var source in alert.sources) { if (string.IsNullOrEmpty(_sources)) { _sources += GetDescriptionFromEnumValue(source); } else { _sources += "," + GetDescriptionFromEnumValue(source); } } _sources = "[" + _sources + "]"; if (_sources == "[]") { _sources = "null"; } string howOften = string.Empty; switch (_howOften) { case HowOften.AsItHappens: howOften = "[]," + (int)_howOften; break; case HowOften.AtMostOnceADay: howOften = "[null,null,3]," + (int)_howOften; break; case HowOften.AtMostOnceAWeek: howOften = "[null,null,3,3]," + (int)_howOften; break; } string update = string.Empty; if (isEdit) { update = "\"" + alert.id + "\","; } string flagLanguage = "1"; Language _language = alert.language; if (alert.language == Language.AnyLanguage) { _language = Language.English; flagLanguage = "0"; } string flagRegion = "1"; Region _region = alert.region; if (alert.region == Region.AnyRegion) { _region = Region.UnitedStates; flagRegion = "0"; } string query = alert.query; return("[null," + update + "[null,null,null,[null,\"" + query + "\",\"" + domainExt + "\",[null,\"" + GetDescriptionFromEnumValue(_language) + "\",\"" + GetDescriptionFromEnumValue(_region) + "\"],null,null,null," + flagRegion + "," + flagLanguage + "]," + _sources + "," + (int)alert.howMany + ",[[null," + feedKey + ",\"" + _email + "\"," + howOften + ",\"en-US\"," + (isEdit ? "1" : "null") + ",null,null,null,null,\"" + (isEdit ? (string)this.AlertTable[alert.id] : "0") + "\",null,null,\"" + this.auth_token + "\"]]]]"); }