private void AddDefaultFilters() { // keyword "nil, programerski, izziv" -> "http://www.nil.si/" var filterK = new RedirectFilter("NIL", true); filterK.RedirectType = RedirectFilterType.Keywords; filterK.RedirectString = "nil,programerski,izziv"; filterK.RedirectTarget = "http://www.nil.si"; // keyword "uni-lj" -> "http://www.fri.uni-lj.si/" var filterF = new RedirectFilter("FRI", true); filterF.RedirectType = RedirectFilterType.Keywords; filterF.RedirectString = "uni-lj"; filterF.RedirectTarget = "http://www.fri.uni-lj.si"; // url "http://www.nlb.si/" -> "http://www.cert.si" var filterU = new RedirectFilter("NLB", false); filterU.RedirectType = RedirectFilterType.URL; filterU.RedirectString = "http://www.nlb.si/"; filterU.RedirectTarget = "http://www.cert.si"; // regex "http://(www.)?google.[a-z]{2,3}/" -> "http://www.najdi.si" var filterR = new RedirectFilter("Google", false); filterR.RedirectType = RedirectFilterType.Regex; filterR.RedirectString = "http://(www.)?google.[a-z]{2,3}/"; filterR.RedirectTarget = "http://www.najdi.si"; PacketDispatcher.Instance.AddPacketFilter(filterK); PacketDispatcher.Instance.AddPacketFilter(filterF); PacketDispatcher.Instance.AddPacketFilter(filterU); PacketDispatcher.Instance.AddPacketFilter(filterR); }
private void ButtonSave_Click(object sender, RoutedEventArgs e) { // check filter name if (FilterName.Text.Equals(String.Empty)) { MessageBox.Show("Please enter a filter name.", "Empty field", MessageBoxButton.OK, MessageBoxImage.Warning); return; } // check redirect string if (RedirectString.Text.Equals(String.Empty)) { MessageBox.Show("Please enter a redirect url/keywords/regex.", "Empty field", MessageBoxButton.OK, MessageBoxImage.Warning); return; } var targetURL = RedirectTarget.Text; // check redirect string - validate regex if ((RedirectFilterType)RedirectType.SelectedIndex == RedirectFilterType.Regex) { Regex regex; try { regex = new Regex(RedirectString.Text); } catch { MessageBox.Show("Please enter a valid regular expression.", "Validation error", MessageBoxButton.OK, MessageBoxImage.Warning); return; } } // check target URL if (RedirectTarget.Text.Equals(String.Empty)) { MessageBox.Show("Please enter target URL.", "Validation error", MessageBoxButton.OK, MessageBoxImage.Warning); return; } filter = new RedirectFilter(); filter.Enabled = loadedFilterState; filter.Name = FilterName.Text; filter.RedirectType = (RedirectFilterType)RedirectType.SelectedIndex; filter.RedirectString = RedirectString.Text; filter.RedirectTarget = RedirectTarget.Text; DialogResult = true; Close(); }
/// <summary> /// Gets a list of up to 250 of the shop's redirects. /// </summary> /// <param name="filter">An optional filter that restricts the results.</param> /// <returns>The list of <see cref="Redirect"/>.</returns> public virtual async Task <IEnumerable <Redirect> > ListAsync(RedirectFilter filter = null) { var req = PrepareRequest("redirects.json"); if (filter != null) { req.Url.QueryParams.AddRange(filter.ToParameters()); } return(await ExecuteRequestAsync <List <Redirect> >(req, HttpMethod.Get, rootElement : "redirects")); }
private void LoadFilter(RedirectFilter currentFilter) { loadedFilterState = currentFilter.Enabled; TextTitle.Text = "EDIT REDIRECT FILTER"; FilterName.Text = currentFilter.Name; RedirectString.Text = currentFilter.RedirectString; RedirectTarget.Text = currentFilter.RedirectTarget; RedirectType.SelectedIndex = (int)currentFilter.RedirectType; }
/// <inheritdoc /> public override IEnumerable <KeyValuePair <string, object> > EnumParameters(MediaWikiVersion version) { var p = new OrderedKeyValuePairs <string, object> { { "lhprop", "pageid|title|redirect" }, { "lhshow", RedirectFilter.ToString("redirect", "!redirect", null) } }; if (NamespaceSelection != null) { p.Add("lhnamespace", MediaWikiHelper.JoinValues(NamespaceSelection)); } return(p); }
public RedirectFilterWindow(RedirectFilter currentFilter) : this() { LoadFilter(currentFilter); }