User:Magnus Manske/less edit clutter.js: Difference between revisions

Content deleted Content added
nowiki
m Remove legacy globals per phab:T72470 (via WP:JWB)
 
(10 intermediate revisions by one other user not shown)
Line 1:
if ( ( mw.config.get('wgAction') == "submit" || mw.config.get('wgAction') == "edit" ) && mw.config.get('wgNamespaceNumber') == 0 ) {
<nowiki>
if ( ( wgAction == "submit" || wgAction == "edit" ) && wgNamespaceNumber == 0 ) {
addOnloadHook ( less_edit_clutter_init ) ;
}
Line 25 ⟶ 24:
less_edit_clutter_hook_button ( 'wpDiff' ) ;
less_edit_clutter_parse_main_textbox () ;
if(window.AJAXPreview) AJAXPreview.getTextContent = less_edit_clutter_get_rejoined_text ;
}
 
Line 144:
}
 
function less_edit_clutter_rejoinless_edit_clutter_get_rejoined_text () {
if ( lec_active != 1 ) return '' ;
v = lec_tb_top.value ;
v = v.replace(/^\s+|\s+$/g,"") ;
Line 162:
s = n[i].replace(/^\s+|\s+$/g,"") ;
if ( s == '' ) continue ;
v += '[[Category:' +
s + "]]\n" ;
}
v = v.replace(/^\s+|\s+$/g,"") ;
Line 186 ⟶ 187:
var refstuff = text.shift() ;
text = text.join ( ' | ' ) ;
if ( refstuff != '' ) refstuff = ' name="' + refstuff + '"' ;{
var r = refstuff.match ( /^(.*)::(.*)$/ ) ;
if ( r == null ) {
if refstuff (= null' name=="' refstuff )+ refstuff =+ '"' ;
} else {
var gn = r.pop() ;
var rn = r.pop() ;
refstuff = '' ;
if ( gn != '' ) refstuff += ' group="' + gn + '"' ;
if ( rn != '' ) refstuff += ' name="' + rn + '"' ;
}
}
text = '<ref' + refstuff + '>' + text + '</ref>' ;
var key = '<<REF' + value + '>>' ;
Line 192 ⟶ 205:
}
}
return v ;
}
 
function less_edit_clutter_rejoin () {
lec_tb1.value = v ;
if ( lec_active != 1 ) return ;
lec_tb1.value = less_edit_clutter_get_rejoined_text() ;
}
 
Line 403 ⟶ 420:
n = v[i].split ( '>' ) ;
if ( n.length < 2 ) { o += '<ref' + v[i] ; continue ; }
refstuff = n.shift() ;
refstuffvar attrs = refstuffn.match shift( /name=\"(.*)\"\s*$/ ) ;
if ( null == refstuff ) refstuff = '' ;
elsevar refstuffname_attr = refstuff.pop()attrs ;
rs = name_attr.match ( /name=\"([^"]*)\"/ ) ;
if ( rs == null ) rs = name_attr.match ( /name=\'([^']*)\'/ ) ;
if ( rs == null ) rs = name_attr.match ( /name=([a-zA-Z0-9_\-]*)/ ) ;
name_attr = rs ;
if ( null == name_attr ) name_attr = '' ;
else name_attr = name_attr.pop() ;
 
var group_attr = attrs ;
rs = group_attr.match ( /group=\"([^"]*)\"/ ) ;
if ( rs == null ) rs = group_attr.match ( /group=\'([^']*)\'/ ) ;
if ( rs == null ) rs = group_attr.match ( /group=([a-zA-Z0-9_\-]*)/ ) ;
group_attr = rs ;
if ( null == group_attr ) group_attr = '' ;
else group_attr = group_attr.pop() ;
refstuff = name_attr ;
if ( group_attr != '' ) refstuff += "::" + group_attr ;
n = n.join ( '>' ) ;
n = n.split ( '</ref>' ) ;
Line 427 ⟶ 463:
 
// Begin of text
var in_table = 0 ;
while ( lines.length > 0 ) {
var no_ws = lines[0].replace(/^\s+|\s+$/g,"") ;
Line 448 ⟶ 485:
} else if ( lc.match(/^\[\[image\:.*\]\]$/) ) {
begin_templates = begin_templates + lines.shift() + "\n" ;
} else if ( lc.match(/^\[\[file\:.*\]\]$/) ) {
begin_templates = begin_templates + lines.shift() + "\n" ;
} else if ( lc.match(/^:/) ) { // Indented "For other uses..."
begin_templates = begin_templates + lines.shift() + "\n" ;
} else if ( lc.match(/^\{\|/) ) { // Table open
in_table++ ;
begin_templates = begin_templates + lines.shift() + "\n" ;
} else if ( lc.match(/^\s*\|\}/) && in_table > 0 ) { // Table close
in_table-- ;
begin_templates = begin_templates + lines.shift() + "\n" ;
} else if ( in_table > 0 ) {
begin_templates = begin_templates + lines.shift() + "\n" ;
 
} else break ;
}
Line 512 ⟶ 564:
lec_tb1.value = lines.join("\n") ;
}
</nowiki>