Kullanıcı:ToprakBot/AWB modülleri/tartışma/victor

Vikipedi, özgür ansiklopedi
//AutoWikiBrowser - Tartışma modülü - Victor V1.2.1
//Yazar: ToprakM
        public string ProcessArticle(string ArticleText, string ArticleTitle, int wikiNamespace, out string Summary, out bool Skip)
        {
			
			Summary = "";
			Skip = false;
			
			//Tartışma sayfası mı?
			if (!(wikiNamespace == 1||wikiNamespace == 3||wikiNamespace == 5||wikiNamespace == 7||wikiNamespace == 9||wikiNamespace == 11
			||wikiNamespace == 13||wikiNamespace == 15||wikiNamespace == 101||wikiNamespace == 103||wikiNamespace == 829||wikiNamespace == 2301
			||wikiNamespace == 2303)) {
				Summary = "Bu bir tartışma sayfası değil ki!?";
				Skip = true;
			}
			
			string parametre = "|";
			Regex köy = new Regex(@"\|\s*köy\s*\}\}", RegexOptions.IgnoreCase);
			Regex il = new Regex(@"\|\s*il\s*\}\}", RegexOptions.IgnoreCase);
			Regex ilçe = new Regex(@"\|\s*ilçe\s*\}\}", RegexOptions.IgnoreCase);
			Regex mahalle = new Regex(@"\|\s*mahalle\s*\}\}", RegexOptions.IgnoreCase);
			Regex büyükşehir = new Regex(@"\|\s*büyükşehir\s*\}\}", RegexOptions.IgnoreCase);
			Regex liste = new Regex(@"\|\s*liste\s*\}\}", RegexOptions.IgnoreCase);
			if (köy.Match(ArticleText).Success) 		{ 	parametre += "köy"; 		}
			if (il.Match(ArticleText).Success) 			{ 	parametre += "il"; 			}
			if (ilçe.Match(ArticleText).Success) 		{ 	parametre += "ilçe"; 		}
			if (mahalle.Match(ArticleText).Success) 	{ 	parametre += "mahalle"; 	}
			if (büyükşehir.Match(ArticleText).Success) 	{ 	parametre += "büyükşehir"; 	}
			if (liste.Match(ArticleText).Success) 		{ 	parametre += "liste"; 		}
			
			//Tartışma şablonu var mı?
			bool şablon = false;
			Regex R1 = new Regex(@"\{\{\s*(tartışma|discussion|sakin konuş)\s*(\||\}\})", RegexOptions.IgnoreCase);
			if (R1.Match(ArticleText).Success) {
				şablon = true;
			}
			
			//Sayfa boşsa geç
			/*if (ArticleText == "") {
				Summary = "Sayfa boş.";
				Skip = true;
			}*/
			
			//Vikiproje şablonu var mı?
			Regex R2 = new Regex(@"\{\{\s*vikiproje\s*(\||\}\})", RegexOptions.IgnoreCase);
			string vikiproje = "";
			
			//Yerleşim birimleri vikiproje şablonu var mı?
			Regex ek1 = new Regex(@"(\{\{\s*VikiProje Türkiye yerleşim birimleri.*\}\})", RegexOptions.IgnoreCase);
			var Mek1 = ek1.Match(ArticleText);
			string yerleşimşablonu = Mek1.Groups[1].Value;
			ArticleText = ek1.Replace(ArticleText, "");
			
			Regex ek2 = new Regex(@"türkiye yerleşim birimleri", RegexOptions.IgnoreCase);
			bool şablonvar = false;
			if (ek1.Match(ArticleText).Success||ek2.Match(ArticleText).Success) {
				şablonvar = true;
			}
			
			if (R2.Match(ArticleText).Success) {
				//Vikiproje şablonu yerleştirme
				Regex R2a = new Regex(@"(\{\{\s*vikiproje\s*(\||\}\}).*\}\})", RegexOptions.IgnoreCase);
				if (R2a.Match(ArticleText).Success) {
					var M1 = R2a.Match(ArticleText);
					vikiproje = M1.Groups[1].Value;
					vikiproje = R2a.Replace(ArticleText, "$1");
				}
			}
			
			//Tartışma şablonu yoksa ekle
			if (şablon == false) {
				if (!(vikiproje == "")) {
					if (şablonvar == false) {
						ArticleText = "{{Tartışma|proje=\n{{VikiProje Türkiye yerleşim birimleri" + parametre + "}}\n" + vikiproje + "\n}}";
					} else {
						ArticleText = "{{Tartışma|proje=\n" + yerleşimşablonu + parametre + "\n" + vikiproje + "\n}}";
					}
				} else {
					if (şablonvar == false) {
						ArticleText = "{{Tartışma|proje=\n{{VikiProje Türkiye yerleşim birimleri" + parametre + "}}\n}}\n" + ArticleText;
					}
					else {
						ArticleText = "{{Tartışma|proje=" + yerleşimşablonu + parametre + "}}\n" + ArticleText;
					}
				}
			} //else { Skip = true; }
			
            return ArticleText;
        }