private DYKStatusTemplate CheckValidness(MediaWiki wiki, string title) { var validThrough = GetValidThroughTime(wiki, title, DateTimeOffset.UtcNow); return(validThrough == null ? DYKStatusTemplate.Missing() : DYKStatusTemplate.Valid(validThrough.Value)); }
public Article(Match match) { var status = match.Groups["status"]; Title = match.Groups["title"].Value; try { if (status.Success) { Status = new DYKStatusTemplate(status.Value); } } catch { Status = null; } }
private DYKStatusTemplate CheckStatus(MediaWiki wiki, string title) { var text = wiki.GetPage(title, followRedirects: true); if (text == null) { return(DYKStatusTemplate.Missing()); } else if (ForDeletionRegex.IsMatch(text)) { return(DYKStatusTemplate.ForDeletion()); } else if (Encoding.UTF8.GetByteCount(text) < MinArticleSize) { return(DYKStatusTemplate.Small()); } else { return(null); } }