مسابقه دانش‌دخت
اسلامیکال از تاریخ ۱۵ دی تا ۲۰ بهمن، میزبان یک همایه با موضوع زنان است. شما می‌توانید در مسابقه مقاله‌نویسی دانش‌دخت، شرکت کنید و با نگارش مقاله، از جوایز آن بهره‌مند باشید. اگر به موضوعات مربوط با زنان علاقه‌مندید، این فرصت را از دست ندهید. فهرستی از مقالات پیشنهادی جهت ایجاد یا ویرایش در اینجا وجود دارد.

مدیاویکی:RefToolbarLegacy.js

از اسلامیکال
نسخهٔ تاریخ ‏۵ فوریهٔ ۲۰۲۳، ساعت ۱۱:۳۰ توسط Aboammar (بحث | مشارکت‌ها) (تست یادکرد)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

نکته: پس از انتشار ممکن است برای دیدن تغییرات نیاز باشد که حافظهٔ نهانی مرورگر خود را پاک کنید.

  • فایرفاکس / سافاری: کلید Shift را نگه دارید و روی دکمهٔ Reload کلیک کنید، یا کلید‌های Ctrl-F5 یا Ctrl-R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-R)
  • گوگل کروم: کلیدهای Ctrl+Shift+R را با هم فشار دهید (در رایانه‌های اپل مکینتاش کلید‌های ⌘-Shift-R)
  • اینترنت اکسپلورر/ Edge: کلید Ctrl را نگه‌دارید و روی دکمهٔ Refresh کلیک کنید، یا کلید‌های Ctrl-F5 را با هم فشار دهید
  • اپرا: Ctrl-F5 را بفشارید.
var numforms = 0;
var wikEdAutoUpdateUrl;
var citeUserDateFormat;
var refTagURL;
var defaultRefTagURL = '//reftag.appspot.com/';
var refToolDebug;

String.prototype.trim = function() {
	return this.replace(/^\s+|\s+$/g,"");
};

function refbuttons() {
  if (document.getElementById('toolbar') ) {
    var button = document.createElement('a');
    button.href = "javascript:easyCiteMain()";
    button.title = "درج یادکرد";
    var buttonimage = document.createElement('img');
    buttonimage.src = "//upload.wikimedia.org/wikipedia/commons/e/ea/Button_easy_cite.png";
    buttonimage.alt = "درج یادکرد";
    button.appendChild(buttonimage);
    var toolbar = document.getElementById('toolbar');
    if (navigator.userAgent.indexOf('MSIE') == -1) {
      toolbar.appendChild(button);
      var citemain = document.createElement('div');
      citemain.style.display = 'none';
      citemain.style.margin = '6px 0 0';
      citemain.style.clear = 'both';
      citemain.style.height = 'auto';
      citemain.setAttribute('Id', 'citeselect');
      citemain.appendChild( addOption("citeWeb()", "وب") );
      citemain.appendChild( addOption("citeNews()", "خبر") );
      citemain.appendChild( addOption("citeBook()", "کتاب") );
      citemain.appendChild( addOption("citeJournal()", "ژورنال") );
      citemain.appendChild( addOption("citeNamedRef()", "پانویس‌های نام‌دار") );
      citemain.appendChild( addOption("dispErrors()", "بررسی خطا") );
      citemain.appendChild( addOption("showMore()", "بیشتر") );
      citemain.appendChild( addOption("hideInitial()", "لغو") );

      var citemore = document.createElement('div');
      citemore.style.display = 'none';
      citemore.setAttribute('Id', 'citemore');
      citemore.appendChild( addOption("citeEncyclopedia()", "دانشنامه") );
      citemore.appendChild( addOption("citePressRelease()", "اعلامیه مطبوعاتی") );
      citemore.appendChild( addOption("citeMap()", "نقشه") );
      citemore.appendChild( addOption("showRefSectionOptions()", "بخش پانویس") );
      citemain.appendChild(citemore);

      $( citemain ).insertAfter( $( toolbar ) );
    }
    else {
      toolbar.appendChild(button);
      var citeselect = document.createElement('div');
      citeselect.id = 'citeselect';
      citeselect.style.display = "none";
      citeselect.innerHTML = '<input type="button" value="وب" onclick="citeWeb()" />'+
      '<input type="button" value="خبر" onclick="citeNews()" />'+
      '<input type="button" value="کتاب" onclick="citeBook()" />'+
      '<input type="button" value="ژورنال" onclick="citeJournal()" />'+
      '<input type="button" value="پانویس‌های نام‌دار" onclick="citeNamedRef()" />'+
      '<input type="button" value="بررسی خطا" onclick="dispErrors()" />'+
      '<input type="button" value="بیشتر" onclick="showMore()" />'+
      '<input type="button" value="لغو" onclick="hideInitial()" />'+
      '<div id="citemore" style="display:none">\
      <input type="button" value="دانشنامه" onclick="citeEncyclopedia()" />\
      <input type="button" value="اعلامیه مطبوعاتی" onclick="citePressRelease()" />\
      <input type="button" value="نقشه" onclick="citeMap()" />\
      <input type="button" value="بخش پانویس" onclick="showRefSectionOptions()" />\
      </div>';
      document.getElementById('editform').insertBefore(citeselect, document.getElementById('editform').firstChild ) ;
    }
    var reftoolformarea = document.createElement( 'span' );
    reftoolformarea.id = 'refToolFormArea';
    document.getElementById('citeselect').appendChild( reftoolformarea );
  }
  if (typeof EditTools == "object") {
    var placeholder = document.getElementById("editpage-specialchars");
    EditTools.createEditTools (placeholder);
  }
}

function addOption(script, text) {
  var option = document.createElement('input');
  option.setAttribute('type', 'button');
  option.setAttribute('onclick', script);
  option.setAttribute("value", text);
  return option;
}

function hideInitial() {
  document.getElementById('citeselect').style.display = 'none';
  oldFormHide();
}

function oldFormHide() {
  //if (numforms != 0) {
  //  document.getElementById('citediv'+numforms).style.display = 'none';
  //}
  document.getElementById('refToolFormArea').innerHTML = '';
  if (document.getElementById('errorform') !== null) {
    document.getElementById('citeselect').removeChild(document.getElementById('errorform'));
  }
}

function easyCiteMain() {
  document.getElementById('citeselect').style.display = '';
  document.getElementById('citemore').style.display = 'none';
}

function showMore() {
	document.getElementById('citemore').style.display = '';
}

var months = ['ژانویه', 'فوریه', 'مارس', 'آوریل', 'مه', 'ژوئن',
  'ژوئیه', 'اوت', 'سپتامبر', 'اکتبر', 'نوامبر', 'دسامبر'];
var citeGlobalDateFormat = "<date> <monthname> <year>";
function getTime() {
  var datestr = '';
  if (citeUserDateFormat) {
    datestr = citeUserDateFormat;
  } else {
    datestr = citeGlobalDateFormat;
  }
  var DT = new Date();
  var zmonth = '';
  var month = DT.getUTCMonth()+1;
  if (month < 10) {
    zmonth = "0"+month.toString();
  } else {
    zmonth = month.toString();
  }
  month = month.toString();
  var zdate = '';
  var date = DT.getUTCDate();
  if (date < 10) {
    zdate = "0"+date.toString();
  } else {
    zdate = date.toString();
  }
  date = date.toString();
  datestr = datestr.replace('<date>', date);
  datestr = datestr.replace('<month>', month);
  datestr = datestr.replace('<zdate>', zdate);
  datestr = datestr.replace('<zmonth>', zmonth);
  datestr = datestr.replace('<monthname>', months[DT.getUTCMonth()]);
  datestr = datestr.replace('<year>', DT.getUTCFullYear().toString());
  return (datestr);
}

function lastNameToRefname() {
  //Note: This only works if field 'refname' comes after field 'last', but it always does
  var lastName;
  var fields = document.getElementById('citediv'+numforms).getElementsByTagName('input');
  for (var i=0; i<fields.length; i++) {
    if(fields[i].id == 'last') {
      lastName = fields[i].value;
    }
    else if(fields[i].id == 'refname') {
      fields[i].value = lastName.replace(/^\s*(.*?)\s*$/, "$1");
      return;
    }
  }
}

function setAccessDateToday() {
  document.getElementById('accessdate').value = getTime();
/*  var fields = document.getElementById('citediv'+numforms).getElementsByTagName('input');
  for (var i=0; i<fields.length; i++) {
    if(fields[i].id == 'accessdate') {
      fields[i].value = getTime();
      return;
    }
  }
*/
}

function getLastName(authornum) {
  if (/\S/.test(document.getElementById('last'+authornum).value)) {
    return document.getElementById('last'+authornum).value;
  }
  else {
    var author = document.getElementById('author'+authornum).value;
    var match = /(\S+)\s*$/.exec(author);
    if (match) {
      return match[1];
    }
    else {
      return '';
    }
  }
}

function makeRefname() {
  var refname;
  if (document.getElementById('last1')) {
    refname = document.getElementById('last1').value + document.getElementById('last2').value;
  }
  else{
	refname = document.getElementById('last').value;
  }
  if (/\S/.test(refname)) {
    var date = document.getElementById('date').value;
    var match = /[0-9]{4}/.exec(date);
    if (match) {
      refname += match[0];
    }
  }
  else {
    refname = document.getElementById('title').value;
  }
  document.getElementById('refname').value = refname;
}

function citeWeb() {
  citeNewsWeb("یادکرد وب");
}
function citeNews() {
  citeNewsWeb("یادکرد خبر");
}

function citeNewsWeb(templatename) {
  oldFormHide();
  var template = templatename;
  var legend;
  if (template == "یادکرد وب") {
    legend = "منبع یادکرد وب";
  } else {
    legend = "منبع یادکرد خبر";
  }
  var newtime = getTime();
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>'+legend+'</legend>'+
    '<table cellspacing="5">'+
    '<input type="hidden" value="'+template+'" id="template">'+
    '<tr><td width="120"><label for="url">&nbsp;نشانی وب: </label></td>'+
      '<td width="400"><input type="image" src="//upload.wikimedia.org/wikipedia/commons/6/62/Arrow_out_condensed.png" tabindex=1 alt="واکشی" title="' + ((template == 'یادکرد خبر') ? 'برای نشانی وب یک نوشتار نیویورک تایمز، واکشی داده‌های نوشتار و واردکردن آنها. برای دیگر نشانی‌های وب، عنوان صفحه را واکشی می‌کند.' : 'عنوان صفحه را واکشی می‌کند. بخش‌های نامرتبط اغلب باید به طور دستی پس از آن حذف شوند.') + '" onClick="pullURL(); return false;" style="float:left"><span style="display: block;overflow: hidden;"><input type="text" tabindex=1 style="width:97%" id="url"></span></td>'+
    '<td width="120"><label for="title">&nbsp;عنوان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="title"></td></tr>'+
    '<tr><td width="120"><label for="last">&nbsp;نام خانوادگی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="last"></td>'+
    '<td width="120"><label for="first">&nbsp;نام: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="first"></td></tr>'+
    '<tr><td width="120"><label for="coauthors">&nbsp;همکاران نویسنده: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="coauthors"></td>'+
    '<td width="120"><label for="date">&nbsp;تاریخ انتشار: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="date"></td></tr>'+
    '<tr><td width="120"><label for="work">&nbsp;' + ((template == 'یادکرد خبر') ? 'روزنامه' : 'اثر') + ': </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="work"></td>'+
    '<td width="120"><label for="publisher">&nbsp;ناشر: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="publisher"></td></tr>'+
    '<tr><td width="120"><label for="pages">&nbsp;صفحه‌ها: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="pages"></td>'+
    '<td width="120"><label for="language">&nbsp;زبان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="language"></td></tr>'+
    '<tr><td width="120"><label for="accessdate">&nbsp;تاریخ بازبینی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="accessdate" value="'+ newtime +'"></td>'+
    '<td width="120"><label for="location">&nbsp;مکان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="location"></td></tr>';
  if (template == 'یادکرد وب') {
    form += '<tr><td width="120"><label for="archiveurl">&nbsp;نشانی بایگانی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="archiveurl"></td>'+
    '<td width="120"><label for="archivedate">&nbsp;تاریخ بایگانی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="archivedate"></td></tr>';
  }
  form += '<tr><td width="120"><label for="refname">&nbsp;نام پانویس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:60%" id="refname"><input type="button" value="<نام خانوادگی" onClick="lastNameToRefname()"></td></tr>'+
    '</table>'+
    ' <input type="button" value="افزودن یادکرد" onClick="addcites()">'+
	' <input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationDefault()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" />'+
    '<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label>'+
    '<span style="float:left"><a href="//fa.wikipedia.org/wiki/الگو:'+template.replace(/ /g, '_')+'" target="_blank">[توضیحات الگو]</a></span>'+
    '</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function citeBook() {
  oldFormHide();
  var template = "یادکرد کتاب";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>منبع یادکرد کتاب</legend>';

  form += '<table cellspacing="5" width="100%"> \
	<tr><td><label for="title">عنوان: </label></td> \
	<td colspan=5><input type="text" tabindex=1 style="width:100%" id="title"></td></tr>';
  for (var i=1;i<=3;i++) {
    var i_str = i == 1 ? '': ' '+i;
    form += '<tr> \
		<td width="130"><label for="last'+i+'">نام خانوادگی نویسنده'+i_str+': </label></td> \
		<td><input type="text" tabindex=1 style="width:100%" id="last'+i+'"></td> \
		<td><label for="first'+i+'">&nbsp;نام: </label></td> \
		<td><input type="text" tabindex=1 style="width:100%" id="first'+i+'"></td> \
		<td><label for="authorlink'+i+'">&nbsp;پیوند نویسنده: </label></td> \
		<td><input type="text" tabindex=1 style="width:100%" id="authorlink'+i+'"> \
		<!--<a id="authorLinkAnchor'+i+'"><img id="authorLinkButton'+i+'" src="static/progress.gif" border="0" style="visibility: hidden" /></a> \
		<a href="//fa.wikipedia.org/wiki/%s" target="_blank"><img id="authorTryLink'+i+'" src="static/external.png" border="0" style="visibility: hidden" /></a> --> \
		</td> \
		</tr>';
  }
  form += '<tr><td><label for="coauthors">همکاران نویسنده: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="coauthors"></td> \
	<td><label for="editor">&nbsp;ویراستار: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="editor"></td> \
	<td><label for="others">&nbsp;دیگران: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="others"></td></tr> \
	</table> \
	<table cellspacing="5" width="100%"> \
	<tr><td width="130"><label for="publisher">ناشر: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="publisher"></td> \
	<td><label for="location">&nbsp;مکان: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="location"></td></tr> \
	\
	<tr><td><label for="date">تاریخ یا سال انتشار: </label></td> \
	<td><input type="text" tabindex=1 style="width:140px" id="date"> \
	<input id="dmy" name="dateformat" value="dmy" type="radio" tabindex=1 onclick="reformatDates()"><label for="dmy">dmy</label> \
	<input id="mdy" name="dateformat" value="mdy" type="radio" tabindex=1 onclick="reformatDates()"><label for="mdy">md, y</label> \
	<input id="ymd" name="dateformat" value="ymd" type="radio" tabindex=1 onclick="reformatDates()"><label for="ymd">y-m-d</label> \
	</td> \
	<td><label for="edition">&nbsp;ویرایش: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="edition"></td></tr> \
	\
	<tr><td><label for="series">سری: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="series"></td> \
	<td><label for="volume">&nbsp;جلد: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="volume"></td></tr> \
	\
	<tr><td><label for="pages">شماره صفحه(ها):</label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="pages" name="pages" onFocus="this.style.backgroundColor=\'\';"></td> \
	<td><label for="chapter">&nbsp;فصل: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="chapter"></td></tr> \
	\
	<tr><td><label for="isbn">شابک: </label></td> \
	<td><input type="image" src="//upload.wikimedia.org/wikipedia/commons/6/62/Arrow_out_condensed.png" tabindex=1 alt="واکشی" title="داده‌های یادکرد را بر اساس شابک از ابزار Diberri وارد می‌کند." onClick="pullISBN(); return false;" style="float:left"><span style="display: block;overflow: hidden;"><input type="text" tabindex=1 style="width:97%" id="isbn"></span></td> \
	<td><label for="language">&nbsp;زبان: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="language"></td></tr> \
	\
	<tr><td><label for="url">نشانی وب: </label></td> \
	<td><input type="image" src="//upload.wikimedia.org/wikipedia/commons/6/62/Arrow_out_condensed.png" tabindex=1 alt="واکشی" title="داده‌های یادکرد را بر اساس یک نشانی وب کتاب‌های گوگل وارد می‌کند." onClick="pullJs(); return false;" style="float:left"><span style="display: block;overflow: hidden;"><input type="text" tabindex=1 style="width:97%" id="url"></span></td> \
	<td><label for="accessdate">&nbsp;تاریخ بازبینی:</label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="accessdate"></td></tr> \
	\
	<tr><td><label for="otherfields">فیلدهای دیگر:</label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="otherfields"></td> \
	<td><label for="refname">&nbsp;نام پانویس: </label></td> \
	<td><input type="text" tabindex=1 style="width:100%" id="refname"></td> \
	</tr> \
	</table> \
	\
	<input type="radio" tabindex=1 name="template" id="cite_book" value="cite_book" checked="1"><label for="cite_book">{{یادکرد کتاب}}</label> <sup><a href="//fa.wikipedia.org/wiki/الگو:یادکرد_کتاب" target="_blank">[توضیحات]</a></sup> \
	<input type="radio" tabindex=1 name="template" id="citation" value="citation"><label for="citation">{{یادکرد}}</label> <sup><a href="//fa.wikipedia.org/wiki/الگو:یادکرد" target="_blank">[توضیحات]</a></sup> \
	<input type="radio" tabindex=1 name="template" id="plain" value="plain"><label for="plain">ویکی‌متن ساده (آزمایشی)</label> \
	<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label> \
	<input type="checkbox" tabindex=1 name="extraparams" id="extraparams" value="extraparams"><label for="extraparams">پارامترهای اضافی</label> \
	<br /><input type="button" value="افزودن یادکرد" onClick="makeCiteBook()"> \
	<input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationBook()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" /> \
	\
 	</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function citeJournal() {
  oldFormHide();
  var template = "یادکرد ژورنال";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>منبع یادکرد ژورنال</legend>'+
    '<table cellspacing="5">'+
    '<input type="hidden" value="'+template+'" id="template">'+
    '<tr><td width="120"><label for="last">&nbsp;نام خانوادگی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="last"></td>'+
    '<td width="120"><label for="first">&nbsp;نام: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="first"></td></tr>'+
    '<tr><td width="120"><label for="coauthors">&nbsp;همکاران نویسنده: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="coauthors"></td>'+
    '<td width="120"><label for="date">&nbsp;تاریخ انتشار: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="date"></td></tr>'+
    '<tr><td width="120"><label for="title">&nbsp;عنوان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="title"></td>'+
    '<td width="120"><label for="journal">&nbsp;ژورنال: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="journal"></td></tr>'+
    '<tr><td width="120"><label for="publisher">&nbsp;ناشر: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="publisher"></td>'+
    '<td width="120"><label for="location">&nbsp;مکان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="location"></td></tr>'+
    '<tr><td width="120"><label for="volume">&nbsp;جلد: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="volume"></td>'+
    '<td width="120"><label for="issue">&nbsp;شماره: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="issue"></td></tr>'+
    '<tr><td width="120"><label for="pages">&nbsp;صفحه‌ها: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="pages"></td>'+
    '<td width="120"><label for="issn">&nbsp;شاپا: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="issn"></td></tr>'+
    '<tr><td width="120"><label for="oclc">&nbsp;مکرپ: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="oclc"></td>'+
    '<td width="120"><label for="doi">&nbsp;ندش: </label></td>'+
      '<td width="400"><input type="image" src="//upload.wikimedia.org/wikipedia/commons/6/62/Arrow_out_condensed.png" tabindex=1 alt="واکشی" title="واکشی داده‌های یادکرد برای یک ندش از crossref.org و واردکردن در فیلدهای دیگر." onClick="pullDOI(); return false;" style="float:left"><span style="display: block;overflow: hidden;"><input type="text" tabindex=1 style="width:97%" id="doi"></span></td></tr>'+
    '<tr><td width="120"><label for="pmid">&nbsp;نپاب‌مد: </label></td>'+
      '<td width="400"><input type="image" src="//upload.wikimedia.org/wikipedia/commons/6/62/Arrow_out_condensed.png" tabindex=1 alt="واکشی" title="واکشی داده‌های یادکرد برای یک نپاب‌مد" onClick="pullPMID(); return false;" style="float:left;visibility:hidden"><span style="display: block;overflow: hidden;"><input type="text" tabindex=1 style="width:97%" id="pmid"></span></td>'+
    '<td width="120"><label for="quote">&nbsp;گفتاورد: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="quote"></td></tr>'+
    '<tr><td width="120"><label for="url">&nbsp;نشانی وب: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="url"></td>'+
    '<td width="120"><label for="accessdate">&nbsp;تاریخ بازبینی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="accessdate"></td></tr>'+
    '<tr><td width="120"><label for="language">&nbsp;زبان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="language"></td>'+
    '<td width="120"><label for="refname">&nbsp;نام پانویس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:60%" id="refname"><input type="button" value="<نام خانوادگی" onClick="lastNameToRefname()"></td></tr>'+
    '</table>'+
    '<input type="button" value="افزودن یادکرد" onClick="addcites()">'+
	' <input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationDefault()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" />'+
    '<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label>'+
    '<span style="float:left"><a href="//fa.wikipedia.org/wiki/الگو:'+template.replace(/ /g, '_')+'" target="_blank">[توضیحات الگو]</a></span>'+
    '</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function citeEncyclopedia() {
  oldFormHide();
  var template = "یادکرد دانشنامه";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>منبع یادکرد دانشنامه</legend>'+
    '<table cellspacing="5">'+
    '<input type="hidden" value="'+template+'" id="template">'+
    '<tr><td width="120"><label for="last">&nbsp;نام خانوادگی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="last"></td>'+
    '<td width="120"><label for="first">&nbsp;نام: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="first"></td></tr>'+
    '<tr><td width="120"><label for="coauthors">&nbsp;همکاران نویسنده: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="coauthors"></td>'+
    '<td width="120"><label for="editors">&nbsp;ویراستاران: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="editors"></td></tr>'+
    '<tr><td width="120"><label for="title">&nbsp;عنوان نوشته: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="title"></td>'+
    '<td width="120"><label for="encyclopedia">&nbsp;دانشنامه: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="encyclopedia"></td></tr>'+
    '<tr><td width="120"><label for="publisher">&nbsp;ناشر: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="publisher"></td>'+
    '<td width="120"><label for="location">&nbsp;مکان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="location"></td></tr>'+
    '<tr><td width="120"><label for="year">&nbsp;سال: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="year"></td>'+
    '<td width="120"><label for="volume">&nbsp;جلد: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="volume"></td></tr>'+
    '<tr><td width="120"><label for="pages">&nbsp;صفحه‌ها: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="pages"></td>'+
    '<td width="120"><label for="isbn">&nbsp;شابک: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="isbn"></td></tr>'+
    '<tr><td width="120"><label for="url">&nbsp;نشانی وب: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="url"></td>'+
    '<td width="120"><label for="accessdate">&nbsp;تاریخ بازبینی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="accessdate"></td></tr>'+
    '<tr><td width="120"><label for="language">&nbsp;زبان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="language"></td>'+
    '<td width="120"><label for="refname">&nbsp;نام پانویس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="refname"></td></tr>'+
    '</table>'+
    '<input type="button" value="افزودن یادکرد" onClick="addcites()">'+
	' <input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationDefault()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" />'+
    '<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label>'+
    '<span style="float:left"><a href="//fa.wikipedia.org/wiki/الگو:'+template.replace(/ /g, '_')+'" target="_blank">[توضیحات الگو]</a></span>'+
    '</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function citePressRelease() {
  oldFormHide();
  var template = "cite press release";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>یادکرد مطلب مطبوعاتی</legend>'+
    '<table cellspacing="5">'+
    '<input type="hidden" value="'+template+'" id="template">'+
    '<tr><td width="120"><label for="title">&nbsp;عنوان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="title"></td>'+
    '<td width="120"><label for="publisher">&nbsp;ناشر: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="publisher"></td></tr>'+
    '<tr><td width="120"><label for="date">&nbsp;تاریخ: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="date"></td>'+
    '<td width="120"><label for="language">&nbsp;زبان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="language"></td></tr>'+
    '<tr><td width="120"><label for="url">&nbsp;نشانی وب: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="url"></td>'+
    '<td width="120"><label for="accessdate">&nbsp;تاریخ بازبینی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="accessdate" value="'+ getTime() +'"></td></tr>'+
    '<tr><td width="120"><label for="refname">&nbsp;نام پانویس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="refname"></td></tr>'+
    '</table>'+
    '<input type="button" value="افزودن یادکرد" onClick="addcites()">'+
	' <input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationDefault()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" />'+
    '<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label>'+
    '<span style="float:left"><a href="//fa.wikipedia.org/wiki/الگو:'+template.replace(/ /g, '_')+'" target="_blank">[توضیحات الگو]</a></span>'+
    '</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function citeMap() {
  oldFormHide();
  var template = "cite map";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>یادکرد نقشه</legend>'+
    '<table cellspacing="5">'+
    '<input type="hidden" value="'+template+'" id="template">'+
    '<tr><td width="120"><label for="publisher">&nbsp;ناشر: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="publisher"></td>'+
    '<td width="120"><label for="title">&nbsp;عنوان: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="title"></td></tr>'+
    '<tr><td width="120"><label for="url">&nbsp;نشانی وب: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="url"></td>'+
    '<td width="120"><label for="accessdate">&nbsp;تاریخ بازبینی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="accessdate"></td></tr>'+
    '<tr><td width="120"><label for="edition">&nbsp;ویرایش: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="edition"></td>'+
    '<td width="120"><label for="date">&nbsp;تاریخ یا سال: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="date"></td></tr>'+
    '<tr><td width="120"><label for="cartography">&nbsp;نقشه‌کشی: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="cartography"></td>'+
    '<td width="120"><label for="scale">&nbsp;مقیاس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="scale"></td></tr>'+
    '<tr><td width="120"><label for="series">&nbsp;سری: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="series"></td>'+
    '<td width="120"><label for="page">&nbsp;صفحه: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="page"></td></tr>'+
    '<tr><td width="120"><label for="section">&nbsp;بخش: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="section"></td>'+
    '<td width="120"><label for="inset">&nbsp;الحاق: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="inset"></td></tr>'+
    '<tr><td width="120"><label for="isbn">&nbsp;شابک: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="isbn"></td>'+
    '<td width="120"><label for="refname">&nbsp;نام پانویس: </label></td>'+
      '<td width="400"><input type="text" tabindex=1 style="width:100%" id="refname"></td></tr>'+
    '</table>'+
    '<input type="button" value="افزودن یادکرد" onClick="addcites()">'+
	' <input type="button" value="پیش‌نمایش یادکرد" onClick="previewCitationDefault()"> \
	<img id="progress" src="//upload.wikimedia.org/wikipedia/commons/5/59/RefToolbar_spinning_throbber.gif" style="visibility: hidden" />'+
    '<input type="checkbox" tabindex=1 name="verbose" id="verbose" value="verbose"><label for="verbose">فرم عمودی</label>'+
    '<span style="float:left"><a href="//fa.wikipedia.org/wiki/الگو:'+template.replace(/ /g, '_')+'" target="_blank">[توضیحات الگو]</a></span>'+
    '</fieldset><span id="previewSpan"></span></div>';
   document.getElementById('refToolFormArea').innerHTML = form;
}

function showRefSectionOptions() {
  oldFormHide();
  var template = "یادکرد دانشنامه";
  numforms++;
  var form = '<div id="citediv'+numforms+'">'+
    '<fieldset><legend>افزودن بخش پانویس</legend>\
	عنوان:<br />\
	<input id="references" name="headline" type="radio" tabindex=1 checked="checked"><label for="references">== پانویس ==</label><br /> \
	<input id="notes" name="headline" type="radio" tabindex=1><label for="notes">== یادداشت‌ها ==</label><br /> \
	گونه:<br /> \
	<input id="type-references" name="type" type="radio" tabindex=1><label for="type-references">&lt;references/&gt;</label><br /> \
	<input id="type-reflist" name="type" type="radio" tabindex=1 checked="checked"><label for="type-reflist">{{پانویس}}</label><br /> \
	<input id="type-reflist2" name="type" type="radio" tabindex=1><label for="type-reflist2">{{پانویس|۲}}</label><br /> \
	<input type="checkbox" tabindex=1 id="ldr"><label for="ldr">پانویس‌های فهرست‌تعریف‌شده</label> (<a href="//en.wikipedia.org/wiki/Wikipedia:Footnotes#List-defined_references" target="_blank">اطلاعات ۱</a>, <a href="//en.wikipedia.org/wiki/Help:Footnotes#List-defined_references" target="_blank">اطلاعات ۲</a>)<br />\
    <input type="button" value="افزودن بخش پانویس" onClick="addRefSection()">'+
 '</fieldset></div>';
   document.getElementById('citeselect').innerHTML += form;
}

function makeCiteCode() {
  cites = document.getElementById('citediv'+numforms).getElementsByTagName('input');
  var template = '';
  var citebegin = '<ref';
  var citename = '';
  var citeinner = '';
  for (var i=0; i<cites.length; i++) {
    var citeid = cites[i].id;
    var citevalue = cites[i].value;
    citevalue = citevalue.trim();    //Trim leading and trailing whitespace
    if (citeid == "verbose") {
	  if (cites[i].checked) {
	    citeinner = citeinner.replace(/\|/g, "\n|");
	  }
    }
    else if (citevalue !== '' && cites[i].type !== 'button' && cites[i].type !== 'image') {
      if (citeid === "refname") {
        citebegin += ' name="' + citevalue + '"';
      }
      else if (citeid == "template") {
        citename = '>{{' + citevalue;
        template = citevalue;
      }
      else {
        if (citeid === "pages") {
          if (citevalue.match(/^\w+$/) && template != 'یادکرد دانشنامه') {
            citeid = "صفحه";    //Use page= instead of pages= if only one page. Makes p. 5 instead of pp. 5.
          }
          else {
            citevalue = citevalue.replace(/-/g, "–");    //Replace hyphens with en dashes [[WP:ENDASH]]
          }
        }
        else if (citeid == "date" && citevalue.match(/^\d\d\d\d$/)) {
          citeid = "سال";  // Use year= instead of date= if only the year is specified
        }
        citeinner += "|" + citeid + "=" + citevalue;
      }
    }
  }
  cite = citebegin + citename + citeinner + "}}</ref>";
  return cite;
}

function addcites(template) {
  var cite = makeCiteCode();
  $("#wpTextbox1").focus();
  insertTags(cite, '', '');
  //document.getElementById('citediv'+numforms).style.display = 'none';
  oldFormHide();
}

function addRefSection() {
	var wikicode = "\n";
	if (document.getElementById('references').checked) {
		wikicode += "== پانویس ==\n";
	}
	else if (document.getElementById('notes').checked) {
		wikicode += "== یادداشت‌ها ==\n";
	}
	else {alert('عنوانی انتخاب نشده‌است!');}
	
	if (document.getElementById('type-references').checked) {
		if (document.getElementById('ldr').checked) {
			wikicode += "<references>\n\n</references>\n";
		}
		else {
			wikicode += "<references/>\n";
		}
	}
	else if (document.getElementById('type-reflist').checked || document.getElementById('type-reflist2').checked) {
		var col2 = document.getElementById('type-reflist2').checked ? '|2' : '' ;
		if (document.getElementById('ldr').checked) {
			wikicode += "{{پانویس" + col2 + "|پانویس‌ها=\n\n}}\n";
		}
		else {
			wikicode += "{{پانویس" + col2 + "}}\n";
		}
	}
	else {alert('No type selected!');}
	$("#wpTextbox1").focus();
	insertTags(wikicode, '', '');
	document.getElementById('citediv'+numforms).innerHTML = '';
}

function getNamedRefs(calls) {
  if (typeof(wikEdUseWikEd) != 'undefined') {
    if (wikEdUseWikEd == true) {
      WikEdUpdateTextarea();
    }
  }
  text = document.getElementById('wpTextbox1').value;
  var regex;
  if (calls) {
    regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)) *?\/ *?>/gi //'
  } else {
    regex = /< *?ref +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)) *?>/gi //'
  }
  var namedrefs = new Array();
  var i=0;
  var nr=true;
  do {
    ref = regex.exec(text);
    if(ref != null){
      if (ref[5]) {
        namedrefs[i] = ref[5];
      } else if (ref[3]) {
        namedrefs[i] = ref[3];
      } else {
        namedrefs[i] = ref[6];
      }
      i++;
    } else {
      nr=false;
    }
  } while (nr==true);
  return namedrefs;
}

function citeNamedRef() {
  var namedrefs = getNamedRefs(false);
  if (namedrefs == '') {
    oldFormHide();
    numforms++;
    var out = '<div id="citediv'+numforms+'"><fieldset>'+
      '<legend>پانویس‌ها در متن</legend>پانویس نام‌داری (<tt dir="ltr">&lt;ref name="Name"&gt;</tt>) در متن وجود ندارد</fieldset></div>';
    document.getElementById('citeselect').innerHTML += out;
  }
  else {
    oldFormHide();
    numforms++;
    var form = '<div id="citediv'+numforms+'">'+
      '<fieldset><legend>پانویس‌ها در نوشتار</legend>'+
      '<table cellspacing="5">'+
      '<tr><td><label for="namedrefs">&nbsp;پانویس‌های نام‌دار در متن</label></td>'+
            '<td><select name="namedrefs" id="namedrefs">';
    for (var i=0;i<namedrefs.length;i++) {
      form+= '<option value="'+namedrefs[i]+'">'+namedrefs[i]+'</option>';
    }
    form+= '</select>'+
      '</td></tr></table>'+
      '<input type="button" value="افزودن یادکرد" onClick="addnamedcite()">'+
      '</fieldset></div>';
     document.getElementById('citeselect').innerHTML += form;
  }
}

function addnamedcite() {
  var name = document.getElementById('citediv'+numforms).getElementsByTagName('select')[0].value;
  var ref = '<ref name="'+name+'" />';
  $("#wpTextbox1").focus();
  insertTags(ref, '', '');
  document.getElementById('citediv'+numforms).style.display = 'none';
}

function getAllRefs() {
  if (typeof(wikEdUseWikEd) != 'undefined') {
    if (wikEdUseWikEd == true) {
      WikEdUpdateTextarea();
    }
  }
  var text = document.getElementById('wpTextbox1').value;
  var regex = /< *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)))? *?>((.|\n)*?)< *?\/? *?ref *?>/gim //"
  var allrefs = new Array();
  var i=0;
  var nr=true;
  do {
    ref = regex.exec(text);
    if(ref != null){
      if (ref[0].search(/[^\s]{150}/) != -1) {
        ref[0] = ref[0].replace(/\|([^\s])/g, "| $1");
      }
      ref[0] = ref[0].replace(/</g, "&lt;");
      ref[0] = ref[0].replace(/>/g, "&gt;");
      allrefs[i] = ref[0];
      i++;
    } else {
      nr=false;
    }
  } while (nr==true);
  return allrefs;
}

function NRcallError(namedrefs, refname) {
  for (var i=0; i<namedrefs.length; i++) {
    if (namedrefs[i] == refname) {
      return true;
    }
  }
  return false;
}

function errorCheck() {
  var allrefs = getAllRefs();
  var allrefscontent = new Array();
  var samecontentexclude = new Array();
  var sx=0;
  var templateexclude = new Array();
  var tx=0;
  var skipcheck = false;
  var namedrefcalls = getNamedRefs(true);
  for (var i=0; i<allrefs.length; i++) {
    allrefscontent[i] = allrefs[i].replace(/&lt; *?ref( +?name *?= *?(('([^']*?)')|("([^"]*?)")|([^'"\s]*?[^\/]\b)))? *?&gt;((.|\n)*?)&lt; *?\/? *?ref *?&gt;/gim, "$8");  //"
  }
  var namedrefs = getNamedRefs(false);
  var errorlist = new Array();
  var q=0;
  var unclosed = document.getElementById('unclosed').checked;
  var samecontent = document.getElementById('samecontent').checked;
  var templates = document.getElementById('templates').checked;
  var repeated = document.getElementById('repeated').checked;
  var undef = document.getElementById('undef').checked;
  for (var i=0; i<allrefs.length; i++) {
    if (allrefs[i].search(/&lt; *?\/ *?ref *?&gt;/) == -1 && unclosed) {
      errorlist[q] = '<tr><td width="75%"><tt>'+allrefs[i]+'</tt></td>';
      errorlist[q] += '<td width="25%">برچسب <tt>&lt;ref&gt;</tt> باز</td></tr>';
      q++;
    }
    if (samecontent) {
      for (var d=0; d<samecontentexclude.length; d++) {
        if (allrefscontent[i] == samecontentexclude[d]) {
          skipcheck = true;
        }
      }
      var p=0;
      while (p<allrefs.length && !skipcheck) {
        if (allrefscontent[i] == allrefscontent[p] && i != p) {
          errorlist[q] = '<tr><td width="75%"><tt>'+allrefscontent[i]+'</tt></td>';
          errorlist[q] += '<td width="25%">چندین پانویس شامل این محتوا می‌شوند، یک <a href="//en.wikipedia.org/wiki/Wikipedia:Footnotes#Naming_a_ref_tag_so_it_can_be_used_more_than_once">پانویس نام‌دار</a> باید جایش استفاده شود</td></tr>';
          q++;
          samecontentexclude[sx] = allrefscontent[i]
          sx++;
          break;
        }
        p++;
      }
     skipcheck=false;
    }
    if (templates) {
      if (allrefscontent[i].search(/\{\{cite/i) == -1 && allrefscontent[i].search(/\{\{یادکرد/i) == -1 && allrefscontent[i].search(/\{\{citation/i) == -1 && allrefscontent[i].search(/\{\{Comic (book|strip) reference/i) == -1 && allrefscontent[i].search(/\{\{Editorial cartoon reference/i) == -1 && allrefscontent[i].search(/\{\{harv/i) == -1) {
        for (var x=0; x<templateexclude.length; x++) {
          if (allrefscontent[i] == templateexclude[x]) {
            skipcheck = true;
          }
        }
        if (!skipcheck) {
          errorlist[q] = '<tr><td width="75%"><tt>'+allrefs[i]+'</tt></td>';
          errorlist[q] += '<td width="25%">از <a href="//en.wikipedia.org/wiki/Wikipedia:Citation_templates">الگوی یادکردی</a> استفاده نمی‌کند</td></tr>';
          q++;
          templateexclude[tx] = allrefscontent[i];
          tx++;
        }
        skipcheck = false;
      }
    }
  }
  if (repeated) {
    var repeatnameexclude = new Array();
    var rx=0;
    for (var k=0; k<namedrefs.length; k++) {
      for (var d=0; d<repeatnameexclude.length; d++) {
        if (namedrefs[k] == repeatnameexclude[d]) {
          skipcheck = true;
        }
      }
      var z=0;
      while (z<namedrefs.length && !skipcheck) {
        if (namedrefs[k] == namedrefs[z] && k != z) {
          errorlist[q] = '<tr><td width="75%"><tt>'+namedrefs[k]+'</tt></td>';
          errorlist[q] += '<td width="25%">چندین پانویس <a href="//en.wikipedia.org/wiki/Wikipedia:Footnotes#Naming_a_ref_tag_so_it_can_be_used_more_than_once">نام</a> یکسان دارند</td></tr>';
          q++;
          repeatnameexclude[rx] = namedrefs[z];
          rx++;
          break;
        }
        z++;
      }
     skipcheck = false;
    }
  }
  if (undef) {
    var undefexclude = new Array();
    var ux=0;
    for (var p=0; p<namedrefcalls.length; p++) {
      for (var d=0; d<undefexclude.length; d++) {
        if (allrefscontent[i] == undefexclude[d]) {
          skipcheck = true;
        }
      }
      if (!skipcheck) {
        if (!NRcallError(namedrefs, namedrefcalls[p])) {
          errorlist[q] = '<tr><td width="75%"><tt>'+namedrefcalls[p]+'</tt></td>';
          errorlist[q] += '<td width="25%">یک <a href="//en.wikipedia.org/wiki/Wikipedia:Footnotes#Naming_a_ref_tag_so_it_can_be_used_more_than_once">پانویس نام‌دار</a> استفاده شده اما تعریف نشده‌است</td></tr>';
          q++;
          undefexclude[ux] = namedrefs[p];
          ux++;
        }
      }
      skipcheck = false;
    }
 }
  if (q > 0) {
    return errorlist;
  } else {
    return 0;
  }
}

function dispErrors() {
  oldFormHide();
  var form = '<div id="errorform"><fieldset>'+
    '<legend>بررسی خطا</legend>'+
    '<b>Check for:</b><br/>'+
    '<input type="checkbox" id="unclosed" /> برچسب‌های <tt>&lt;ref&gt;</tt> باز<br/>'+
    '<input type="checkbox" id="samecontent" /> پانویس‌ها با محتوای یکسان<br/>'+
    '<input type="checkbox" id="templates" /> پانویس‌هایی که از <a href="//en.wikipedia.org/wiki/Wikipedia:Citation_templates">الگوی یادکردی</a> استفاده نمی‌کنند<br/>'+
    '<input type="checkbox" id="repeated" /> چندین پانویس با نام یکسان<br/>'+
    '<input type="checkbox" id="undef" /> استفاده از پانویس‌های نام‌دار تعریف‌نشده<br/>'+
    '<input type="button" id="errorchecksubmit" value="بررسی برای وجود خطاهای انتخاب‌شده" onclick="doErrorCheck()"/>'+
    '</fieldset></div>';
  document.getElementById('citeselect').innerHTML += form;
}

function doErrorCheck() {
  var errors = errorCheck();
  document.getElementById('citeselect').removeChild(document.getElementById('errorform'));
  if (errors == 0) {
    if (numforms != 0) {
      document.getElementById('citediv'+numforms).style.display = 'none';
    }
    numforms++;
    out = '<div id="citediv'+numforms+'"><fieldset>'+
      '<legend>Error checking</legend>خطایی یافت نشد.</fieldset></div>';
    document.getElementById('citeselect').innerHTML += out;
  }
  else {
    if (numforms != 0) {
      document.getElementById('citediv'+numforms).style.display = 'none';
    }
    numforms++;
    form = '<div id="citediv'+numforms+'">'+
      '<fieldset><legend>بررسی خطا</legend>'+
      '<table border="1px">';
    for (var i=0; i<errors.length; i++) {
      form+=errors[i];
    }
    form+= '</table>'+
      '</fieldset></div>';
     document.getElementById('citeselect').innerHTML += form;
  }
}

function makeBookCitationCode(callback) {
  var cite = '<ref';
  var refname = document.getElementById('refname').value;
  if (/\S/.test(refname)) {
    cite += ' name="' + refname + '"';
  }
  cite += '>{{';
  
  if (document.getElementById('cite_book').checked || document.getElementById('plain').checked) {
    cite += 'یادکرد کتاب';
  }
  else if (document.getElementById('citation').checked) {
    cite += 'یادکرد';
  }
  else {alert('الگویی انتخاب نشده‌است.');}
  
  var authorcite = '';
  var prevauthor = 0;
  for (var i=3;i>=1;i--) {
    //var author = document.getElementById('author' + i).value;
    var last = document.getElementById('last' + i).value;
    var first = document.getElementById('first' + i).value;
    var authorlink = document.getElementById('authorlink' + i).value;
    if (i==1 && !prevauthor) { i = ''; }
    if (/\S/.test(authorlink)) {
      authorcite = '|پیوند نویسنده' + i + '=' + authorlink + authorcite;
    }
    if (/\S/.test(last)) {
      authorcite = '|نام خانوادگی' + i + '=' + last + '|نام' + i + '=' + first + authorcite;
      prevauthor = 1;
    }
    /*else if (/\S/.test(author)) {
      authorcite = '|author' + i + '=' + author + authorcite;
      prevauthor = 1;
    }*/
  }
  cite += authorcite;

  var simplefields = ["کوشش", "ویراستار", "دیگران", "عنوان", "نشانی وب", "تاریخ بازبینی","ویرایش","سری","جلد","تاریخ","ناشر","مکان","زبان","شابک","صفحات","فصل"];
  for (var i=0;i<simplefields.length;i++) {
    var fieldname = simplefields[i];
    var value = document.getElementById(fieldname).value;
    if (/\S/.test(value) || fieldname == "عنوان") {
      if (fieldname == "صفحات") {
        if (/^\w+$/.test(value)) {
          fieldname = "صفحه";    //Use page= instead of pages= if only one page. Makes p. 5 instead of pp. 5.
        }
        else {
          value = value.replace(/-/g, "–");      //Replace hyphens with en dashes [[WP:ENDASH]]
          value = value.replace(/,\s*\s?/g, "، ");  //One space after each comma
        }
      }
      else if (fieldname == "تاریخ" && /^\d\d\d\d$/.test(value)) {
        fieldname = "سال";  // Use year= instead of date= if only the year is specified
      }
      cite += '|' + fieldname + '=' + value;
    }
  }
 

  var otherfields = document.getElementById('otherfields').value;
  if (/\S/.test(otherfields)) {
    cite += '|' + otherfields;
  }
  
  if (document.getElementById('extraparams').checked) {
    cite += '|authormask=';
    if (!document.getElementById('citation').checked) {
      cite += '|ترجمه عنوان=';
    }
    cite += '|قالب=';
    cite += '|origyear=';
    cite += '|oclc=';
    cite += '|doi=';
    cite += '|bibcode=';
    cite += '|id=';
    if (/\S/.test(document.getElementById('chapter').value)) {
      if (!document.getElementById('citation').checked) {
        cite += '|ترجمه فصل=';
      } 
      cite += '|نشانی فصل=';
    }
    cite += '|گفتاورد=';
    cite += '|laysummary=';
    cite += '|laydate=';
  }

  cite += "}}</ref>";
  
  
  if (document.getElementById('plain').checked) {
    var match = /^(.*?)({{.*}})(.*?)$/.exec(cite);
    if (match) {
      var citebeg = match[1];
      var citemid = match[2];
      var citeend = match[3];
      citemid = citemid.replace(/یادکرد کتاب/, "Vancite book");
      //alert(citebeg + ':::' + citemid + ':::' + citeend);
      //document.getElementById('fullcite').value = 'Updating...';
      var url = 'api.php?action=expandtemplates&format=xml&text=' + encodeURIComponent(citemid);
      document.getElementById('progress').style.visibility = "visible";
      var xmlhttpExpand = sajax_init_object(); // new XMLHttpRequest();
      xmlhttpExpand.onreadystatechange=function() {
		if(xmlhttpExpand.readyState==4) {	  
			if(xmlhttpExpand.status==200) {
				document.getElementById('progress').style.visibility = "hidden";
				var xmlDoc=xmlhttpExpand.responseXML.documentElement;
				var expanded = xmlDoc.getElementsByTagName("expandtemplates")[0].textContent;
				if (expanded == undefined) {
					expanded = xmlDoc.getElementsByTagName("expandtemplates")[0].childNodes[0].nodeValue;
				}
				expanded = expanded.replace(/<span.*?>/ig, '');
				expanded = expanded.replace(/<\/span>/ig, '');
				expanded = expanded.replace(/<nowiki\/?>/ig, '');
				expanded = expanded.replace(/\&\#32\;/ig, ' ');
				expanded = expanded.replace(/\&\#59\;/ig, ';');
				expanded = expanded.replace(/\&\#91\;/ig, '[');
				expanded = expanded.replace(/\&\#93\;/ig, ']');
				
				plaincite = citebeg + expanded + citeend;
				//alert(plaincite);
				callback(plaincite);
			}
			else
				alert('پرس‌و‌جو خطایی برگرداند.');
		}
      }
      xmlhttpExpand.open("GET",url,true);
      xmlhttpExpand.send(null);
    }
    else {alert('خطای ای۱');}
  }
  else {
    if (document.getElementById('verbose').checked) {
      cite = cite.replace(/\|/g, "\n|");
    }
    callback(cite);
  }
}

function makeCiteBook() {
  makeBookCitationCode(function(cite) { 
    $("#wpTextbox1").focus();
    insertTags(cite, '', ''); 
    if (!refToolDebug) { oldFormHide(); }
  });
}

function formatDate(datein, dateformat) {
  if (dateformat == '') {return (datein);}
  datein = datein.replace(/^\s*(.*?)\s*$/, "$1");  //Trim whitespace
  var year = -1;
  var month = -1;
  var date = -1;
  var match = /^(\d\d\d\d)-(\d\d?)(-(\d\d?))?$/.exec(datein);
  if(match) {
    //alert(' match[1]=' + match[1] + ' match[2]=#' + match[2] + '# match[3]=' + match[3] + ' match[4]=' + match[4]  );
    year = parseInt(match[1], 10);	//10 forces decimal conversion
    month = parseInt(match[2], 10);
    if (match[4]) {
      date = parseInt(match[4], 10);
    }
  }
  else if (/^\d\d? \w+ \d\d\d\d$/.test(datein) || /^\w+ \d\d?, \d\d\d\d$/.test(datein)) {
    var DT = new Date(datein);
    year = DT.getUTCFullYear();
    month = DT.getUTCMonth()+1;
    date = DT.getUTCDate()+1;
  }
  else if (datein == 'today') {
    var DT = new Date();
    year = DT.getUTCFullYear();
    month = DT.getUTCMonth()+1;
    date = DT.getUTCDate();
  }
  else {return (datein);}
  //alert('datein=' + datein + ', y=' + year + ', m=' + month + ', d=' + date);

  var zmonth = '';
  if (month < 10) {
    zmonth = "0"+month.toString();
  } else {
    zmonth = month.toString();
  }
  month = month.toString();
  var zdate = '';
  if (date > -1) {
    if (date < 10) {
      zdate = "0"+date.toString();
    } else {
      zdate = date.toString();
    }
    date = date.toString()
  }
  else { date = ''; }
  
  var datestr = dateformat;
  datestr = datestr.replace('<date>', date);
  datestr = datestr.replace('<month>', month);
  datestr = datestr.replace('<zdate>', zdate);
  datestr = datestr.replace('<zmonth>', zmonth);
  datestr = datestr.replace('<monthname>', months[month-1]);
  datestr = datestr.replace('<year>', year.toString());
  datestr = datestr.replace(/\s+/, ' ').replace(/^\s+/, '').replace(/(\D)(?:,|،)/, '$1').replace(/-$/, '');
  return (datestr);
}


function getDateFormat() {
	var dateformat = '';
	if (document.getElementById('dmy')){
		if (document.getElementById('dmy').checked) {dateformat = '<date> <monthname> <year>'}
		else if (document.getElementById('mdy').checked) {dateformat = '<monthname> <date>، <year>'}
		else if (document.getElementById('ymd').checked) {dateformat = '<year>-<zmonth>-<zdate>'}
	}
	else if (citeUserDateFormat) {
		dateformat = citeUserDateFormat;
	} else {
		dateformat = citeGlobalDateFormat;
	}
	return (dateformat);
}

function reformatDates() {
  var dateformat = getDateFormat();
  //alert(':' + dateformat + ':');
  document.getElementById('accessdate').value = formatDate(document.getElementById('accessdate').value, dateformat);
  document.getElementById('date').value = formatDate(document.getElementById('date').value, dateformat);
  //document.getElementById('dateformat_hidden').value = getDateFormatShort();
}

/*function updateGetButton() {
	document.getElementById('urlget').disabled = document.getElementById('url').value == '';
}*/

function preview(wikitext) {
    document.getElementById('progress').style.visibility = "visible";
    wikitext += '<references />';
    var url = "api.php?action=parse&format=xml&prop=text&text=" + encodeURIComponent(wikitext);
    var xmlhttp = sajax_init_object(); // new XMLHttpRequest();
	xmlhttp.onreadystatechange = function () {
		if (xmlhttp.readyState==4) {
			if(xmlhttp.status==200) {
				document.getElementById('progress').style.visibility = "hidden";
				var xmlDoc=xmlhttp.responseXML.documentElement;
				var previewHTML = xmlDoc.getElementsByTagName("text")[0].textContent;
				if (previewHTML == undefined) {
					previewHTML = xmlDoc.getElementsByTagName("text")[0].childNodes[0].nodeValue;
				}
				//alert(previewHTML);
				previewHTML = previewHTML.replace(/href="\//gi, 'href="//fa.wikipedia.org/');
				document.getElementById('previewSpan').innerHTML = '<fieldset><legend>پیش‌نمایش یادکرد</legend>' + previewHTML + '</fieldset>';
			}
			else
				alert('پرس‌و‌جو خطایی برگرداند.');
		}
    };
    xmlhttp.open("GET", url, true);
    xmlhttp.send(null)
}

function previewCitationBook() {
  makeBookCitationCode(preview);
}

function previewCitationDefault() {
	var wikitext = makeCiteCode();
	preview(wikitext);
}

function pullJs() {
	var book_url = document.getElementById('url').value;
   	if (book_url) {
		document.getElementById('progress').style.visibility = "visible";
		var book_url_enc = encodeURIComponent(book_url);
		if(!refTagURL) {refTagURL = defaultRefTagURL;}
		var baseurl = refTagURL + 'googlebooksjs.py';
		var url = baseurl + '?book_url=' + book_url_enc + '&callback=setFormValues';
		/*var script = document.createElement("script");        
		script.setAttribute("src",url);
		script.setAttribute("type","text/javascript");                
		document.body.appendChild(script);*/
		JsonRequest(url);
	}else{
		alert('No URL.');
	}
}

function pullISBN() {
	var isbn = document.getElementById('isbn').value;
	isbn = isbn.replace(/[^0-9]/g,"");	//Digits only
   	if (isbn) {
		document.getElementById('progress').style.visibility = "visible";
		if(!refTagURL) {refTagURL = defaultRefTagURL;}
		var baseurl = refTagURL + 'getdiberri.py';
		var url = baseurl + '?isbn=' + isbn + '&callback=useDiberriData';
		/*var script = document.createElement("script");
		script.setAttribute("src",url);
		script.setAttribute("type","text/javascript");
		document.body.appendChild(script);*/
		JsonRequest(url);
	}else{
		alert('بدون شابک.');
	}
}

function pullDOI() {
	var doi = document.getElementById('doi').value;
   	if (doi) {
		document.getElementById('progress').style.visibility = "visible";
		if(!refTagURL) {refTagURL = defaultRefTagURL;}
		var baseurl = refTagURL + 'doifetchjs.py';
		var url = baseurl + '?doi=' + encodeURIComponent(doi) + '&callback=useDoiData';
		JsonRequest(url);
	}else{
		alert('بدون ندش.');
	}
}

function pullPMID() {
	alert('هنوز پیاده‌سازی نشده‌است...');
	/*var doi = document.getElementById('doi').value;
   	if (doi) {
		document.getElementById('progress').style.visibility = "visible";
		if(!refTagURL) {refTagURL = defaultRefTagURL;}
		var baseurl = refTagURL + 'doifetchjs.py';
		var url = baseurl + '?doi=' + encodeURIComponent(doi) + '&callback=useDoiData';
		JsonRequest(url);
	}else{
		alert('بدون ندش.');
	}*/
}

function pullURL() {
	var url = document.getElementById('url').value;
   	if (url) {
		document.getElementById('progress').style.visibility = "visible";
		if(!refTagURL) {refTagURL = defaultRefTagURL;}
		var baseurl = refTagURL + 'urlfetchjs.py';
		var url = baseurl + '?url=' + encodeURIComponent(url) + '&callback=useUrlData';
		JsonRequest(url);
	}else{
		alert('بدون نشانی وب.');
	}
}

function JsonRequest(url) {
	//mw.loader.load(url)  //Bad: does not import the same script more than once
	var script = document.createElement("script");        
	script.setAttribute("src",url);
	script.setAttribute("type","text/javascript");                
	//document.body.appendChild(script);
	document.getElementsByTagName('head')[0].appendChild(script);
}

function setFormValues(bookdata) {
	document.getElementById('progress').style.visibility = "hidden";
	//alert(bookdata);
	//alert(bookdata.page);
	if (bookdata.title.length != 0) { document.getElementById('title').value = bookdata.title; }
	if (bookdata.isbn.length != 0) { document.getElementById('isbn').value = bookdata.isbn; }
	if (bookdata.publisher.length != 0) { document.getElementById('publisher').value = bookdata.publisher; }
	if (bookdata.pages.length != 0) { 
		document.getElementById('pages').value = bookdata.pages; 
		document.getElementById('pages').style.backgroundColor = '#FFFF99';
	}
	if (bookdata.url.length != 0) { document.getElementById('url').value = bookdata.url; }
	if (bookdata.date.length != 0) { document.getElementById('date').value = bookdata.date; }

	for (var i=0;i<bookdata.authors.length && i<=2;i++) {
		authorn = i+1;
  		var author = bookdata.authors[i];
  		var match = /(.+)\s+(.+)/.exec(author);
		if (match) {
			document.getElementById('first' + authorn).value = match[1];
			document.getElementById('last' + authorn).value = match[2];
		}
		else {
			document.getElementById('last' + authorn).value = author;
		}
  	}
	document.getElementById('coauthors').value = bookdata.authors.splice(3).join(', ')
	setAccessDateToday()
	makeRefname()
}

function useDiberriData(bookdata) {
	document.getElementById('progress').style.visibility = "hidden";
	if (bookdata.title.length != 0) { document.getElementById('title').value = bookdata.title; }
	if (bookdata.isbn.length != 0) { document.getElementById('isbn').value = bookdata.isbn; }
	if (bookdata.publisher.length != 0) { document.getElementById('publisher').value = bookdata.publisher; }
	if (bookdata.location.length != 0) { document.getElementById('location').value = bookdata.location; }
	if (bookdata.year.length != 0) { document.getElementById('date').value = bookdata.year; }
	if (bookdata.authors.length != 0) {
		authors = bookdata.authors.split(';', 4);
		for (var i=0;i<authors.length && i<=2;i++) {
			authorn = i+1;
	  		nameparts = authors[i].split(',', 2);
			document.getElementById('last' + authorn).value = nameparts[0].trim();
			if (nameparts.length == 2) {
				document.getElementById('first' + authorn).value = nameparts[1].trim();
			}
		}
		if (authors[3]) { document.getElementById('coauthors').value = authors[3].trim(); }
	}
	makeRefname()	
}

function useDoiData(bookdata) {
	document.getElementById('progress').style.visibility = "hidden";
	if (bookdata.title) { document.getElementById('title').value = bookdata.title; }
	//if (bookdata.isbn.length != 0) { document.getElementById('isbn').value = bookdata.isbn; }
	//if (bookdata.publisher.length != 0) { document.getElementById('publisher').value = bookdata.publisher; }
	//if (bookdata.location.length != 0) { document.getElementById('location').value = bookdata.location; }
	if (bookdata.year) { document.getElementById('date').value = bookdata.year; }
	if (bookdata.issn) { document.getElementById('issn').value = bookdata.issn; }
	if (bookdata.journal) { document.getElementById('journal').value = bookdata.journal; }
	if (bookdata.volume) { document.getElementById('volume').value = bookdata.volume; }
	if (bookdata.issue) { document.getElementById('issue').value = bookdata.issue; }
	if (bookdata.pages) { document.getElementById('pages').value = bookdata.pages; }

	if (bookdata.authors) {
		var coauthors = [];
		for (var i=0;i<bookdata.authors.length;i++) {
			var authorn = i+1;
			var author = bookdata.authors[i];
			if (authorn == 1) {
				if (author.last) { document.getElementById('last').value = author.last.trim(); }
				if (author.first) { document.getElementById('first').value = author.first.trim(); }
			}
			else {
				var authorparts = [];
				if (author.first) { authorparts.push( author.first.trim() ); }
				if (author.last) { authorparts.push( author.last.trim() ); }
				coauthors.push(authorparts.join(' '));
			}
		}
		if (coauthors[0]) { document.getElementById('coauthors').value = coauthors.join(', '); }
	}
	makeRefname();
}

function useUrlData(data) {
	document.getElementById('progress').style.visibility = "hidden";
	if (data.title) { document.getElementById('title').value = data.title; }
	if (data.work) { document.getElementById('work').value = data.work; }
	if (data.page) { document.getElementById('pages').value = data.page; }
	if (data.date) {
		document.getElementById('date').value = formatDate(data.date, getDateFormat());
	}
	/*if (data.author) {
		var authors = data.author.replace(/ [Aa]nd /, ', ');
		var match = /(.+),\s*(.+)/.exec(authors);
		var firstauthor = '';
		if (match) {
			firstauthor = match[1];
			var coauthors = match[2];
			document.getElementById('coauthors').value = coauthors;
		}
		else {
			firstauthor = data.author;
		}
		var match = /(.+)\s+(.+)/.exec(firstauthor);
		if (match) {
			document.getElementById('first').value = match[1];
			document.getElementById('last').value = match[2];
		}
		else {
			document.getElementById('last').value = author;
		}
	}*/
	if (data.authors) {
		var coauthors = [];
		for (var i=0;i<data.authors.length;i++) {
			var authorn = i+1;
			var author = data.authors[i];
			if (authorn == 1) {
				var match = /(.+)\s+(.+)/.exec(author);
				if (match) {
					document.getElementById('first').value = match[1].trim();
					document.getElementById('last').value = match[2].trim();
				}
				else {
					document.getElementById('last').value = author.trim();
				}
			}
			else {
				coauthors.push(author);
			}
		}
		if (coauthors[0]) { document.getElementById('coauthors').value = coauthors.join(', '); }
	}
}

$( refbuttons );