Kullanıcı:ToprakBot/AWB modülleri: Revizyonlar arasındaki fark

İçerik silindi İçerik eklendi
Boş bir sayfa oluşturdu
 
Değişiklik özeti yok
1. satır:
;Kaynakça ekleme modülü
Sayfada kaynak varsa ancak kaynakça yoksa, kaynakçayı mümkün olan en doğru yere ekler. Kaynak yoksa veya kaynakça varsa sayfayı geçer.
 
<syntaxhighlight lang="c#">
public string ProcessArticle(string ArticleText, string ArticleTitle, int wikiNamespace, out string Summary, out bool Skip)
{
Summary = "Kaynakça başlığı ekleniyor";
Match kat = Regex.Match(ArticleText, @"\[\[[KkCc]ategor[yi]:");
Match disbag = Regex.Match(ArticleText, @"==(\s*|)[Dd][Iıİi][SsŞş]\s*[Bb][Aa][ĞğGg][Ll][Aa][Nn][Tt][Iıİi][Ll][Aa][[Rr](\s*|)==");
Match taslak = Regex.Match(ArticleText, @"{{.*(-|)[Tt]aslak(\s*|)}}");
Match nokat = Regex.Match(ArticleText, @"{{\s*[Kk]ategorisiz");
Regex one = new Regex(@"([Kk][Aa][Yy][Nn][Aa][Kk][ÇçCc][Aa]|==(\s*|)[Kk][Aa][Yy][Nn][Aa][Kk](\s*|)==)", RegexOptions.IgnoreCase);
Regex two = new Regex(@"(R|r)eferences", RegexOptions.IgnoreCase);
Regex three = new Regex(@"==\s*(R|r)eferans(lar)\s*==", RegexOptions.IgnoreCase);
Regex four = new Regex(@"{{\s*reflist", RegexOptions.IgnoreCase);
Skip = (one.Match(ArticleText).Success||two.Match(ArticleText).Success||three.Match(ArticleText).Success||four.Match(ArticleText).Success);
if (ArticleText.Contains("<ref"))
{
if (disbag.Success) ArticleText = ArticleText.Insert(disbag.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else if (taslak.Success) ArticleText = ArticleText.Insert(taslak.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
//else if (nokat.Success) ArticleText = ArticleText.Insert(nokat.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else if (kat.Success) ArticleText = ArticleText.Insert(kat.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else ArticleText += "\r\n==Kaynakça==\n{{kaynakça|30em}}";
}
else if (ArticleText.Contains("< ref"))
{
if (disbag.Success) ArticleText = ArticleText.Insert(disbag.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else if (taslak.Success) ArticleText = ArticleText.Insert(taslak.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
//else if (nokat.Success) ArticleText = ArticleText.Insert(nokat.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else if (kat.Success) ArticleText = ArticleText.Insert(kat.Index, "==Kaynakça==\n{{kaynakça|30em}}\r\n\n");
else ArticleText += "\r\n==Kaynakça==\n{{kaynakça|30em}}";
}
else
{
Skip = true;
}
 
return ArticleText;
}</syntaxhighlight>