MediaWiki:Upload.js
Вы находитесь на сайте "Архив статей из ЭЕЭ и статей на еврейские темы из Википедии"
(Различия между версиями)
Ariely (Обсуждение | вклад)
(Новая страница: «function uploadPage(){ if (wgUploadAutoFill){ upForm = document.getElementById('mw-upload-form') upForm.action = 'javascript:checkUpForm("'+encodeURI(upForm.act…»)
(Новая страница: «function uploadPage(){ if (wgUploadAutoFill){ upForm = document.getElementById('mw-upload-form') upForm.action = 'javascript:checkUpForm("'+encodeURI(upForm.act…»)
Текущая версия на 21:04, 27 февраля 2010
function uploadPage(){ if (wgUploadAutoFill){ upForm = document.getElementById('mw-upload-form') upForm.action = 'javascript:checkUpForm("'+encodeURI(upForm.action)+'");void(0);' } var desc = document.getElementById('wpUploadDescription') var tmpl = document.getElementById('imageinfo') if (wgUploadAutoFill && tmpl && desc && !desc.value) desc.value = tmpl.innerHTML var span = document.getElementById('insertlink') if (!span) return var a = document.createElement('a') a.href = 'javascript:addRationaleTemplate()' a.id = 'insertlink2' appendCSS('a#insertlink2:hover { text-decoration: none; }') span.parentNode.insertBefore(a, span) a.appendChild(span) span.style.display = 'inline' } function addRationaleTemplate(){ var desc = document.getElementById('wpUploadDescription') var oldTmpl = document.getElementById('imageinfo') var tmpl = document.getElementById('rationale') if (desc && oldTmpl && desc.value == oldTmpl.innerHTML){ desc.value = tmpl.innerHTML desc.rows = 16 } else if (desc && tmpl && desc.value.indexOf(tmpl.innerHTML.substring(0,8)) == -1){ desc.value += '\n' + tmpl.innerHTML desc.rows = 16 } } function checkUpForm(upAct){ upForm = document.getElementById('mw-upload-form') upForm.action = upAct var desc = document.getElementById('wpUploadDescription') var lcns = document.getElementById('wpLicense') var wrn = document.createElement('td') wrn.innerHTML = '' if (lcns.value == '' && /^[^\{\}]*(\{\{(Изображение|Несвободный файл|Обоснование добросовестного использования|ОДИ)[^\{\}]+\}\}[^\{\}]*)*$/i.exec(desc.value)) wrn.innerHTML += '<li>Не указана лицензия. Выберите лицензию в выпадающем списке выше.</li>' if (lcns.value != '' && /\{\{fair ?use ?in *(\|[^\{\}]*)? *\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>Лицензия указана и в описании, и в выпадающем списке. Возможно, вы где-то ошиблись.</li>' if (/\{\{fair ?use ?in *\|? *\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>В шаблоне {'+'{fairusein}} не указано название статьи.</li>' if (/\{\{fair ?use ?in *\| *название статьи *\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>В шаблоне {'+'{fairusein}} текст «название статьи» не изменён на реальное название.</li>' if (lcns.value == '' && /\{\{Изображение\s*((\|\s*)+[\s\wа-яё]+=\s*)*(\|\s*)*\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>Не заполнен шаблон {'+'{Изображение}}.</li>' if (lcns.value == '' && /\{\{(Обоснование добросовестного использования|ОДИ)\s*((\|\s*)+([\wа-яё]+\s*)+=\s*)*(\|\s*)*\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>Не заполнен шаблон {'+'{Обоснование добросовестного использования}}.</li>' if (lcns.value == '' && /\{\{Несвободный файл\s*((\|\s*)+([\wа-яё]+\s*)+=\s*)*(\|\s*)*\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>Не заполнен шаблон {'+'{Несвободный файл}}.</li>' if (lcns.value == '' && /\{\{Несвободный файл\/ОДИ\s*((\|\s*)+([\wа-яё]+\s*)+=\s*)*(\|\s*)*\}\}/i.exec(desc.value)) wrn.innerHTML += '<li>Не заполнен шаблон {'+'{Несвободный файл/ОДИ}}.</li>' if (/\{\{(Обоснование добросовестного использования|Несвободный файл|ОДИ|Изображение)[^\{\}]*Источник\s*=\s*(из|с|http:\/\/(www\.)?)?\s*(интернет|internet|гугл|google|яндекс|yandex|яху|yahoo|рамблер|rambler)[^\{\}]*\}\}/i.test(desc.value)) wrn.innerHTML += '<li>«Интернет» или поисковая система не являются источником, подтверждающим лицензионный статус изображения. Укажите более конкретный источник.</li>' if (wrn.innerHTML != ''){ var wrnPrnt = document.createElement('tr') wrnPrnt.appendChild(document.createElement('td')) wrnPrnt.appendChild(wrn) wrn.style.border = '1px solid red' wrn.style.background = '#ffe4e1' wrn.innerHTML = '<p style="text-align:center; font-weight:bold;">Автоматическая проверка выявила следующие ошибки:</p><ul style="font-weight:bold">' + wrn.innerHTML wrn.innerHTML += '</ul><p style="padding:0.2em 0.8em">При повторном нажатии на кнопку «Загрузить файл» данное предупреждение будет проигнорировано. Помните, что файлы без лицензии или с некорректной лицензией будут удалены.</p>' var upNode = document.getElementsByName('wpUpload')[0].parentNode.parentNode upNode.parentNode.insertBefore(wrnPrnt, upNode) } else upForm.submit() } addOnloadHook(uploadPage)