מדיה ויקי:Gadget-TemplatesExternalLinks.js: הבדלים בין גרסאות בדף
לבקשת קיפודנחש |
מ 166 גרסאות של הדף wikipedia:he:מדיה_ויקי:Gadget-TemplatesExternalLinks.js יובאו |
||
| (49 גרסאות ביניים של 10 משתמשים אינן מוצגות) | |||
| שורה 1: | שורה 1: | ||
//Adds wizard for using templates for external links | //Adds wizard for using templates for external links | ||
//Written by [[User:קיפודנחש]] | //Written by [[User:קיפודנחש]] | ||
if ($.inArray(wgAction, ['edit', 'submit']) + 1) $( | if (($.inArray( mw.config.get( 'wgAction' ), ['edit', 'submit']) + 1) && ( !$('#wpTextbox1').prop( 'readonly' ) )) | ||
mw.loader.using('jquery.textSelection', function() { | |||
function templates(templateName) { | |||
var constants = ["", | var constants = ["", | ||
"שם המחבר", | "שם המחבר", | ||
"כותרת | "כותרת המאמר", | ||
"מספר (כפי שמופיע בקישור)", | "מספר (כפי שמופיע בקישור)", | ||
"מידע נוסף | "מידע נוסף, למשל תאריך. נסו לשמור על הפורמט '30 באוגוסט 1958'", | ||
"מספר הסדרה", | "מספר הסדרה", | ||
"נתיב הדף - כמו שמופיע בקישור", | "נתיב הדף - כמו שמופיע בקישור", | ||
| שורה 30: | שורה 27: | ||
'מספר סדרת "ART"', | 'מספר סדרת "ART"', | ||
"", | "", | ||
"תאריך כתבה ( | "תאריך כתבה (בפורמט 1949/07/25, כפי שמופיע בקישור)", | ||
"סוג הפרסום, כפי שמופיע בקישור אחרי '=EntityId'. בדרך כלל 'Ar' לכתבה רגילה, 'Pc' לתמונה ו־'Ad' לפרסומת", | "סוג הפרסום, כפי שמופיע בקישור אחרי '=EntityId'. בדרך כלל 'Ar' לכתבה רגילה, 'Pc' לתמונה ו־'Ad' לפרסומת", | ||
"שם הספר", | "שם הספר", | ||
| שורה 57: | שורה 54: | ||
"שם השיעור", | "שם השיעור", | ||
"השיעור כשם שמופיע בקישור", | "השיעור כשם שמופיע בקישור", | ||
"מספר גיליון, תאריך פרסום ומספרי עמודים | "מספר גיליון, תאריך פרסום ומספרי עמודים", | ||
"שם הערך בויקישיבה", | "שם הערך בויקישיבה", | ||
"קידומת הקישור, אם שונה מ-www" | "קידומת הקישור, אם שונה מ-www", | ||
"האותיות שמציינות את המדינה" | |||
]; | ]; | ||
| שורה 67: | שורה 65: | ||
['כותרת', 'שם המאמר המקושר'], | ['כותרת', 'שם המאמר המקושר'], | ||
['כתובת', 'הקישור (כלומר ה-URL) עצמו'], | ['כתובת', 'הקישור (כלומר ה-URL) עצמו'], | ||
['תאריך', 'תאריך המאמר', 1], | ['תאריך', 'תאריך המאמר, בפורמט "30 באוגוסט 1958"', 1], | ||
['עמודים', 'מספר העמודים', 1], | ['עמודים', 'מספר העמודים', 1], | ||
['מידע נוסף', 'מידע נוסף (לא תאריך)', 1], | ['מידע נוסף', 'מידע נוסף (לא תאריך)', 1], | ||
['שפה', 'שפה (אם המאמר לא בעברית)', 1], | ['שפה', 'שפה (אם המאמר לא בעברית)', 1], | ||
['ציטוט', 'ציטוט משפט מהדף המקושר (יכול לעזור במציאת הדף בעתיד, אם הקישור ישתנה)', 1] | ['ציטוט', 'ציטוט משפט מהדף המקושר (יכול לעזור במציאת הדף בעתיד, אם הקישור ישתנה)', 1] | ||
]}, | ]}, | ||
{t: 'הארץ', p: [1,2,3,4], r: /( | {t: 'הארץ', p: [1,2,3,4], r: /([.\d]+)$/i, rp: [3], bm: 1, op: [0,3]}, | ||
{t: 'דבר'}, | {t: 'דבר'}, | ||
{t: 'מעריב'}, | {t: 'מעריב'}, | ||
| שורה 82: | שורה 79: | ||
{t: 'חבצלת'}, | {t: 'חבצלת'}, | ||
{t: 'המליץ'}, | {t: 'המליץ'}, | ||
{t: 'על המשמר'}, | |||
{t: 'היינט'}, | |||
{t: 'PalPost'}, | {t: 'PalPost'}, | ||
{t: 'חרות'}, | |||
{t: 'תנ"ך', p: [8,9,10], op:[2]}, | {t: 'תנ"ך', p: [8,9,10], op:[2]}, | ||
{t: 'nrg', p: [1,2,3,4,0,19,20], r: /\/online\/([^\/]+)\/ART([^\/]*)\/([^\.]+).html/i, rp: [6,7,3], bm: 1, op:[3,4,5,6]}, | {t: 'nrg', p: [1,2,3,4,0,19,20], r: /\/online\/([^\/]+)\/ART([^\/]*)\/([^\.]+).html/i, rp: [6,7,3], bm: 1, op:[3,4,5,6], nopop: 1}, | ||
{t: 'Mooma2', p: [42,3], r: /\?ArtistId=(\d+)/i, rp: [2]}, | {t: 'Mooma2', p: [42,3], r: /\?ArtistId=(\d+)/i, rp: [2]}, | ||
{t: 'בחדרי חרדים', p: [1,2,3,4], r: /\/Article\.aspx\?id=(\d+)/i, rp: [3], bm: 1, op: [3]}, | {t: 'בחדרי חרדים', p: [1,2,3,4], r: /\/Article\.aspx\?id=(\d+)/i, rp: [3], bm: 1, op: [3]}, | ||
{t: 'CIA factbook', p: [ | {t: 'CIA factbook', p: [52]}, | ||
{t: 'mynet', p: [1,2,3,4,0,5], r: /articles\/(\d+),7340,L-(\d+),00\.html/i, rp: [6,3], op: [3,4,5,6]}, | {t: 'mynet', p: [1,2,3,4,0,5], r: /articles\/(\d+),7340,L-(\d+),00\.html/i, rp: [6,3], op: [3,4,5,6]}, | ||
{t: 'NFC', p: [1,2,3,4], r: /Archive\/([^\.]+)\.html/i, rp: [3], op: [3]}, | {t: 'NFC', p: [1,2,3,4], r: /Archive\/([^\.]+)\.html/i, rp: [3], op: [3], bm: 1}, | ||
{t: 'Onlife', p: [1,2,3,4], r: /onlife\.co\.il\/([^\/]+)\/(.*)/i, rp: [1,3], op: [3]}, | {t: 'Onlife', p: [1,2,3,4], r: /onlife\.co\.il\/([^\/]+)\/(.*)/i, rp: [1,3], op: [3]}, | ||
{t: 'ynet', p: [1,2,3,4 | {t: 'ynet', p: [1,2,3,4], def: {6: 0, 7: 'articles'}, r: /ynet\.co\.il\/([^\/]+)\/(\d+),7340,L-(\d+),00.html/i, rp: [7,6,3], bm: 1, op: [3,4,5,6]}, | ||
{t: 'Xnet', p: [1,2,3,4 | {t: 'Xnet', p: [1,2,3,4], def: {6: 0, 7: 'articles'}, r: /([^\/]+)\/(\d+),\d+,L-(\d+),00.html/i, rp: [7,6,3], bm: 1, op: [3,4,5,6]}, | ||
{t: 'וואלה!', p: [1,2,3,4,0,26], r: /\?w=\/(\d+)\/(\d+)/i, rp: [6,3], bm: 1, op: [3,4,5]}, | {t: 'וואלה!', p: [1,2,3,4,0,26], r: /\?w=\/(\d+)\/(\d+)/i, rp: [6,3], bm: 1, op: [3,4,5]}, | ||
{t: 'גלובס', p: [1,2,3,4], r: /\/news\/article.aspx\?did=(\d+)/i, rp: [3], bm: 1, op: [3]}, | {t: 'גלובס', p: [1,2,3,4], r: /\/news\/article.aspx\?did=(\d+)/i, rp: [3], bm: 1, op: [3]}, | ||
{t: 'כלכליסט', p: [1,2,3,4 | {t: 'כלכליסט', p: [1,2,3,4], r: /\/articles\/(\d+),7340,L-(\d+),00/i, rp: [6,3], op: [3,4,5,6], bm: 1}, | ||
{t: 'נענע10', p: [1,2,3,4,0,26], r: /http:\/\/([a-z]*)\.nana10\.co\.il\/Article\/\?ArticleID=(\d+)/i, rp: [6,3], bm: 1, op: [3,4,5,6]}, | {t: 'נענע10', p: [1,2,3,4,0,26], r: /http:\/\/([a-z]*)\.nana10\.co\.il\/Article\/\?ArticleID=(\d+)/i, rp: [6,3], bm: 1, op: [3,4,5,6]}, | ||
{t: 'תדהר', p: [29,13,27], op: [2]}, | {t: 'תדהר', p: [29,13,27], op: [2]}, | ||
{t: 'אנשים ישראל', p: [1,2,3,4], r: /.*itemID=(\d+)&/i, rp: [3], op: [3]}, | {t: 'אנשים ישראל', p: [1,2,3,4], r: /.*itemID=(\d+)&/i, rp: [3], op: [3]}, | ||
| שורה 109: | שורה 108: | ||
{t: 'בבלי', p: [11,12,13], op: [2]}, | {t: 'בבלי', p: [11,12,13], op: [2]}, | ||
{t: 'משנה', p: [11,9,14], op: [2]}, | {t: 'משנה', p: [11,9,14], op: [2]}, | ||
{t: 'רמב"ם', p: [8,17,9,31], op: [ | {t: 'רמב"ם', p: [8,17,9,31], op: [0,3]}, | ||
{t: 'ירושלמי', p: [11,9,31], op: [2]}, | {t: 'ירושלמי', p: [11,9,31], op: [2]}, | ||
{t: 'שולחן ערוך', p: [33,15,16], op: [2]}, | {t: 'שולחן ערוך', p: [33,15,16], op: [2]}, | ||
| שורה 116: | שורה 115: | ||
{t: 'ישראל היום', p: [1,2,3,4], r: /newsletter_article\.php\?id=(\d+)/i, rp: [3], bm: 1, op: [3]}, | {t: 'ישראל היום', p: [1,2,3,4], r: /newsletter_article\.php\?id=(\d+)/i, rp: [3], bm: 1, op: [3]}, | ||
{t: 'מממ', p: [1,2,3,4], r: /data\/pdf\/([^\.])\.pdf/i, rp: [3], op: [3]}, | {t: 'מממ', p: [1,2,3,4], r: /data\/pdf\/([^\.])\.pdf/i, rp: [3], op: [3]}, | ||
{t: 'נזכור', p: [35,3], r: /HalalKorot\.aspx\?id=(\d+)/i, rp: [2]}, | {t: 'נזכור', p: [35,3], r: /HalalKorot\.aspx\?id=(\d+)/i, rp: [2]}, | ||
{t: 'סגולה', p: [1,2,3,4], r: /view-article\.asp\?article=(\d+)/i, rp: [3], op: [3]}, | {t: 'סגולה', p: [1,2,3,4], r: /view-article\.asp\?article=(\d+)/i, rp: [3], op: [3]}, | ||
| שורה 135: | שורה 132: | ||
{t: 'ויקישיבה', p: [50]}, | {t: 'ויקישיבה', p: [50]}, | ||
{t: 'HebrewBooks', p: [1,8,3,4], r: /hebrewbooks\.org\/(\d+)/i, rp: [3], op: [3]}, | {t: 'HebrewBooks', p: [1,8,3,4], r: /hebrewbooks\.org\/(\d+)/i, rp: [3], op: [3]}, | ||
{t: 'גדולי ישראל', p: [29,40,41,13]}, | {t: 'גדולי ישראל', p: [29,40,41,13]}, | ||
{t: 'עיתונות יהודית היסטורית 2', p: [43,44,1,2,22,3,7,0,23], def: {9: "Ar"}, r: /(?:Key|BaseHref)=([A-Z]{3})\/(\d{4}\/\d{1,2}\/\d{1,2})(?:.*&EntityId=|\/\d+\/)([A-Z][a-z])(\d+)/i, rp: [2,5,9,6], replace: [[/%2F/gi,'/']], op: [6,8]}, | {t: 'עיתונות יהודית היסטורית 2', p: [43,44,1,2,22,3,7,0,23], def: {9: "Ar"}, r: /(?:Key|BaseHref)=([A-Z]{3})\/(\d{4}\/\d{1,2}\/\d{1,2})(?:.*&EntityId=|\/\d+\/)([A-Z][a-z])(\d+)/i, rp: [2,5,9,6], replace: [[/%2F/gi,'/']], op: [6,8]}, | ||
| שורה 142: | שורה 138: | ||
{t: 'One', p: [1,2,3,4], r: /(?:Article[\d\-\/,]*\/|id=)([\d\-\/,]*\d)/, rp: [3], bm: 1, op: [3]}, | {t: 'One', p: [1,2,3,4], r: /(?:Article[\d\-\/,]*\/|id=)([\d\-\/,]*\d)/, rp: [3], bm: 1, op: [3]}, | ||
{t: 'קול הלשון - שיעור', p: [46,47,48,4], np: [['וידאו', '"וידאו": רשמו "כן" אם זה שיעור לצפייה'], ['תואר', 'תואר - אם תואר המרצה שונה מ"הרב"']], r: /(?:PathFile=|Source=)([^&]*)/i, rp: [3], op: [3]}, | {t: 'קול הלשון - שיעור', p: [46,47,48,4], np: [['וידאו', '"וידאו": רשמו "כן" אם זה שיעור לצפייה'], ['תואר', 'תואר - אם תואר המרצה שונה מ"הרב"']], r: /(?:PathFile=|Source=)([^&]*)/i, rp: [3], op: [3]}, | ||
{t: 'ספר פרויקט גוטנברג', np: [["כותב", "שם כותב הספר | {t: 'ספר פרויקט גוטנברג', np: [["כותב", "שם כותב הספר", 1], ['שם הספר', 'שם הספר (ברירת מחדל: שם הערך)', 1], ['מספר', 'מספר הספר בפרויקט']], r: /ebooks\/(\d+)/i, rp: [3]}, | ||
{t: 'imdb title', np: [['id', 'המספר שמופיע בקישור'], ['title', 'הכותרת שתופיע בקישור (אופציונלי: ברירת מחדל - שם הערך', 1]], r: /title\/tt(\d+)/i, rp: [1]}, | {t: 'imdb title', np: [['id', 'המספר שמופיע בקישור'], ['title', 'הכותרת שתופיע בקישור (אופציונלי: ברירת מחדל - שם הערך', 1]], r: /title\/tt(\d+)/i, rp: [1]}, | ||
{t: 'imdb name', np: [['id', 'המספר שמופיע בקישור'], ['name', 'הכותרת שתופיע בקישור (אופציונלי: ברירת מחדל - שם הערך', 1]], r: /name\/nm(\d+)/i, rp: [1]}, | {t: 'imdb name', np: [['id', 'המספר שמופיע בקישור'], ['name', 'הכותרת שתופיע בקישור (אופציונלי: ברירת מחדל - שם הערך', 1]], r: /name\/nm(\d+)/i, rp: [1]}, | ||
{t: 'imdb company', np: [['id', 'המספר שמופיע בקישור'], ['company', 'הכותרת שתופיע בקישור']], r: /company\/co(\d+)/i, rp: [1]}, | {t: 'imdb company', np: [['id', 'המספר שמופיע בקישור'], ['company', 'הכותרת שתופיע בקישור']], r: /company\/co(\d+)/i, rp: [1]}, | ||
{t: 'Google book', np: [['מזהה','מזהה הספר באתר גוגל'],['כותב','שם כותב/י הספר | {t: 'Google book', np: [['מזהה','מזהה הספר באתר גוגל'],['כותב','שם כותב/י הספר', 1],['שם הספר','שם הספר (אופציונלי) - ללא הפרמטר יוצג שם הערך', 1]], r: /id=([^&]*)/, rp: [1]}, | ||
{t: 'TheMarker1', p: [1,2,3,4,51], r: /http:\/\/(?:www)?(.*)\.themarker\.com\/([^\?]+)/i, rp: [5,3], op: [3,4]}, | {t: 'TheMarker1', p: [1,2,3,4,51], r: /http:\/\/(?:www)?(.*)\.themarker\.com\/([^\?]+)/i, rp: [5,3], op: [3,4], bm: 1}, | ||
{t: 'מערכות', p: [1,2,3,49], r: /FILES\/(.*)\.pdf/i, rp: [3], op: [3]}, | {t: 'מערכות', p: [1,2,3,49], r: /FILES\/(.*)\.pdf/i, rp: [3], op: [3]}, | ||
{t: 'mako', p: [1,2,3,6,4], r: /www\.mako\.co\.il\/(.*?)\/Article-(.*?)\.htm/i, rp: [4,3], bm: 1, op: [4]} | {t: 'mako', p: [1,2,3,6,4], r: /www\.mako\.co\.il\/(.*?)\/Article-(.*?)\.htm/i, rp: [4,3], bm: 1, op: [4]} | ||
| שורה 169: | שורה 165: | ||
template = templatesAr[i]; | template = templatesAr[i]; | ||
var historic = {"דבר": "DAV", "מעריב": "MAR", "הצבי": "HZV", "הצפירה": "HZF", "המגיד": "MGD", "המליץ": "HMZ", "חבצלת": "HZT", "PalPost": "PLS"}; | var historic = {"דבר": "DAV", "מעריב": "MAR", "הצבי": "HZV", "הצפירה": "HZF", "המגיד": "MGD", "המליץ": "HMZ", "חבצלת": "HZT", "PalPost": "PLS", "על המשמר" : "AHR", "היינט": "HYT", "חרות": "HRT"}; | ||
if (historic[template.t]) { | if (historic[template.t]) { | ||
var r = new RegExp('=HISTNAME/(\\d{4}/\\d{1,2}/\\d{1,2})(?:.*&EntityId=|/\\d+/)([A-Z][a-z])(\\d+)'.replace('HISTNAME', historic[template.t])); | var r = new RegExp('=HISTNAME/(\\d{4}/\\d{1,2}/\\d{1,2})(?:.*&EntityId=|/\\d+/)([A-Z][a-z])(\\d+)'.replace('HISTNAME', historic[template.t])); | ||
| שורה 182: | שורה 178: | ||
} | } | ||
function templateDialog(dialog, template) { | function templateDialog(dialog, template, values) { | ||
var brainDamage = $. | var brainDamage = $.client.profile().name == 'msie' && $.client.profile().versionNumber < 8; | ||
var orderedFields = [], | var orderedFields = [], | ||
namedFields = [], | namedFields = [], | ||
| שורה 191: | שורה 187: | ||
function createWikiCode() { | function createWikiCode() { | ||
var par = ["{{" + template.t]; | var par = ["{{" + template.t]; | ||
for (var i = 0; i < orderedFields.length; i++) | for (var i = 0; i < orderedFields.length; i++) | ||
par.push($.trim(orderedFields[i].val()).replace(/\|/g, '{{!}}').replace(/=/g, '{{=}}')); | |||
if (template.def) | if (template.def) | ||
for (var parnum in template.def) | for (var parnum in template.def) | ||
if (par[parnum] == template.def[parnum]) | if (par[parnum] == template.def[parnum]) | ||
par[parnum] = ''; | par[parnum] = ''; | ||
while (par.length && !par[par.length-1].length && orderedFields[par.length-2].length) // last condition is to avoid remving "emptys" | if (! template.nopop) | ||
while (par.length && !par[par.length-1].length && orderedFields[par.length-2].length) // last condition is to avoid remving "emptys" | |||
par.pop(); | |||
var code = par.join("|"); | var code = par.join("|"); | ||
if (namedFields) { | if (namedFields) { | ||
var pairs = []; | var pairs = []; | ||
for (j in namedFields) { | for (j in namedFields) { | ||
var val = $.trim(namedFields[j][1].val()).replace( | var val = $.trim(namedFields[j][1].val()).replace(/\|/g, '{{!}}'); | ||
if (val.length) | if (val.length) | ||
pairs.push(namedFields[j][0] + '=' + val); | pairs.push(namedFields[j][0] + '=' + val); | ||
| שורה 215: | שורה 209: | ||
} | } | ||
code += "}}"; | code += "}}"; | ||
if ($('#ltw2_ref'). | if ($('#ltw2_ref').prop('checked')) | ||
return "{{הערה|" + | return "{{הערה|" + code + "}}"; | ||
if ($('#ltw2_list'). | if ($('#ltw2_list').prop('checked')) | ||
return "\n* " + code + "\n"; | return "\n* " + code + "\n"; | ||
return code; | return code; | ||
| שורה 232: | שורה 226: | ||
canOK = 'disable'; | canOK = 'disable'; | ||
$(".ui-dialog-buttonpane button:contains('אישור')").button(canOK); | $(".ui-dialog-buttonpane button:contains('אישור')").button(canOK); | ||
$('#ltw2_list').attr('disabled', $('#ltw2_ref'). | $('#ltw2_list').attr('disabled', $('#ltw2_ref').prop('checked'));//disable list if ref | ||
$('#ltw2_ref').attr('disabled', $('#ltw2_list'). | $('#ltw2_ref').attr('disabled', $('#ltw2_list').prop('checked'));//disable ref if list | ||
if (brainDamage) { //IOW: internet explorer. | if (brainDamage) { //IOW: internet explorer. | ||
var width = $('#ltw_dialog').width() - 12; | var width = $('#ltw_dialog').width() - 12; | ||
| שורה 242: | שורה 236: | ||
function addRow(labelText, paramName, optional) { | function addRow(labelText, paramName, optional) { | ||
var inputField = $('<input>', {id: 'ltw2_inputfield_' + paramName, type: 'text', width: 600}).css({width: '28em'}). | var inputField = $('<input>', {id: 'ltw2_inputfield_' + paramName, type: 'text', width: 600}).css({width: '28em'}).on('paste cut drop input change', updatePreview); | ||
if (! (optional || 0)) | if (! (optional || 0)) | ||
inputField.addClass('ltw_required').css({border: '1px red solid'}); | inputField.addClass('ltw_required').css({border: '1px red solid'}); | ||
| שורה 266: | שורה 260: | ||
updatePreview(); | updatePreview(); | ||
} | } | ||
$('.ltw_disposable').remove(); | |||
if (template.bm) | if (template.bm) | ||
dialog.append($('<p>', {title: 'ראו דף "עזרה:בוקמרקלטים"'}).css({color: 'red', fontWeight: 'bold'}) | dialog.append($('<p>', {title: 'ראו דף "עזרה:בוקמרקלטים"'}).css({color: 'red', fontWeight: 'bold'}) | ||
.text('קיים בוקמרקלט שמייצר תבנית "' | .text('קיים בוקמרקלט שמייצר תבנית "' + template.t + '" באופן אוטומטי. אנא שקלו להשתמש בו (ראו "עזרה:בוקמרקלטים").')) | ||
.append($('<hr>')); | .append($('<hr>')); | ||
if (template.r) | if (template.r) | ||
dialog.append($('<span>').text('הדביקו את הקישור כאן:').css({width: '20em'})) | dialog.append($('<span>').text('הדביקו את הקישור כאן:').css({width: '20em'})) | ||
.append($('<input>', {type: "text", id: 'ltw_urlinput', maxLength: 600}).css({width: '26em'}). | .append($('<input>', {type: "text", id: 'ltw_urlinput', maxLength: 600}).css({width: '26em'}).on('paste cut drop input change', extractParamsFromURL)) | ||
.append($('<hr>')) | .append($('<hr>')) | ||
| שורה 290: | שורה 286: | ||
for (var i = 0; i < (template.p || []).length; i++) | for (var i = 0; i < (template.p || []).length; i++) | ||
if (template.p[i].length == 0) | if (template.p[i].length == 0) // this allow defining an empty parameter. by use of a "pseudo field". | ||
orderedFields.push(empty); | orderedFields.push(empty); | ||
else | else | ||
| שורה 298: | שורה 294: | ||
addRow(template.np[i][1], template.np[i][0], template.np[i][2]); | addRow(template.np[i][1], template.np[i][0], template.np[i][2]); | ||
var valIndex = 0; | |||
while (values && values.length) { | |||
var next = values.shift(); | |||
var pair = next.split('='); | |||
if (pair.length > 1) { | |||
if (isNaN(pair[0])) { | |||
for (var named in namedFields) | |||
if (namedFields[named][0] == $.trim(pair[0])) | |||
namedFields[named][1].val(pair[1]); | |||
} else { | |||
valIndex = parseInt(pair[0], 10); | |||
if (valIndex <= orderedFields.length) | |||
orderedFields[valIndex - 1].val(pair[1]); | |||
} | |||
} else | |||
if (valIndex < orderedFields.length) | |||
orderedFields[valIndex++].val(pair[0]); | |||
} | |||
dialog.dialog('option', 'buttons', { | dialog.dialog('option', 'buttons', { | ||
' | 'ביטול': | ||
' | function() { | ||
dialog.dialog('close'); | |||
}, | |||
'אישור': | |||
function() { | |||
$("#wpTextbox1").textSelection( 'encapsulateSelection', {peri: createWikiCode(), replace: true} ); | |||
dialog.dialog('close'); | |||
} | |||
}); | }); | ||
$('.ui-dialog-buttonpane').css({backgroundColor: '#E0E0E0'}); | $('.ui-dialog-buttonpane').css({backgroundColor: '#E0E0E0'}); | ||
| שורה 309: | שורה 330: | ||
position: [(window.width - dialog.width()) / 2, (window.height - dialog.height()) / 2] | position: [(window.width - dialog.width()) / 2, (window.height - dialog.height()) / 2] | ||
}); | }); | ||
$('.ui-dialog-buttonpane'). | $('.ui-dialog-buttonpane').children().css({float: 'right'}); | ||
updatePreview(); | updatePreview(); | ||
} | } | ||
function fireDialog() { | function fireDialog() { | ||
$('#ltw_dialog').remove() | |||
var killold = $('#ltw_dialog').remove(), // kill existing popup when button is pressed again. | |||
title = 'יצירת תבנית קישור', | |||
dialog = $('<div>', {id: 'ltw_dialog'}).css({backgroundColor: '#E8E8E8', maxWidth: '58em'}).dialog({ | dialog = $('<div>', {id: 'ltw_dialog'}).css({backgroundColor: '#E8E8E8', maxWidth: '58em'}).dialog({ | ||
title: title, | title: title, | ||
| שורה 322: | שורה 343: | ||
close: function() {$(this).remove();} | close: function() {$(this).remove();} | ||
}), | }), | ||
fullList = templates(false), | |||
allTemplates = []; | |||
function fromTemplate(text) { | |||
templateDialog(dialog, templates( | var regex = new RegExp('\\{\\{(' + allTemplates.join('|') + ')([^}]*)'); | ||
}); | match = text.match(regex); | ||
if (match) { | |||
template = match[1]; | |||
values = match[2].split('|'); | |||
values.shift(); | |||
templateDialog(dialog, templates(template), values); | |||
return true; | |||
} | |||
return false; | |||
} | |||
for (var i in fullList) | |||
allTemplates.push(fullList[i].t); | |||
if (fromTemplate($("#wpTextbox1").textSelection('getSelection'))) | |||
return; | |||
var selector = $('<select>', {'class': 'ltw_disposable'}).change(function() { // class in quotes - reserved word. | |||
if (! this.value) return; | |||
dialog.dialog('option', 'title', title + ' עבור ' + this.value); | |||
$(this).remove(); | |||
templateDialog(dialog, templates(this.value)); | |||
}); | |||
selector.append($('<option>', {text: 'בחרו תבנית מהרשימה'})); | selector.append($('<option>', {text: 'בחרו תבנית מהרשימה'})); | ||
for (var i in allTemplates) | |||
for (var i in | selector.append($('<option>', {text: allTemplates[i], value: allTemplates[i]})); | ||
selector.append($('<option>', {text: | |||
dialog.append(selector); | dialog.append(selector); | ||
dialog.append($('<p>').css({ | dialog.append($('<p>', {'class': 'ltw_disposable'}).text('או הדביקו כאן תבנית לעריכה:')); | ||
dialog.append($('<input>', {type: 'text', maxLength: 1000, 'class': 'ltw_disposable'}).css({width: '14em'}).on('paste cut drop input change', function() {fromTemplate(this.value);})); | |||
} | } | ||
if (mw.user.options.get('usebetatoolbar')) { | |||
var button = $('<img>', {src: ' | var depend = ['ext.wikiEditor']; | ||
mw.loader.using(depend, function() { | |||
if(typeof $.wikiEditor != 'undefined') | |||
$(function() { | |||
$('#wpTextbox1').wikiEditor('addToToolbar', { | |||
section: 'main', | |||
group: 'insert', | |||
tools: { | |||
'linkTemplatewizard': { | |||
label: 'תבנית קישור', | |||
filters: [ 'body.ns-subject' ], | |||
type: 'button', | |||
icon: '//upload.wikimedia.org/wikipedia/commons/thumb/5/5e/Gnome-web-browser.svg/22px-Gnome-web-browser.svg.png', | |||
action: {type: 'callback', execute: fireDialog} | |||
} | |||
} | |||
}); | |||
$('[rel= "linkTemplatewizard"]').css('float','left'); | |||
}); | |||
}); | |||
} | |||
else | |||
mw.loader.using('mediawiki.toolbar', function() { | |||
$(function() { | |||
$('div #toolbar').append( // "old style" | |||
$('<img>', {src: '//upload.wikimedia.org/wikipedia/commons/3/34/Button_LINK_HE1.png', title: 'תבנית קישור', 'class': 'mw-toolbar-editbutton'}) | |||
.css({cursor: 'pointer'}) | |||
.click(function() {mw.loader.using('jquery.ui', fireDialog);}) | |||
); | |||
}); | |||
}); | }); | ||
}); | }); | ||