کاربر:Sunfyre/DiscussionCloser.js

از ویکی‌پدیا، دانشنامهٔ آزاد
نکته: برای دیدن تغییرات، ممکن است نیاز باشد که حافظهٔ نهانی مرورگر خود را پس از انتشار پاک‌سازی کنید. گوگل کروم، فایرفاکس، مایکروسافت اج و سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload در نوار ابزار مرورگر کلیک کنید. برای آگاهی از جزئیات و نحوهٔ پاک‌سازی حافظهٔ نهانی سایر مرورگرها، صفحهٔ ویکی‌پدیا:میانگیر مرورگرتان را خالی کنید را ببینید.
//<nowiki>
//Credits to Equazcion and Evad37
//Date: 7 Feb 2019
function dc_init() {
	if ((($('#ca-addsection').length > 0) || (mw.config.get('wgPageName') == 'Wikipedia:Administrators\'_noticeboard/Edit_warring') || (mw.config.get('wgPageName') == 'Wikipedia:In_the_news/Candidates')) && (mw.config.get('wgAction') == 'view')){
		$('span.mw-headline').each(function(index, value){
			var editSectionUrl = $(this).parent().find('.mw-editsection a:first').attr('href');
			var sectionReg = /&section=(.*)/;
			var sectionRaw = sectionReg.exec(editSectionUrl);
			if ((sectionRaw !== null) && (sectionRaw[1].indexOf('T') < 0)){
				var section = parseInt(sectionRaw[1]);
				if ($(this).parent().prop("tagName") == 'H2') {
					$(this).parent('h2').append(' <div style="font-size:.6em;font-weight:bold;float:right"> | <a id="' + section + 
						'" class="closeLink">' + 'Close' + '</a></div>');
					$(this).parent('h2').find('a.closeLink').click(function(){
						$('body').prepend('<div id="DC-modal">'+
					    '<div id="DC-interface">'+
					      '<h4 id="DC-interface-header"></h4>'+
					      '<hr>'+
					      '<div id="DC-interface-content"></div>'+
					      '<hr>'+
					      '<div id="DC-interface-footer"></div>'+
					    '</div>'+
					  '</div>');
					  $("#DC-modal").css({
					    "position": "fixed",
					    "z-index": "1",
					    "left": "0",
					    "top": "0",
					    "width": "100%",
					    "height": "100%",
					    "overflow": "hidden",
					    "background-color": "rgba(0,0,0,0.4)"
					  });
					  $("#DC-interface").css({
					    "background-color": "#d6d6d6",
					    "margin": "10% auto",
					    "padding": "2px 20px",
					    "border": "1px solid #888",
					    "width": "80%",
					    "max-width": "60em",
					    "font-size": "90%"
					  });
					  $("#DC-interface-content").css({
					    "min-height": "7em",
					    "width" : "875px",
					    "height" : "400px",
					    "overflow-y": "hidden"
					  });
					  $("#DC-interface-footor").css("min-height", "3em");
						$("#DC-interface-header, #DC-interface-content, #DC-interface-footer").empty();
						$("#DC-interface-header").text("Discussion Closer");
						$("#DC-interface-content").append(
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').attr({'id':'DC-label'}).text('Options: '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio1','value':'atop','checked':'true','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (آبی) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio2','value':'atopg','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (سبز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio3','value':'atopy','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (زرد) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio4','value':'atopr','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (قرمز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'Rfctop','onchange':'dc_radio(2)'}),
						    $('<label>').text('دبن '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'hat','onchange':'dc_radio(2)'}),
						    $('<label>').text('بایگانی مخفی ')
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('وضعیت (اختیاری): '),
						    $('<input>').attr({'type':'text','name':'DC-e','id':'DC-e'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Closing comment:'),
						    $('<textarea>').css({'resize':'none'}).attr({'name':'DC-com','id':'DC-com','rows':'17','cols':'30'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Edit summary ("بستن بحث" if left blank): '),
						    $('<input>').attr({'type':'text','name':'DC-es','id':'DC-es'})
						  )
						);
						$("#DC-interface-footer").append(
						  $('<button>').attr({'name':'DC-done', 'id':'DC-done'}).text('Close discussion'),
						  $('<button>').attr('id', 'DC-cancel').text('Cancel')
						);
						document.getElementById("DC-modal").addEventListener( "keydown", function ( key ) {
				        	if( key.ctrlKey && ( key.keyCode == 10 || key.keyCode == 13 ) ) {
				            	document.getElementById("DC-done").click();
				            }
				            else if ( key.keyCode == 27 ){
				            	document.getElementById("DC-cancel").click();
				            }
			        	});
						$('#DC-cancel').click(function() {
						  $('#DC-modal').remove();
						});
						$('#DC-done').click(function() {
							var template = $("input[name=DC-radio]:checked").val();
							var status = $('#DC-e').val();
							var editsummary = $('#DC-es').val();
							if (editsummary === "") {
								editsummary = "بستن بحث";
							}
							var comment = $('#DC-com').val();
							$('#DC-done').remove();
							$('#DC-cancel').remove();
            				$('#DC-interface-content').empty();
            				$("#DC-interface-content").text('Retrieving information...');
							var request = {
								action:"query", 
								titles: mw.config.get('wgPageName'), 
								rvsection: section,
								prop: "revisions|info", 
								intoken: "edit", 
								rvprop: "content",
								indexpageids: 1,
								dataType: "xml",
								format: "xml"
              };
              $("#DC-interface-content").append('<b>Done!</b><br>Closing discussion...');
              var bottom;
              if (template === 'atop' || template === 'atopr' || template === 'atopy' || template === 'atopg') {
                bottom = "{{abot}}";
              }
              else if (template === 'hat') {
                bottom = "{{hab}}";
              }
              else {
                bottom = "{{rfc bottom}}";
              }
            	if (!Morebits.userIsInGroup('sysop')) {
			    	comment += ' {{nac}}';
				}
				$.get(mw.config.get("wgScriptPath")+"/api.php", request, function(response){
                var contentSection = '\r\r' + $(response).find('rev').text();
                var discussiontext = contentSection.substring(contentSection.substring(3,contentSection.length).indexOf('\n')+3, contentSection.length);
                var title = contentSection.substring(2, contentSection.length - discussiontext.length);
								var wikitext = title + '\n{{'+template+'\n| وضعیت = '+status+'\n| نتیجه = '+comment+'\n}}'+discussiontext+'\n'+bottom;
								var sectiontitle = title.replace('==', '').replace('==', '').replace('\n', '').replace('/r','').trim();
								var sectiontitle2 = sectiontitle.replace(/ /g, '_');
                var request2 = {
                  action:"edit", 
                  section: section, 
                  title: mw.config.get('wgPageName'), 
                  text: wikitext,
                  summary: '/* '+sectiontitle+' */ '+editsummary+' ([[:en:User:Abelmoschus Esculentus/DiscussionCloser|DiscussionCloser]])',
                  token: mw.user.tokens.get("csrfToken")
								};
								if (contentSection.includes('{{atop')||contentSection.includes('{{atopr')||contentSection.includes('{{atopg')||contentSection.includes('{{atopy')||contentSection.includes('{{hat')||contentSection.includes('{{abot')||contentSection.includes('{{archive')||contentSection.includes('{{Rfctop')||contentSection.includes('{{rfctop')||contentSection.includes('{{Atop')||contentSection.includes('{{Atopr')||contentSection.includes('{{Atopy')||contentSection.includes('{{Atopg')||contentSection.includes('{{Abot')||contentSection.includes('{{Rfc bottom')||contentSection.includes('{{Archive bottom')||contentSection.includes('{{archive bottom')||contentSection.includes('{{hidden archive bottom')||contentSection.includes('{{Hidden archive bottom')) {
									var cont = confirm('The discussion may have already been closed. Continue?');
									if (!cont) {
										$("#DC-interface-content").append('<b>Aborted by user</b><br><b>Finished!</b>');
										$('#DC-interface-footer').append(
											$('<button>').attr('id', 'DC-close').text('Close')
										);
										$('#DC-close').click(function() {
										$('#DC-modal').remove();
											window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
											window.location.reload();
										});
									}
									else {
									$.when(
					                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
					                    
					                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
									}
								}
								else {
                $.when(
                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
                    
                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
								}
							});
						});
					});
				}
				if ($(this).parent().prop("tagName") == 'H3') {
					$(this).parent('h3').append(' <div style="font-size:.6em;font-weight:bold;float:right"> | <a id="' + section + 
						'" class="closeLink">' + 'Close' + '</a></div>');
					$(this).parent('h3').find('a.closeLink').click(function(){
						$('body').prepend('<div id="DC-modal">'+
					    '<div id="DC-interface">'+
					      '<h4 id="DC-interface-header"></h4>'+
					      '<hr>'+
					      '<div id="DC-interface-content"></div>'+
					      '<hr>'+
					      '<div id="DC-interface-footer"></div>'+
					    '</div>'+
					  '</div>');
					  $("#DC-modal").css({
					    "position": "fixed",
					    "z-index": "1",
					    "left": "0",
					    "top": "0",
					    "width": "100%",
					    "height": "100%",
					    "overflow": "hidden",
					    "background-color": "rgba(0,0,0,0.4)"
					  });
					  $("#DC-interface").css({
					    "background-color": "#d6d6d6",
					    "margin": "10% auto",
					    "padding": "2px 20px",
					    "border": "1px solid #888",
					    "width": "80%",
					    "max-width": "60em",
					    "font-size": "90%"
					  });
					  $("#DC-interface-content").css({
					    "min-height": "7em",
					    "width" : "875px",
					    "height" : "400px",
					    "overflow-y": "hidden"
					  });
					  $("#DC-interface-footor").css("min-height", "3em");
						$("#DC-interface-header, #DC-interface-content, #DC-interface-footer").empty();
						$("#DC-interface-header").text("Discussion Closer");
						$("#DC-interface-content").append(
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').attr({'id':'DC-label'}).text('گزینه‌ها: '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio1','value':'atop','checked':'true','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (آبی) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio2','value':'atopg','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (سبز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio3','value':'atopy','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (زرد) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio4','value':'atopr','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (قرمز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'Rfctop','onchange':'dc_radio(2)'}),
						    $('<label>').text('RfC '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'hat','onchange':'dc_radio(2)'}),
						    $('<label>').text('Hidden archive ')
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Status (optional): '),
						    $('<input>').attr({'type':'text','name':'DC-e','id':'DC-e'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Closing comment:'),
						    $('<textarea>').css({'resize':'none'}).attr({'name':'DC-com','id':'DC-com','rows':'17','cols':'30'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						  	$('<label>').text('Edit summary ("بستن بحث" if left blank): '),
						  	$('<input>').attr({'type':'text','name':'DC-es','id':'DC-es'})
						  )
						);
						$("#DC-interface-footer").append(
						  $('<button>').attr({'name':'DC-done', 'id':'DC-done'}).text('Close discussion'),
						  $('<button>').attr('id', 'DC-cancel').text('Cancel')
						);
						document.getElementById("DC-modal").addEventListener( "keydown", function ( key ) {
				        	if( key.ctrlKey && ( key.keyCode == 10 || key.keyCode == 13 ) ) {
				            	document.getElementById("DC-done").click();
				            }
				            else if ( key.keyCode == 27 ){
				            	document.getElementById("DC-cancel").click();
				            }
			        	});
						$('#DC-cancel').click(function() {
						  $('#DC-modal').remove();
						});
						$('#DC-done').click(function() {
							var template = $("input[name=DC-radio]:checked").val();
							var status = $('#DC-e').val();
							var comment = $('#DC-com').val();
							var editsummary = $('#DC-es').val();
							if (editsummary === "") {
								editsummary = "بستن بحث";
							}
							$('#DC-done').remove();
							$('#DC-cancel').remove();
              $('#DC-interface-content').empty();
              $("#DC-interface-content").text('Retrieving information...');
							var request = {
								action:"query", 
								titles: mw.config.get('wgPageName'), 
								rvsection: section,
								prop: "revisions|info", 
								intoken: "edit", 
								rvprop: "content",
								indexpageids: 1,
								dataType: "xml",
								format: "xml"
              };
              $("#DC-interface-content").append('<b>Done!</b><br>Closing discussion...');
              var bottom;
              if (template === 'atop' || template === 'atopr' || template === 'atopy' || template === 'atopg') {
                bottom = "{{abot}}";
              }
              else if (template === 'hat') {
                bottom = "{{hab}}";
              }
              else {
                bottom = "{{rfc bottom}}";
              }
            	if (Morebits.userIsInGroup('rollbacker')) {
			    	comment += ' {{nac}}';
				}
				$.get(mw.config.get("wgScriptPath")+"/api.php", request, function(response){
					var contentSection = '\r\r' + $(response).find('rev').text();
                var discussiontext = contentSection.substring(contentSection.substring(3,contentSection.length).indexOf('\n')+3, contentSection.length);
                var title = contentSection.substring(2, contentSection.length - discussiontext.length);
								var wikitext = title + '\n{{'+template+'\n| وضعیت = '+status+'\n| نتیجه = '+comment+'\n}}'+discussiontext+'\n'+bottom;
								var sectiontitle = title.replace('===', '').replace('===', '').replace('\n', '').replace('/r','').trim();
								var sectiontitle2 = sectiontitle.replace(/ /g, '_');
                var request2 = {
                  action:"edit", 
                  section: section, 
                  title: mw.config.get('wgPageName'), 
                  text: wikitext,
                  summary: '/* '+sectiontitle+' */ '+editsummary+' ([[:en:User:Abelmoschus Esculentus/DiscussionCloser|DiscussionCloser]])',
                  token: mw.user.tokens.get("csrfToken")
								};
								if (contentSection.includes('{{atop')||contentSection.includes('{{atopr')||contentSection.includes('{{atopg')||contentSection.includes('{{atopy')||contentSection.includes('{{hat')||contentSection.includes('{{abot')||contentSection.includes('{{archive')||contentSection.includes('{{Rfctop')||contentSection.includes('{{rfctop')||contentSection.includes('{{Atop')||contentSection.includes('{{Atopr')||contentSection.includes('{{Atopy')||contentSection.includes('{{Atopg')||contentSection.includes('{{Abot')||contentSection.includes('{{Rfc bottom')||contentSection.includes('{{Archive bottom')||contentSection.includes('{{archive bottom')||contentSection.includes('{{hidden archive bottom')||contentSection.includes('{{Hidden archive bottom')) {
									var cont = confirm('The discussion may have already been closed. Continue?');
									if (!cont) {
										$("#DC-interface-content").append('<b>Aborted by user</b><br><b>Finished!</b>');
										$('#DC-interface-footer').append(
											$('<button>').attr('id', 'DC-close').text('Close')
										);
										$('#DC-close').click(function() {
										$('#DC-modal').remove();
											window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
											window.location.reload();
										});
									}
									else {
									$.when(
					                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
					                    
					                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
									}
								}
								else {
                $.when(
                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
                    
                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
								}
							});
						});
					});
				}
				if ($(this).parent().prop("tagName") == 'H4') {
					$(this).parent('h4').append(' <div style="font-size:.6em;font-weight:bold;float:right"> | <a id="' + section + 
						'" class="closeLink">' + 'Close' + '</a></div>');
					$(this).parent('h4').find('a.closeLink').click(function(){
						$('body').prepend('<div id="DC-modal">'+
					    '<div id="DC-interface">'+
					      '<h4 id="DC-interface-header"></h4>'+
					      '<hr>'+
					      '<div id="DC-interface-content"></div>'+
					      '<hr>'+
					      '<div id="DC-interface-footer"></div>'+
					    '</div>'+
					  '</div>');
					  $("#DC-modal").css({
					    "position": "fixed",
					    "z-index": "1",
					    "left": "0",
					    "top": "0",
					    "width": "100%",
					    "height": "100%",
					    "overflow": "hidden",
					    "background-color": "rgba(0,0,0,0.4)"
					  });
					  $("#DC-interface").css({
					    "background-color": "#d6d6d6",
					    "margin": "10% auto",
					    "padding": "2px 20px",
					    "border": "1px solid #888",
					    "width": "80%",
					    "max-width": "60em",
					    "font-size": "90%"
					  });
					  $("#DC-interface-content").css({
					    "min-height": "7em",
					    "width" : "875px",
					    "height" : "400px",
					    "overflow-y": "hidden"
					  });
					  $("#DC-interface-footor").css("min-height", "3em");
						$("#DC-interface-header, #DC-interface-content, #DC-interface-footer").empty();
						$("#DC-interface-header").text("Discussion Closer");
						$("#DC-interface-content").append(
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').attr({'id':'DC-label'}).text('Options: '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio1','value':'atop','checked':'true','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (آبی) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio2','value':'atopg','onchange':'dc_radio(1)'}),
						    $('<label>').text('عمومی (سبز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio3','value':'atopy','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (زرد) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio4','value':'atopr','onchange':'dc_radio(1)'}),
						    $('<label>').text('ناموفق (قرمز) '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'Rfctop','onchange':'dc_radio(2)'}),
						    $('<label>').text('RfC '),
						    $('<input>').attr({'type':'radio', 'name':'DC-radio','id':'DC-radio5','value':'hat','onchange':'dc_radio(2)'}),
						    $('<label>').text('Hidden archive ')
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Status (optional): '),
						    $('<input>').attr({'type':'text','name':'DC-e','id':'DC-e'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						    $('<label>').text('Closing comment:'),
						    $('<textarea>').css({'resize':'none'}).attr({'name':'DC-com','id':'DC-com','rows':'17','cols':'30'})
						  ),
						  $('<div>').css('margin-bottom','0.5em').append(
						  	$('<label>').text('Edit summary ("بستن بحث" if left blank): '),
						  	$('<input>').attr({'type':'text','name':'DC-es','id':'DC-es'})
						  )
						);
						$("#DC-interface-footer").append(
						  $('<button>').attr({'name':'DC-done', 'id':'DC-done'}).text('Close discussion'),
						  $('<button>').attr('id', 'DC-cancel').text('Cancel')
						);
						document.getElementById("DC-modal").addEventListener( "keydown", function ( key ) {
				        	if( key.ctrlKey && ( key.keyCode == 10 || key.keyCode == 13 ) ) {
				            	document.getElementById("DC-done").click();
				            }
				            else if ( key.keyCode == 27 ){
				            	document.getElementById("DC-cancel").click();
				            }
			        	});
						$('#DC-cancel').click(function() {
						  $('#DC-modal').remove();
						});
						$('#DC-done').click(function() {
							var template = $("input[name=DC-radio]:checked").val();
							var status = $('#DC-e').val();
							var comment = $('#DC-com').val();
							var editsummary = $('#DC-es').val();
							if (editsummary === "") {
								editsummary = "Closing discussion";
							}
							$('#DC-done').remove();
							$('#DC-cancel').remove();
              $('#DC-interface-content').empty();
              $("#DC-interface-content").text('Retrieving information...');
							var request = {
								action:"query", 
								titles: mw.config.get('wgPageName'), 
								rvsection: section,
								prop: "revisions|info", 
								intoken: "edit", 
								rvprop: "content",
								indexpageids: 1,
								dataType: "xml",
								format: "xml"
              };
              $("#DC-interface-content").append('<b>Done!</b><br>Closing discussion...');
              var bottom;
              if (template === 'atop' || template === 'atopr' || template === 'atopy' || template === 'atopg') {
                bottom = "{{abot}}";
              }
              else if (template === 'hat') {
                bottom = "{{hab}}";
              }
              else {
                bottom = "{{rfc bottom}}";
              }
            	if (Morebits.userIsInGroup('rollbacker')) {
			    	comment += ' {{nac}}';
				}
				$.get(mw.config.get("wgScriptPath")+"/api.php", request, function(response){
					var contentSection = '\r\r' + $(response).find('rev').text();
                var discussiontext = contentSection.substring(contentSection.substring(3,contentSection.length).indexOf('\n')+3, contentSection.length);
                var title = contentSection.substring(2, contentSection.length - discussiontext.length);
								var wikitext = title + '\n{{'+template+'\n| وضعیت = '+status+'\n| نتیجه = '+comment+'\n}}'+discussiontext+'\n'+bottom;
								var sectiontitle = title.replace('====', '').replace('====', '').replace('\n', '').replace('/r','').trim();
								var sectiontitle2 = sectiontitle.replace(/ /g, '_');
                var request2 = {
                  action:"edit", 
                  section: section, 
                  title: mw.config.get('wgPageName'), 
                  text: wikitext,
                  summary: '/* '+sectiontitle+' */ '+editsummary+' ([[:en:User:Abelmoschus Esculentus/DiscussionCloser|DiscussionCloser]])',
                  token: mw.user.tokens.get("csrfToken")
								};
								if (contentSection.includes('{{atop')||contentSection.includes('{{atopr')||contentSection.includes('{{atopg')||contentSection.includes('{{atopy')||contentSection.includes('{{hat')||contentSection.includes('{{abot')||contentSection.includes('{{archive')||contentSection.includes('{{Rfctop')||contentSection.includes('{{rfctop')||contentSection.includes('{{Atop')||contentSection.includes('{{Atopr')||contentSection.includes('{{Atopy')||contentSection.includes('{{Atopg')||contentSection.includes('{{Abot')||contentSection.includes('{{Rfc bottom')||contentSection.includes('{{Archive bottom')||contentSection.includes('{{archive bottom')||contentSection.includes('{{hidden archive bottom')||contentSection.includes('{{Hidden archive bottom')) {
									var cont = confirm('The discussion may have already been closed. Continue?');
									if (!cont) {
										$("#DC-interface-content").append('<b>Aborted by user</b><br><b>Finished!</b>');
										$('#DC-interface-footer').append(
											$('<button>').attr('id', 'DC-close').text('Close')
										);
										$('#DC-close').click(function() {
										$('#DC-modal').remove();
											window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
											window.location.reload();
										});
									}
									else {
									$.when(
					                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
					                    
					                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
									}
								}
								else {
                $.when(
                  $.post(mw.config.get("wgScriptPath")+"/api.php", request2, function(response2){
                    
                  }).done(function() {
									 $("#DC-interface-content").append('<b>Done!</b><br><b>Finished!</b>');
									 $('#DC-interface-footer').append(
										$('<button>').attr('id', 'DC-close').text('Close')
									);
									$('#DC-close').click(function() {
										$('#DC-modal').remove();
										window.location.href = 'https://en.wikipedia.org/wiki/'+mw.config.get('wgPageName')+'#'+sectiontitle2;
										window.location.reload();
									});
								 }));
								}
							});
						});
					});
				}
			}
	});
}
}
function dc_radio(i) {
	if (i == 1) {
		$('#DC-e').prop('disabled', false);
		$('#DC-e').val("");
	}
	if (i == 2) {
		$('#DC-e').prop('disabled', true);
		$('#DC-e').val('Not available');
	}
}
mw.loader.using(['ext.gadget.Twinkle', 'mediawiki.util', 'mediawiki.api', 'mediawiki.Title', 'mediawiki.RegExp'], function() {
	dc_init();
});
//</nowiki>