author | Dan |
Mon, 03 Aug 2009 02:56:03 -0400 | |
changeset 1070 | 617366710de2 |
parent 1053 | bdbb49cf6f1b |
child 1125 | 367768040a61 |
permissions | -rw-r--r-- |
1 | 1 |
/* |
2 |
* AJAX applets |
|
3 |
*/ |
|
4 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
5 |
window.ajaxReset = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
6 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
7 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
8 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
9 |
return true; |
566
06d241de3151
Made ajaxReset() call the actual requested title instead of effective title; fixed (again) template compiler bug not matching certain tags (probably PCRE bug)
Dan
parents:
560
diff
changeset
|
10 |
var ns_id = strToPageID(physical_title); |
221
e5302cb1945c
Localized a good part, if not all, of the registration page and a couple other things.
Dan
parents:
215
diff
changeset
|
11 |
if ( ns_id[1] == 'Special' || ns_id[1] == 'Admin' ) |
e5302cb1945c
Localized a good part, if not all, of the registration page and a couple other things.
Dan
parents:
215
diff
changeset
|
12 |
return false; |
1 | 13 |
enableUnload(); |
14 |
setAjaxLoading(); |
|
566
06d241de3151
Made ajaxReset() call the actual requested title instead of effective title; fixed (again) template compiler bug not matching certain tags (probably PCRE bug)
Dan
parents:
560
diff
changeset
|
15 |
var redir = ( disable_redirect ) ? '&redirect=no' : ''; |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
16 |
ajaxGet(append_sid(scriptPath + '/ajax.php?title=' + physical_title +'&_mode=getpage&noheaders' + redir), function(ajax) { |
430
ec90736b9cb9
Started (but disabled) work on the new theme manager, 1.1.2 is being released with this thing halfway done.
Dan
parents:
420
diff
changeset
|
17 |
// Allow for 404 here, it's generated by the "page not found" error message |
ec90736b9cb9
Started (but disabled) work on the new theme manager, 1.1.2 is being released with this thing halfway done.
Dan
parents:
420
diff
changeset
|
18 |
// (even with noheaders specified, probably should be fixed) |
ec90736b9cb9
Started (but disabled) work on the new theme manager, 1.1.2 is being released with this thing halfway done.
Dan
parents:
420
diff
changeset
|
19 |
if ( ajax.readyState == 4 && ( ajax.status == 200 || ajax.status == 404 ) ) { |
1 | 20 |
unsetAjaxLoading(); |
21 |
document.getElementById('ajaxEditContainer').innerHTML = ajax.responseText; |
|
22 |
selectButtonMajor('article'); |
|
23 |
unselectAllButtonsMinor(); |
|
672
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
24 |
// if we're on a userpage, call the onload function to rebuild the tabs |
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
25 |
if ( typeof(userpage_onload) == 'function' ) |
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
26 |
{ |
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
27 |
window.userpage_blocks = []; |
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
28 |
userpage_onload(); |
08a7875258b4
Added tab-based interface to userpage UI. Yes, it is plugin expansible, and yes, it breaks existing plugins that add code to the userpage (but that can be fixed with a "colspan=4")
Dan
parents:
651
diff
changeset
|
29 |
} |
1 | 30 |
} |
31 |
}); |
|
32 |
} |
|
33 |
||
34 |
// Miscellaneous AJAX applets |
|
35 |
||
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
36 |
window.ajaxProtect = function(existing_level) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
37 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
38 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
39 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
40 |
return true; |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
41 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
42 |
// touch this variable to allow it to be used in child functions |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
43 |
void(existing_level); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
44 |
|
907
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
45 |
// require re-auth |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
46 |
if ( auth_level <= USER_LEVEL_MEMBER ) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
47 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
48 |
load_component(['login', 'fadefilter', 'flyin', 'jquery', 'jquery-ui', 'crypto', 'messagebox']); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
49 |
ajaxDynamicReauth(function(key) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
50 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
51 |
ajaxProtect(existing_level); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
52 |
}, user_level); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
53 |
|
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
54 |
return false; |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
55 |
} |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
56 |
|
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
57 |
load_component(['messagebox', 'jquery', 'jquery-ui', 'l10n', 'fadefilter', 'flyin']); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
58 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
59 |
// preload language |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
60 |
$lang.get('meta_meta'); |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
61 |
|
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
62 |
var mp = miniPrompt(function(parent) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
63 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
64 |
var icon_full = gen_sprite_html(cdnPath + '/images/protect-icons.png', 22, 22, 0, 0); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
65 |
var icon_semi = gen_sprite_html(cdnPath + '/images/protect-icons.png', 22, 22, 22, 0); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
66 |
var icon_none = gen_sprite_html(cdnPath + '/images/protect-icons.png', 22, 22, 44, 0); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
67 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
68 |
$(parent).append('<h3>' + $lang.get('onpage_protect_heading') + '</h3>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
69 |
$(parent).append('<p>' + $lang.get('onpage_protect_msg_select_level') + '</p>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
70 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
71 |
$(parent).append('<div class="protectlevel"><label><input type="radio" id="protect_level_1" name="protect_level" /> ' + icon_full + ' ' + $lang.get('onpage_protect_btn_full') + '</label></div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
72 |
$(parent).append('<div class="protectlevel_hint" id="protect_level_1_hint">' + $lang.get('onpage_protect_btn_full_hint') + '</div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
73 |
$(parent).append('<div class="protectlevel"><label><input type="radio" id="protect_level_2" name="protect_level" /> ' + icon_semi + ' ' + $lang.get('onpage_protect_btn_semi') + '</label></div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
74 |
$(parent).append('<div class="protectlevel_hint" id="protect_level_2_hint">' + $lang.get('onpage_protect_btn_semi_hint') + '</div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
75 |
$(parent).append('<div class="protectlevel"><label><input type="radio" id="protect_level_0" name="protect_level" /> ' + icon_none + ' ' + $lang.get('onpage_protect_btn_none') + '</label></div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
76 |
$(parent).append('<div class="protectlevel_hint" id="protect_level_0_hint">' + $lang.get('onpage_protect_btn_none_hint') + '</div>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
77 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
78 |
$(parent).append('<table class="protectreason"><tr><td valign="top">' + $lang.get('onpage_protect_lbl_reason') + '</td><td><input id="protect_reason" size="30" type="text" /><br /><small>' + $lang.get('onpage_protect_lbl_reason_hint') + '</small></td></tr></table>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
79 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
80 |
$(parent).append('<p class="buttons"><a class="submitbutton abutton abutton_green" style="font-weight: bold;" href="#" onclick="ajaxProtectSubmit(this); return false;">' + $lang.get('onpage_protect_btn_submit') + '</a> <a class="submitbutton abutton" href="#" onclick="miniPromptDestroy(this); return false;">' + $lang.get('etc_cancel') + '</a></p>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
81 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
82 |
$('.protectlevel', parent).css('line-height', '22px'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
83 |
$('h3', parent).css('text-align', 'center'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
84 |
$('.protectlevel_hint', parent) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
85 |
.css('font-size', 'smaller') |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
86 |
.css('margin-left', '52px') |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
87 |
.hide(); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
88 |
$('p.buttons', parent).css('margin-top', '15px').css('text-align', 'center'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
89 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
90 |
if ( typeof(existing_level) == 'number' ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
91 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
92 |
$('#protect_level_' + existing_level, parent).attr('checked', 'checked'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
93 |
$('#protect_level_' + existing_level + '_hint', parent).show(); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
94 |
$('#protect_level_' + existing_level, parent).parent().append(' <small><span style="color: #050; background-color: #eee; padding: 0 4px;">' + $lang.get('onpage_protect_lbl_current') + '</span></small>'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
95 |
} |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
96 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
97 |
$('input:radio', parent).click(function() |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
98 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
99 |
var mp = miniPromptGetParent(this); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
100 |
$('.protectlevel_hint:visible', mp).hide('blind', 150); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
101 |
$('#' + this.id + '_hint').show('blind', 150); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
102 |
$('#protect_reason').focus(); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
103 |
}); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
104 |
$('input:text', parent).keyup(function(e) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
105 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
106 |
if ( e.keyCode == 13 ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
107 |
ajaxProtectSubmit(this); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
108 |
}); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
109 |
}); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
110 |
} |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
111 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
112 |
window.ajaxProtectSubmit = function(el) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
113 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
114 |
var mp = miniPromptGetParent(el); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
115 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
116 |
var reason = trim($('#protect_reason', mp).attr('value')); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
117 |
if ( reason == '' ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
118 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
119 |
var oldbg = $('#protect_reason').css('background-color'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
120 |
if ( jQuery.fx.off ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
121 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
122 |
$('#protect_reason').css('background-color', '#a00'); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
123 |
setTimeout(function() |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
124 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
125 |
$('#protect_reason').css('background-color', oldbg); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
126 |
}, 1000); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
127 |
} |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
128 |
else |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
129 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
130 |
$('#protect_reason').css('background-color', '#a00').animate({ backgroundColor: oldbg }, 1000); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
131 |
} |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
132 |
return false; |
1 | 133 |
} |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
134 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
135 |
var level = 0; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
136 |
if ( $('#protect_level_1', mp).attr('checked') ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
137 |
level = 1; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
138 |
if ( $('#protect_level_2', mp).attr('checked') ) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
139 |
level = 2; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
140 |
|
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
141 |
var whitey = whiteOutMiniPrompt(mp); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
142 |
$.post(stdAjaxPrefix + '&_mode=protect', { level: level, reason: reason }, function(response, statustext) |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
143 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
144 |
if ( response.success ) |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
145 |
{ |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
146 |
whiteOutReportSuccess(whitey); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
147 |
setTimeout(function() |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
148 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
149 |
miniPromptDestroy(mp); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
150 |
}, 1250); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
151 |
// update protect button |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
152 |
var btn = $('#tb_ajax_protect_btn').get(0); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
153 |
btn.level = level; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
154 |
btn.setAttribute('onclick', null); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
155 |
btn.onclick = null; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
156 |
$(btn).click(function() |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
157 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
158 |
ajaxProtect(this.level); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
159 |
return false; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
160 |
}); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
161 |
var status = ''; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
162 |
switch(level) |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
163 |
{ |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
164 |
case 1: status = $lang.get('onpage_btn_protect_on'); break; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
165 |
case 0: status = $lang.get('onpage_btn_protect_off'); break; |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
166 |
case 2: status = $lang.get('onpage_btn_protect_semi'); break; |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
167 |
} |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
168 |
$('#tb_ajax_protect_status').text(status); |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
169 |
} |
906
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
170 |
else |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
171 |
{ |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
172 |
whiteOutReportFailure(whitey); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
173 |
alert($lang.get('page_err_' + response.error)); |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
174 |
} |
c949e82b8f49
New page protection UI. Both miniPrompt and failsafe HTML.
Dan
parents:
903
diff
changeset
|
175 |
}, 'json'); |
1 | 176 |
} |
177 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
178 |
window.ajaxRename = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
179 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
180 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
181 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
182 |
return true; |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
183 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
184 |
// updated - 1.1.4 to use miniPrompt |
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
185 |
load_component(['l10n', 'messagebox', 'flyin', 'fadefilter']); |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
186 |
miniPrompt(ajaxRenameConstructDialog); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
187 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
188 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
189 |
var ajaxRenameConstructDialog = function(div) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
190 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
191 |
// title |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
192 |
var heading = document.createElement('h3'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
193 |
heading.appendChild(document.createTextNode($lang.get('ajax_rename_prompt_short'))); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
194 |
div.appendChild(heading); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
195 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
196 |
// form |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
197 |
var form = document.createElement('form'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
198 |
form.action = 'javascript:void(0);'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
199 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
200 |
// box |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
201 |
var box = document.createElement('input'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
202 |
box.size = '43'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
203 |
box.style.width = '100%'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
204 |
form.appendChild(box); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
205 |
div.appendChild(form); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
206 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
207 |
// notice |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
208 |
var notice = document.createElement('small'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
209 |
notice.appendChild(document.createTextNode($lang.get('ajax_rename_notice'))); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
210 |
div.appendChild(notice); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
211 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
212 |
// button area |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
213 |
var btndiv = document.createElement('div'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
214 |
btndiv.className = 'mp-buttons'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
215 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
216 |
// buttons |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
217 |
var btn_submit = document.createElement('a'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
218 |
btn_submit.href = '#'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
219 |
btn_submit.appendChild(document.createTextNode($lang.get('etc_go'))); |
537
547b7ba6d535
Added a really simple message box system based on miniPrompts, this will be used for confirmation windows like delete_page, clear_logs, delvote, etc.
Dan
parents:
527
diff
changeset
|
220 |
btn_submit.className = 'abutton abutton_green'; |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
221 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
222 |
var btn_cancel = document.createElement('a'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
223 |
btn_cancel.href = '#'; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
224 |
btn_cancel.appendChild(document.createTextNode($lang.get('etc_cancel'))); |
537
547b7ba6d535
Added a really simple message box system based on miniPrompts, this will be used for confirmation windows like delete_page, clear_logs, delvote, etc.
Dan
parents:
527
diff
changeset
|
225 |
btn_cancel.className = 'abutton'; |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
226 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
227 |
btndiv.appendChild(btn_submit); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
228 |
btndiv.appendChild(document.createTextNode(' | ')); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
229 |
btndiv.appendChild(btn_cancel); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
230 |
div.appendChild(btndiv); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
231 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
232 |
// events |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
233 |
btn_submit.onclick = function() |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
234 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
235 |
ajaxRenameSubmit(this); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
236 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
237 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
238 |
btn_cancel.onclick = function() |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
239 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
240 |
miniPromptDestroy(this); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
241 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
242 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
243 |
form.onsubmit = function() |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
244 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
245 |
ajaxRenameSubmit(this); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
246 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
247 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
248 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
249 |
setTimeout(function() |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
250 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
251 |
box.focus(); |
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
252 |
}, ( aclDisableTransitionFX ? 200 : 750 )); |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
253 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
254 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
255 |
window.ajaxRenameSubmit = function(obj) |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
256 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
257 |
var box = miniPromptGetParent(obj); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
258 |
if ( !box ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
259 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
260 |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
261 |
var input = box.getElementsByTagName('input')[0]; |
592 | 262 |
if ( !input ) |
263 |
return false; |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
264 |
|
592 | 265 |
var newname = input.value; |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
266 |
newname = trim(newname); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
267 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
268 |
if ( newname.length < 1 ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
269 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
270 |
alert($lang.get('ajax_rename_too_short')); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
271 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
272 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
273 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
274 |
if ( !newname ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
275 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
276 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
277 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
278 |
|
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
279 |
var innerBox = getElementsByClassName(box, 'div', 'mp-body')[0]; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
280 |
var whiteout = whiteOutElement(innerBox); |
699
c7d737202d59
Removed Adobe Spry and replaced with jQuery. Please report any new bugs on the forums or via IRC. In a related note, auto-completion should work now at least for usernames. Still hacking away at page name completion...
Dan
parents:
696
diff
changeset
|
281 |
whiteout.style.width = ( $dynano(whiteout).Width() - 78 ) + 'px'; |
c7d737202d59
Removed Adobe Spry and replaced with jQuery. Please report any new bugs on the forums or via IRC. In a related note, auto-completion should work now at least for usernames. Still hacking away at page name completion...
Dan
parents:
696
diff
changeset
|
282 |
whiteout.style.left = ( $dynano(whiteout).Left() + 44 ) + 'px'; |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
283 |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
284 |
ajaxPost(stdAjaxPrefix + '&_mode=rename', 'newtitle=' + ajaxEscape(newname), function(ajax) |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
285 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
286 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
287 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
288 |
whiteout.parentNode.removeChild(whiteout); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
289 |
var response = String(ajax.responseText); |
651
ce9d78d7251d
Improved JSON validation and error interface when validation fails; made rank manager support custom CSS
Dan
parents:
650
diff
changeset
|
290 |
if ( !check_json_response(response) ) |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
291 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
292 |
handle_invalid_json(response); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
293 |
return false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
294 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
295 |
response = parseJSON(response); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
296 |
if ( response.success ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
297 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
298 |
miniPromptDestroy(box, true); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
299 |
ajaxRenameDoClientTransform(newname); |
550
685e839d934e
Added ability to delete the draft revision; [SECURITY] fixed lack of permission check on draft save; renamed messagebox() constructor to MessageBox() (backward compat. maintained)
Dan
parents:
539
diff
changeset
|
300 |
new MessageBox( MB_OK|MB_ICONINFORMATION, $lang.get('ajax_rename_success_title'), $lang.get('ajax_rename_success_body', { page_name_new: newname }) ); |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
301 |
mb_previously_had_darkener = false; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
302 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
303 |
else |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
304 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
305 |
var errmsg = $lang.get('page_err_' + response.error); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
306 |
alert(errmsg); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
307 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
308 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
309 |
}, true); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
310 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
311 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
312 |
window.ajaxRenameDoClientTransform = function(newname) |
522
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
313 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
314 |
var obj = document.getElementById('h2PageName'); |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
315 |
if ( obj ) |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
316 |
{ |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
317 |
obj.firstChild.nodeValue = newname; |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
318 |
} |
fd46b1bf708e
Dramatically improved the page-rename UX and added a miniPrompt API that allows small pop-down prompts as opposed to prompt() or confirm().
Dan
parents:
481
diff
changeset
|
319 |
document.title = newname; |
1 | 320 |
} |
321 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
322 |
window.ajaxDeletePage = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
323 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
324 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
325 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
326 |
return true; |
907
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
327 |
|
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
328 |
// require re-auth |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
329 |
if ( auth_level <= USER_LEVEL_MEMBER ) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
330 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
331 |
load_component(['login', 'fadefilter', 'flyin', 'jquery', 'jquery-ui', 'crypto', 'messagebox']); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
332 |
ajaxDynamicReauth(function(key) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
333 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
334 |
ajaxDeletePage(); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
335 |
}, user_level); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
336 |
|
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
337 |
return false; |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
338 |
} |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
339 |
|
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
340 |
load_component(['l10n', 'messagebox', 'jquery', 'jquery-ui', 'fadefilter', 'flyin']); |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
341 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
342 |
// stage 1: prompt for reason and confirmation |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
343 |
miniPrompt(function(parent) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
344 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
345 |
// heading/title |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
346 |
var h3 = document.createElement('h3'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
347 |
h3.appendChild(document.createTextNode($lang.get('ajax_delete_header'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
348 |
parent.appendChild(h3); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
349 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
350 |
// "please enter your reason" |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
351 |
var p1 = document.createElement('p'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
352 |
p1.appendChild(document.createTextNode($lang.get('ajax_delete_prompt_reason'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
353 |
parent.appendChild(p1); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
354 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
355 |
// textbox + label thereof |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
356 |
var p2 = document.createElement('p'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
357 |
var tb = document.createElement('input'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
358 |
var dl = document.createElement('label'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
359 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
360 |
tb.type = 'text'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
361 |
tb.size = '30'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
362 |
tb.onkeyup = function(e) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
363 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
364 |
if ( e ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
365 |
if ( e.keyCode ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
366 |
if ( e.keyCode == 13 ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
367 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
368 |
if ( ajaxDeletePageSubmit(this) ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
369 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
370 |
miniPromptDestroy(this); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
371 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
372 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
373 |
else if ( e.keyCode == 27 ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
374 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
375 |
miniPromptDestroy(this); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
376 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
377 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
378 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
379 |
dl.appendChild(document.createTextNode($lang.get('ajax_delete_lbl_reason') + ' ')); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
380 |
dl.appendChild(tb); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
381 |
p2.appendChild(dl); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
382 |
parent.appendChild(p2); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
383 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
384 |
// notice underneath |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
385 |
var p3 = document.createElement('p'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
386 |
p3.style.fontSize = 'smaller'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
387 |
p3.appendChild(document.createTextNode($lang.get('ajax_delete_msg_confirm'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
388 |
parent.appendChild(p3); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
389 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
390 |
// confirmation + submit/cancel (structure) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
391 |
var divleft = document.createElement('div'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
392 |
var divright = document.createElement('div'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
393 |
var divclear = document.createElement('div'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
394 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
395 |
divleft.style.cssFloat = 'left'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
396 |
divleft.style.styleFloat = 'left'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
397 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
398 |
divright.style.cssFloat = 'right'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
399 |
divright.style.styleFloat = 'right'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
400 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
401 |
divclear.style.clear = 'both'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
402 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
403 |
parent.appendChild(divleft); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
404 |
parent.appendChild(divright); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
405 |
parent.appendChild(divclear); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
406 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
407 |
// confirmation + submit/cancel (controls) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
408 |
var cb = document.createElement('input'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
409 |
var cl = document.createElement('label'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
410 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
411 |
cb.type = 'checkbox'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
412 |
cb.checked = false; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
413 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
414 |
// a bit of a hack here, doesn't seem to work in fx3 |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
415 |
cb.onblur = function(e) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
416 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
417 |
var parent = this.parentNode.parentNode.parentNode; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
418 |
var submitter = parent.getElementsByTagName('a')[0]; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
419 |
if ( submitter ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
420 |
submitter.focus(); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
421 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
422 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
423 |
cl.appendChild(cb); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
424 |
cl.appendChild(document.createTextNode(' ' + $lang.get('ajax_delete_lbl_confirm'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
425 |
divleft.appendChild(cl); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
426 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
427 |
var btn_submit = document.createElement('a'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
428 |
btn_submit.className = 'abutton abutton_red'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
429 |
btn_submit.href = '#'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
430 |
btn_submit.appendChild(document.createTextNode($lang.get('ajax_delete_btn_delete'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
431 |
btn_submit.onclick = function() |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
432 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
433 |
if ( ajaxDeletePageSubmit(this) ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
434 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
435 |
miniPromptDestroy(this); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
436 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
437 |
return false; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
438 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
439 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
440 |
var btn_cancel = document.createElement('a'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
441 |
btn_cancel.className = 'abutton'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
442 |
btn_cancel.href = '#'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
443 |
btn_cancel.appendChild(document.createTextNode($lang.get('etc_cancel'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
444 |
btn_cancel.onclick = function() |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
445 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
446 |
miniPromptDestroy(this); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
447 |
return false; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
448 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
449 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
450 |
divright.appendChild(btn_submit); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
451 |
divright.appendChild(document.createTextNode(' ')); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
452 |
divright.appendChild(btn_cancel); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
453 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
454 |
var timeout = ( aclDisableTransitionFX ) ? 10 : 1000; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
455 |
setTimeout(function() |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
456 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
457 |
tb.focus(); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
458 |
}, timeout); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
459 |
}); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
460 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
461 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
462 |
window.ajaxDeletePageSubmit = function(prompt_obj) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
463 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
464 |
prompt_obj = miniPromptGetParent(prompt_obj).childNodes[1]; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
465 |
var inputs = prompt_obj.getElementsByTagName('input'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
466 |
var reason = inputs[0]; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
467 |
var confirm = inputs[1]; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
468 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
469 |
if ( trim(reason.value) == '' ) |
28 | 470 |
{ |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
471 |
// flash the background of the reason entry |
699
c7d737202d59
Removed Adobe Spry and replaced with jQuery. Please report any new bugs on the forums or via IRC. In a related note, auto-completion should work now at least for usernames. Still hacking away at page name completion...
Dan
parents:
696
diff
changeset
|
472 |
$(reason.parentNode).effect("highlight", {}, 1000); |
28 | 473 |
return false; |
474 |
} |
|
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
475 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
476 |
if ( !confirm.checked ) |
28 | 477 |
{ |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
478 |
// flash the background of the confirm checkbox |
699
c7d737202d59
Removed Adobe Spry and replaced with jQuery. Please report any new bugs on the forums or via IRC. In a related note, auto-completion should work now at least for usernames. Still hacking away at page name completion...
Dan
parents:
696
diff
changeset
|
479 |
$(confirm.parentNode).effect("highlight", {}, 1000); |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
480 |
return false; |
28 | 481 |
} |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
482 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
483 |
prompt_obj.innerHTML = '<img alt="loading" style="display: block; margin: 0 auto;" src="' + cdnPath + '/images/loading-big.gif" />'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
484 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
485 |
// tenemos la confirmación y la razón - borre la página. |
1 | 486 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
487 |
ajaxPost(stdAjaxPrefix + '&_mode=deletepage', 'reason=' + ajaxEscape(trim(reason.value)), function(ajax) |
696
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
488 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
489 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
490 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
491 |
unsetAjaxLoading(); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
492 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
493 |
// show the response in the same prompt window |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
494 |
prompt_obj.style.textAlign = 'center'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
495 |
prompt_obj.innerHTML = ''; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
496 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
497 |
var p1 = document.createElement('div'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
498 |
p1.style.marginBottom = '15px'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
499 |
p1.appendChild(document.createTextNode(ajax.responseText)); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
500 |
prompt_obj.appendChild(p1); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
501 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
502 |
var p2 = document.createElement('p'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
503 |
var a = document.createElement('a'); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
504 |
a.className = 'abutton'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
505 |
a.href = '#'; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
506 |
a.appendChild(document.createTextNode($lang.get('etc_close'))); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
507 |
a.onclick = function() |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
508 |
{ |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
509 |
miniPromptDestroy(this); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
510 |
window.location.reload(); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
511 |
return false; |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
512 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
513 |
p2.appendChild(a); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
514 |
prompt_obj.appendChild(a); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
515 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
516 |
a.focus(); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
517 |
} |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
518 |
}); |
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
519 |
|
bd5069e1f19a
Revamped page deletion interface; fixed bug where page_meta cache was not being cleared upon restoration of deleted page.
Dan
parents:
672
diff
changeset
|
520 |
return true; |
1 | 521 |
} |
522 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
523 |
window.ajaxDelVote = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
524 |
{ |
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
525 |
load_component(['l10n', 'messagebox', 'flyin', 'fadefilter']); |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
526 |
|
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
527 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
528 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
529 |
return true; |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
530 |
miniPromptMessage({ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
531 |
title: $lang.get('ajax_delvote_confirm_title'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
532 |
message: $lang.get('ajax_delvote_confirm_body'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
533 |
buttons: [ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
534 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
535 |
text: $lang.get('ajax_delvote_btn_submit'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
536 |
color: 'red', |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
537 |
style: { |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
538 |
fontWeight: 'bold' |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
539 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
540 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
541 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
542 |
miniPromptDestroy(this); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
543 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
544 |
ajaxGet(stdAjaxPrefix+'&_mode=delvote', function(ajax) { |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
545 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
546 |
unsetAjaxLoading(); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
547 |
alert(ajax.responseText); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
548 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
549 |
}, true); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
550 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
551 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
552 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
553 |
text: $lang.get('etc_cancel'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
554 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
555 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
556 |
miniPromptDestroy(this); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
557 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
558 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
559 |
] |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
560 |
}); |
1 | 561 |
} |
562 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
563 |
window.ajaxResetDelVotes = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
564 |
{ |
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
565 |
load_component(['l10n', 'messagebox', 'flyin', 'fadefilter']); |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
566 |
|
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
567 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
568 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
569 |
return true; |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
570 |
miniPromptMessage({ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
571 |
title: $lang.get('ajax_delvote_reset_confirm_title'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
572 |
message: $lang.get('ajax_delvote_reset_confirm_body'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
573 |
buttons: [ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
574 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
575 |
text: $lang.get('ajax_delvote_reset_btn_submit'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
576 |
color: 'red', |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
577 |
style: { |
555
ac4c6a7f01d8
Added user preference for disabling visual effects in Javascript applets; added re-import button to installed plugins
Dan
parents:
550
diff
changeset
|
578 |
fontWeight: 'bold' |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
579 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
580 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
581 |
{ |
946 | 582 |
var box = miniPromptGetParent(this); |
583 |
var whitey = whiteOutMiniPrompt(box); |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
584 |
ajaxGet(stdAjaxPrefix+'&_mode=resetdelvotes', function(ajax) { |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
585 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
946 | 586 |
whiteOutReportSuccess(whitey); |
587 |
setTimeout(function() |
|
588 |
{ |
|
589 |
miniPromptDestroy(box); |
|
590 |
}, 1250); |
|
591 |
||
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
592 |
item = document.getElementById('mdgDeleteVoteNoticeBox'); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
593 |
if(item) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
594 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
595 |
opacity('mdgDeleteVoteNoticeBox', 100, 0, 1000); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
596 |
setTimeout("document.getElementById('mdgDeleteVoteNoticeBox').style.display = 'none';", 1000); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
597 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
598 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
599 |
}, true); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
600 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
601 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
602 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
603 |
text: $lang.get('etc_cancel'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
604 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
605 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
606 |
miniPromptDestroy(this); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
607 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
608 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
609 |
] |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
610 |
}); |
1 | 611 |
} |
612 |
||
613 |
// Editing/saving category information |
|
614 |
// This was not easy to write, I hope enjoy it, and dang I swear I'm gonna |
|
615 |
// find someone to work on just the Javascript part of Enano... |
|
616 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
617 |
window.ajaxCatEdit = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
618 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
619 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
620 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
621 |
return true; |
1 | 622 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
623 |
ajaxGet(stdAjaxPrefix+'&_mode=catedit', function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
624 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1 | 625 |
unsetAjaxLoading(); |
626 |
edit_open = false; |
|
627 |
eval(ajax.responseText); |
|
628 |
} |
|
629 |
}); |
|
630 |
} |
|
631 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
632 |
window.ajaxCatSave = function() |
1 | 633 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
634 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
635 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
636 |
return true; |
1 | 637 |
if(!catlist) |
638 |
{ |
|
639 |
alert('Var catlist has no properties'); |
|
640 |
return; |
|
641 |
} |
|
642 |
query=''; |
|
643 |
for(i=0;i<catlist.length;i++) |
|
644 |
{ |
|
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
645 |
var s = ( document.forms.mdgCatForm['mdgCat_' + catlist[i]]['checked'] ) ? true : false; |
1 | 646 |
if(s) query = query + '&' + catlist[i] + '=true'; |
647 |
} |
|
648 |
setAjaxLoading(); |
|
649 |
query = query.substring(1, query.length); |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
650 |
ajaxPost(stdAjaxPrefix+'&_mode=catsave', query, function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
651 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1 | 652 |
unsetAjaxLoading(); |
653 |
edit_open = false; |
|
654 |
if(ajax.responseText != 'GOOD') alert(ajax.responseText); |
|
655 |
ajaxReset(); |
|
656 |
} |
|
657 |
}); |
|
658 |
} |
|
659 |
||
660 |
// History stuff |
|
661 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
662 |
window.ajaxHistory = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
663 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
664 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
665 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
666 |
return true; |
1 | 667 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
668 |
ajaxGet(stdAjaxPrefix+'&_mode=histlist', function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
669 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1 | 670 |
unsetAjaxLoading(); |
671 |
edit_open = false; |
|
672 |
selectButtonMajor('article'); |
|
673 |
selectButtonMinor('history'); |
|
674 |
document.getElementById('ajaxEditContainer').innerHTML = ajax.responseText; |
|
675 |
buildDiffList(); |
|
676 |
} |
|
677 |
}); |
|
678 |
} |
|
679 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
680 |
window.ajaxHistView = function(oldid, ttl) { |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
681 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
682 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
683 |
return true; |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
684 |
if(!ttl) ttl=title; |
1 | 685 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
686 |
ajaxGet(append_sid(scriptPath+'/ajax.php?title='+ttl+'&_mode=getpage&oldid='+oldid), function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
687 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1 | 688 |
unsetAjaxLoading(); |
689 |
edit_open = false; |
|
690 |
document.getElementById('ajaxEditContainer').innerHTML = ajax.responseText; |
|
691 |
} |
|
692 |
}); |
|
693 |
} |
|
694 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
695 |
window.ajaxRollback = function(id) { |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
696 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
697 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
698 |
return true; |
1 | 699 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
700 |
ajaxGet(stdAjaxPrefix+'&_mode=rollback&id='+id, function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
701 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1 | 702 |
unsetAjaxLoading(); |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
703 |
|
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
704 |
var response = String(ajax.responseText + ''); |
651
ce9d78d7251d
Improved JSON validation and error interface when validation fails; made rank manager support custom CSS
Dan
parents:
650
diff
changeset
|
705 |
if ( !check_json_response(response) ) |
481
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
706 |
{ |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
707 |
handle_invalid_json(response); |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
708 |
return false; |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
709 |
} |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
710 |
|
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
711 |
response = parseJSON(response); |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
712 |
if ( response.success ) |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
713 |
{ |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
714 |
alert( $lang.get('page_msg_rb_success_' + response.action, { dateline: response.dateline }) ) |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
715 |
} |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
716 |
else |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
717 |
{ |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
718 |
if ( response.action ) |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
719 |
{ |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
720 |
alert( $lang.get('page_err_' + response.error, { action: response.action }) ); |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
721 |
} |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
722 |
else |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
723 |
{ |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
724 |
alert( $lang.get('page_err_' + response.error) ); |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
725 |
} |
07bf15b066bc
Hopefully completed rewrite and localization of rollback backend and interface
Dan
parents:
436
diff
changeset
|
726 |
} |
1 | 727 |
} |
728 |
}); |
|
729 |
} |
|
730 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
731 |
window.ajaxClearLogs = function() |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
732 |
{ |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
733 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
734 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
735 |
return true; |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
736 |
|
907
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
737 |
// require re-auth |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
738 |
if ( auth_level <= USER_LEVEL_MEMBER ) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
739 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
740 |
load_component(['login', 'fadefilter', 'flyin', 'jquery', 'jquery-ui', 'crypto', 'messagebox']); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
741 |
ajaxDynamicReauth(function(key) |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
742 |
{ |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
743 |
ajaxClearLogs(); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
744 |
}, user_level); |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
745 |
|
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
746 |
return false; |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
747 |
} |
44851d7e9bda
Live Re-Auth is now required for deleting pages, editing ACLs, protecting pages, and clearing logs. Committing in a hurry as a storm is coming in, hope everything is in there.
Dan
parents:
906
diff
changeset
|
748 |
|
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
749 |
load_component(['l10n', 'messagebox', 'flyin', 'fadefilter']); |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
750 |
|
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
751 |
miniPromptMessage({ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
752 |
title: $lang.get('ajax_clearlogs_confirm_title'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
753 |
message: $lang.get('ajax_clearlogs_confirm_body'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
754 |
buttons: [ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
755 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
756 |
text: $lang.get('ajax_clearlogs_btn_submit'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
757 |
color: 'red', |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
758 |
style: { |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
759 |
fontWeight: 'bold' |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
760 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
761 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
762 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
763 |
miniPromptDestroy(this); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
764 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
765 |
ajaxGet(stdAjaxPrefix+'&_mode=flushlogs', function(ajax) { |
539
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
766 |
if ( ajax.readyState == 4 && ajax.status == 200 ) { |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
767 |
unsetAjaxLoading(); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
768 |
alert(ajax.responseText); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
769 |
window.location.reload(); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
770 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
771 |
}); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
772 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
773 |
}, |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
774 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
775 |
text: $lang.get('etc_cancel'), |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
776 |
onclick: function(e) |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
777 |
{ |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
778 |
miniPromptDestroy(this); |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
779 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
780 |
} |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
781 |
] |
1beddd693f2d
Replaced some confirmation boxes with miniPromptMessage versions. This commit will require a re-langimport and shift-reload.
Dan
parents:
537
diff
changeset
|
782 |
}); |
1 | 783 |
} |
784 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
785 |
window.buildDiffList = function() |
1 | 786 |
{ |
787 |
arrDiff1Buttons = getElementsByClassName(document, 'input', 'clsDiff1Radio'); |
|
788 |
arrDiff2Buttons = getElementsByClassName(document, 'input', 'clsDiff2Radio'); |
|
789 |
var len = arrDiff1Buttons.length; |
|
790 |
if ( len < 1 ) |
|
791 |
return false; |
|
792 |
timelist = new Array(); |
|
793 |
for ( var i = 0; i < len; i++ ) |
|
794 |
{ |
|
795 |
timelist.push( arrDiff2Buttons[i].id.substr(6) ); |
|
796 |
} |
|
797 |
timelist.push( arrDiff1Buttons[len-1].id.substr(6) ); |
|
798 |
delete(timelist.toJSONString); |
|
799 |
for ( var i = 1; i < timelist.length-1; i++ ) |
|
800 |
{ |
|
801 |
if ( i >= timelist.length ) break; |
|
802 |
arrDiff2Buttons[i].style.display = 'none'; |
|
803 |
} |
|
804 |
} |
|
805 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
806 |
window.selectDiff1Button = function(obj) |
1 | 807 |
{ |
808 |
var this_time = obj.id.substr(6); |
|
809 |
var index = parseInt(in_array(this_time, timelist)); |
|
810 |
for ( var i = 0; i < timelist.length - 1; i++ ) |
|
811 |
{ |
|
812 |
if ( i < timelist.length - 1 ) |
|
813 |
{ |
|
814 |
var state = ( i < index ) ? 'inline' : 'none'; |
|
815 |
var id = 'diff2_' + timelist[i]; |
|
816 |
document.getElementById(id).style.display = state; |
|
817 |
||
818 |
// alert("Debug:\nIndex: "+index+"\nState: "+state+"\ni: "+i); |
|
819 |
} |
|
820 |
} |
|
821 |
} |
|
822 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
823 |
window.selectDiff2Button = function(obj) |
1 | 824 |
{ |
825 |
var this_time = obj.id.substr(6); |
|
826 |
var index = parseInt(in_array(this_time, timelist)); |
|
827 |
for ( var i = 1; i < timelist.length; i++ ) |
|
828 |
{ |
|
829 |
if ( i < timelist.length - 1 ) |
|
830 |
{ |
|
831 |
var state = ( i > index ) ? 'inline' : 'none'; |
|
832 |
var id = 'diff1_' + timelist[i]; |
|
833 |
document.getElementById(id).style.display = state; |
|
834 |
||
835 |
// alert("Debug:\nIndex: "+index+"\nState: "+state+"\ni: "+i); |
|
836 |
} |
|
837 |
} |
|
838 |
} |
|
839 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
840 |
window.ajaxHistDiff = function() |
1 | 841 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
842 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
843 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
844 |
return true; |
1 | 845 |
var id1=false; |
846 |
var id2=false; |
|
847 |
for ( i = 0; i < arrDiff1Buttons.length; i++ ) |
|
848 |
{ |
|
849 |
k = i + ''; |
|
850 |
kpp = i + 1; |
|
851 |
kpp = kpp + ''; |
|
852 |
if(arrDiff1Buttons[k].checked) id1 = arrDiff1Buttons[k].id.substr(6); |
|
853 |
if(arrDiff2Buttons[k].checked) id2 = arrDiff2Buttons[k].id.substr(6); |
|
854 |
} |
|
855 |
if(!id1 || !id2) { alert('BUG: Couldn\'t get checked radiobutton state'); return; } |
|
856 |
setAjaxLoading(); |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
857 |
ajaxGet(stdAjaxPrefix+'&_mode=pagediff&diff1='+id1+'&diff2='+id2, function(ajax) |
1 | 858 |
{ |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
859 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
1 | 860 |
{ |
861 |
unsetAjaxLoading(); |
|
862 |
document.getElementById('ajaxEditContainer').innerHTML = ajax.responseText; |
|
863 |
} |
|
864 |
}); |
|
865 |
} |
|
866 |
||
867 |
// Change the user's preferred style/theme |
|
868 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
869 |
window.ajaxChangeStyle = function() |
1 | 870 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
871 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
872 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
873 |
return true; |
870 | 874 |
load_component(['l10n', 'fadefilter', 'jquery', 'jquery-ui']); |
875 |
||
876 |
// force string fetch |
|
877 |
$lang.get('etc_cancel'); |
|
878 |
||
879 |
// preload some images |
|
880 |
var i1 = new Image(); |
|
881 |
i1.src = cdnPath + '/images/loading-big.gif'; |
|
882 |
var i2 = new Image(); |
|
883 |
i2.src = cdnPath + '/images/check-large.png'; |
|
884 |
||
885 |
darken(true, 70, 'theme-selector-shade'); |
|
886 |
||
887 |
$('body').append('<div id="theme-selector-wrapper"><div id="theme-selector-body"><div id="theme-selector-inner"><div class="theme-selector-spinner"></div></div></div></div>'); |
|
888 |
$('#theme-selector-wrapper') |
|
889 |
.css('top', String(getScrollOffset()) + 'px') |
|
881
01810d32a0d6
AJAX: theme selector: explicitly set wrapper div to 0 to prevent sidescrolling
Dan
parents:
870
diff
changeset
|
890 |
.css('left', 0) |
870 | 891 |
.css('z-index', String( getHighestZ() + 20 )); |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
892 |
|
870 | 893 |
$.get(stdAjaxPrefix + '&_mode=theme_list', {}, function(data, status) |
894 |
{ |
|
895 |
$('#theme-selector-inner .theme-selector-spinner').fadeOut(650); |
|
903
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
896 |
$('#theme-selector-body').animate({ width: 728 }, 600, function() |
870 | 897 |
{ |
898 |
// avoiding jQuery's fade functions because they insist on toggling display as well |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
899 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
900 |
changeOpac(0, 'theme-selector-inner'); |
870 | 901 |
$('#theme-selector-inner').html('<h3></h3>'); |
902 |
$('#theme-selector-inner > h3').text($lang.get('ajax_thmsel_lbl_choosetheme')); |
|
903 |
$('#theme-selector-inner').append('<ul></ul>'); |
|
904 |
for ( var i = 0; i < data.length; i++ ) |
|
905 |
{ |
|
906 |
var bgi = data[i].have_thumb ? cdnPath + '/themes/' + data[i].theme_id + '/preview.png' : cdnPath + '/images/themepreview.png'; |
|
903
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
907 |
var maxheight = getHeight() - 325; |
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
908 |
$('#theme-selector-inner > ul') |
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
909 |
.css('clip', 'rect(0px, auto, auto, 0px)') |
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
910 |
.css('overflow', 'auto') |
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
911 |
.css('max-height', maxheight) |
b8db9a7946fc
Theme selector: controls height now (limits box to height of screen minus a few px of padding) if there are lots of themes
Dan
parents:
889
diff
changeset
|
912 |
.append('<li id="theme_' + i + '"><a href="#"><span></span></a></li>'); |
870 | 913 |
$('#theme-selector-inner li#theme_' + i + ' > a') |
914 |
.css('background-image', 'url(' + bgi + ')') |
|
915 |
.attr('enano:theme_id', data[i].theme_id); |
|
916 |
$('#theme-selector-inner li#theme_' + i + ' > a > span') |
|
917 |
.text(data[i].theme_name); |
|
918 |
} |
|
919 |
$('#theme-selector-inner').append('<span class="menuclear"></span>'); |
|
920 |
$('#theme-selector-inner').append('<div style="padding-top: 40px;"><a class="abutton abutton_green" style="font-size: larger;" href="#" onclick="ajaxChangeStyleClose(); return false;">' + $lang.get('etc_cancel') + '</a></div>'); |
|
921 |
||
922 |
$('#theme-selector-body').animate({ height: $('#theme-selector-inner').height() + 30 }, 600, function() |
|
923 |
{ |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
924 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
925 |
opacity('theme-selector-inner', 0, 100, 750); |
870 | 926 |
}); |
927 |
||
928 |
$('#theme-selector-inner li a').click(function() |
|
929 |
{ |
|
930 |
var theme_id = $(this).attr('enano:theme_id'); |
|
931 |
$('span', this).html(' ').addClass('loading').fadeTo('fast', 0.6) |
|
932 |
$.get(stdAjaxPrefix + '&_mode=get_styles', { theme_id: theme_id }, function(data, status) |
|
933 |
{ |
|
934 |
if ( data.length > 1 ) |
|
935 |
{ |
|
936 |
$('#theme-selector-inner').css('height', $('#theme-selector-inner').height()).fadeOut(600, function() |
|
937 |
{ |
|
938 |
var div = document.createElement('div'); |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
939 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
940 |
domObjChangeOpac(0, div); |
870 | 941 |
|
942 |
$(div).attr('id', 'theme-selector-style-list').append('<h3></h3>'); |
|
943 |
$('h3', div).text($lang.get('ajax_thmsel_lbl_choosestyle')); |
|
944 |
||
945 |
for ( var i = 0; i < data.length; i++ ) |
|
946 |
{ |
|
947 |
$(div).append('<a class="abutton block stylebtn" id="stylebtn_' + i + '" enano:style_id="' + data[i] + '">' + themeid_to_title(data[i]) + '</a>'); |
|
948 |
} |
|
949 |
||
950 |
$(div).append('<div style="padding-top: 40px;"><a class="abutton abutton_green" style="font-size: larger;" href="#" onclick="ajaxChangeStyleClose(); return false;">' + $lang.get('etc_cancel') + '</a></div>'); |
|
951 |
||
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
952 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
953 |
changeOpac(0, 'theme-selector-style-list'); |
870 | 954 |
$(this).html(div).show(); |
955 |
||
956 |
$('#theme-selector-body').animate({width: 300, height: $('#theme-selector-style-list').height() + 30}, 300, function() |
|
957 |
{ |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
958 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
959 |
opacity('theme-selector-style-list', 0, 100, 500); |
870 | 960 |
}); |
961 |
||
962 |
$('.stylebtn').click(function() |
|
963 |
{ |
|
964 |
ajaxChangeThemeSetLoading(); |
|
965 |
$.post(stdAjaxPrefix + '&_mode=change_theme', { theme_id: theme_id, style_id: $(this).attr('enano:style_id') }, function(data, status) |
|
966 |
{ |
|
967 |
if ( data.error ) |
|
968 |
{ |
|
969 |
alert(data.error); |
|
970 |
ajaxChangeStyleClose(); |
|
971 |
return false; |
|
972 |
} |
|
973 |
ajaxChangeThemeShowSuccess(); |
|
974 |
}, 2000); |
|
975 |
||
976 |
return false; |
|
977 |
}); |
|
978 |
}); |
|
979 |
} |
|
980 |
else |
|
981 |
{ |
|
982 |
if ( !data[0] ) |
|
983 |
{ |
|
984 |
alert('Didn\'t find any CSS files. :-/'); |
|
985 |
ajaxChangeStyleClose(); |
|
986 |
} |
|
987 |
||
988 |
$.post(stdAjaxPrefix + '&_mode=change_theme', { theme_id: theme_id, style_id: data[0] }, function(data, status) |
|
989 |
{ |
|
990 |
if ( data.error ) |
|
991 |
{ |
|
992 |
alert(data.error); |
|
993 |
ajaxChangeStyleClose(); |
|
994 |
return false; |
|
995 |
} |
|
996 |
ajaxChangeThemeShowSuccess(); |
|
997 |
}, 'json'); |
|
998 |
} |
|
999 |
}, 'json'); |
|
1000 |
return false; |
|
1001 |
}); // click function |
|
1002 |
}); // animate |
|
1003 |
}, 'json'); // get |
|
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1004 |
} |
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1005 |
|
870 | 1006 |
window.ajaxChangeThemeSetLoading = function() |
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1007 |
{ |
870 | 1008 |
$('#theme-selector-body').animate({width: 130, height: 130}); |
1009 |
$('#theme-selector-inner').empty().html('<div class="theme-selector-spinner"></div>'); |
|
1010 |
} |
|
1011 |
||
1012 |
window.ajaxChangeThemeShowSuccess = function() |
|
1013 |
{ |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1014 |
if ( aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1015 |
{ |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1016 |
$('#theme-selector-inner').empty(); |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1017 |
} |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1018 |
else |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1019 |
{ |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1020 |
setTimeout(function() |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1021 |
{ |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1022 |
$('#theme-selector-inner').empty(); |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1023 |
}, 10); |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1024 |
} |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1025 |
|
870 | 1026 |
$('#theme-selector-body').animate({width: 400, height: 300 }, 600, function() |
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1027 |
{ |
870 | 1028 |
$('#theme-selector-inner').append('<img src="' + cdnPath + '/images/check-large.png" alt=" " style="display: block; margin: 15px auto;" />'); |
1029 |
$('#theme-selector-inner').append('<h3>' + $lang.get('ajax_thmsel_msg_success') + '</h3>'); |
|
1030 |
$('#theme-selector-inner').append('<div style="padding-top: 20px;"><a class="abutton abutton_green" style="font-size: larger;" href="#" onclick="window.location.reload(); return false;">' + $lang.get('ajax_thmsel_btn_reload') + '</a></div>'); |
|
1031 |
$('#theme-selector-inner').append('<div style="padding-top: 25px;"><a href="#" style="font-size: smaller;" onclick="ajaxChangeStyleClose(); return false;">' + $lang.get('ajax_thmsel_btn_close') + '</a><br /><small>' + $lang.get('ajax_thmsel_btn_close_hint') + '</small></div>'); |
|
1032 |
$('#theme-selector-inner').fadeIn(); |
|
1033 |
}); |
|
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1034 |
} |
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1035 |
|
870 | 1036 |
window.ajaxChangeStyleClose = function() |
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1037 |
{ |
870 | 1038 |
setTimeout(function() |
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1039 |
{ |
870 | 1040 |
enlighten(false, 'theme-selector-shade'); |
1041 |
$('#theme-selector-wrapper').fadeOut(500, function() |
|
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1042 |
{ |
870 | 1043 |
$(this).remove(); |
1044 |
}); |
|
889
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1045 |
}, ( aclDisableTransitionFX ? 0 : 300)); |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1046 |
if ( !aclDisableTransitionFX ) |
7e933a5c860b
Made aclDisableTransitionFX also switch on jQuery.fx.off; made theme switcher work with said jQuery switch
Dan
parents:
881
diff
changeset
|
1047 |
opacity('theme-selector-inner', 100, 0, 250); |
29
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1048 |
} |
e5484a9e0818
Rewrote change theme dialog; a few minor stability fixes here and there; fixed IE + St Patty background image
Dan
parents:
28
diff
changeset
|
1049 |
|
870 | 1050 |
function themeid_to_title(id) |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1051 |
{ |
870 | 1052 |
if ( typeof(id) != 'string' ) |
1053 |
return false; |
|
1054 |
id = id.substr(0, 1).toUpperCase() + id.substr(1); |
|
1055 |
id = id.replace(/_/g, ' '); |
|
1056 |
id = id.replace(/-/g, ' '); |
|
1057 |
return id; |
|
1 | 1058 |
} |
1059 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1060 |
window.ajaxSetPassword = function() |
1 | 1061 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1062 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1063 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1064 |
return true; |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1065 |
load_component('crypto'); |
1 | 1066 |
pass = hex_sha1(document.getElementById('mdgPassSetField').value); |
1067 |
setAjaxLoading(); |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1068 |
ajaxPost(stdAjaxPrefix+'&_mode=setpass', 'password='+pass, function(ajax) |
1 | 1069 |
{ |
1070 |
unsetAjaxLoading(); |
|
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1071 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
1 | 1072 |
{ |
1073 |
alert(ajax.responseText); |
|
1074 |
} |
|
335
67bd3121a12e
Replaced TinyMCE 2.x with 3.0 beta 3. Supports everything but IE. Also rewrote the editor interface completely from the ground up.
Dan
parents:
329
diff
changeset
|
1075 |
}, true); |
1 | 1076 |
} |
1077 |
||
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1078 |
window.ajaxDisableEmbeddedPHP = function() |
11
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1079 |
{ |
57
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1080 |
// IE <6 pseudo-compatibility |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1081 |
if ( KILL_SWITCH ) |
b354deeaa4c4
Vastly improved compatibility with older versions of IE, particularly 5.0, through the use of a kill switch that turns off all AJAX functions
Dan
parents:
40
diff
changeset
|
1082 |
return true; |
214 | 1083 |
if ( !confirm($lang.get('ajax_killphp_confirm')) ) |
11
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1084 |
return false; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1085 |
var $killdiv = $dynano('php_killer'); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1086 |
if ( !$killdiv.object ) |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1087 |
{ |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1088 |
alert('Can\'t get kill div object'); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1089 |
return false; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1090 |
} |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1091 |
$killdiv.object.innerHTML = '<img alt="Loading..." src="' + scriptPath + '/images/loading-big.gif" /><br />Making request...'; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1092 |
var url = makeUrlNS('Admin', 'Home', 'src=ajax'); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1093 |
ajaxPost(url, 'act=kill_php', function(ajax) { |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1094 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
11
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1095 |
{ |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1096 |
if ( ajax.responseText == '1' ) |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1097 |
{ |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1098 |
var $killdiv = $dynano('php_killer'); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1099 |
//$killdiv.object.innerHTML = '<img alt="Success" src="' + scriptPath + '/images/error.png" /><br />Embedded PHP in pages has been disabled.'; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1100 |
$killdiv.object.parentNode.removeChild($killdiv.object); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1101 |
var newdiv = document.createElement('div'); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1102 |
// newdiv.style = $killdiv.object.style; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1103 |
newdiv.className = $killdiv.object.className; |
214 | 1104 |
newdiv.innerHTML = '<img alt="Success" src="' + scriptPath + '/images/error.png" /><br />' + $lang.get('ajax_killphp_success'); |
11
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1105 |
$killdiv.object.parentNode.appendChild(newdiv); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1106 |
$killdiv.object.parentNode.removeChild($killdiv.object); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1107 |
} |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1108 |
else |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1109 |
{ |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1110 |
var $killdiv = $dynano('php_killer'); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1111 |
$killdiv.object.innerHTML = ajax.responseText; |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1112 |
} |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1113 |
} |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1114 |
}); |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1115 |
} |
ccad6026a168
Finalized permissions on files and directories; adding PHP shutoff button (actual shutoff not implemented)
Dan
parents:
1
diff
changeset
|
1116 |
|
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1117 |
var catHTMLBuf = false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1118 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1119 |
window.ajaxCatToTag = function() |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1120 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1121 |
if ( KILL_SWITCH ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1122 |
return false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1123 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1124 |
ajaxGet(stdAjaxPrefix + '&_mode=get_tags', function(ajax) |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1125 |
{ |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1126 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1127 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1128 |
unsetAjaxLoading(); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1129 |
var resptext = String(ajax.responseText + ' '); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1130 |
resptext = resptext.substr(0, resptext.length-1); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1131 |
if ( resptext.substr(0, 1) != '{' ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1132 |
{ |
320
112debff64bd
SURPRISE! Preliminary PostgreSQL support added. The required schema file is not present in this commit and will be included at a later date. No installer support is implemented. Also in this commit: several fixes including <!-- SYSMSG ... --> was broken in template compiler; set fixed width on included images to prevent the thumbnail box from getting huge; added a much more friendly interface to AJAX responses that are invalid JSON
Dan
parents:
298
diff
changeset
|
1133 |
handle_invalid_json(resptext); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1134 |
return false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1135 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1136 |
var json = parseJSON(resptext); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1137 |
var catbox = document.getElementById('mdgCatBox'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1138 |
if ( !catbox ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1139 |
return false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1140 |
var linkbox = catbox.parentNode.firstChild.firstChild.nextSibling; |
214 | 1141 |
linkbox.firstChild.nodeValue = $lang.get('catedit_catbox_link_showcategorization'); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1142 |
linkbox.onclick = function() { ajaxTagToCat(); return false; }; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1143 |
catHTMLBuf = catbox.innerHTML; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1144 |
catbox.innerHTML = ''; |
214 | 1145 |
catbox.appendChild(document.createTextNode($lang.get('tags_lbl_page_tags')+' ')); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1146 |
if ( json.tags.length < 1 ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1147 |
{ |
214 | 1148 |
catbox.appendChild(document.createTextNode($lang.get('tags_lbl_no_tags'))); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1149 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1150 |
for ( var i = 0; i < json.tags.length; i++ ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1151 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1152 |
catbox.appendChild(document.createTextNode(json.tags[i].name)); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1153 |
if ( json.tags[i].can_del ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1154 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1155 |
catbox.appendChild(document.createTextNode(' ')); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1156 |
var a = document.createElement('a'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1157 |
a.appendChild(document.createTextNode('[X]')); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1158 |
a.href = '#'; |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1159 |
a._js_tag_id = json.tags[i].id; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1160 |
a.onclick = function() { ajaxDeleteTag(this, this._js_tag_id); return false; } |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1161 |
catbox.appendChild(a); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1162 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1163 |
if ( ( i + 1 ) < json.tags.length ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1164 |
catbox.appendChild(document.createTextNode(', ')); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1165 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1166 |
if ( json.can_add ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1167 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1168 |
catbox.appendChild(document.createTextNode(' ')); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1169 |
var addlink = document.createElement('a'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1170 |
addlink.href = '#'; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1171 |
addlink.onclick = function() { try { ajaxAddTagStage1(); } catch(e) { }; return false; }; |
214 | 1172 |
addlink.appendChild(document.createTextNode($lang.get('tags_btn_add_tag'))); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1173 |
catbox.appendChild(addlink); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1174 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1175 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1176 |
}); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1177 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1178 |
|
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1179 |
var addtag_open = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1180 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1181 |
window.ajaxAddTagStage1 = function() |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1182 |
{ |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1183 |
if ( addtag_open ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1184 |
return false; |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1185 |
var catbox = document.getElementById('mdgCatBox'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1186 |
var adddiv = document.createElement('div'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1187 |
var text = document.createElement('input'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1188 |
var addlink = document.createElement('a'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1189 |
addlink.href = '#'; |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1190 |
addlink.onclick = function() { ajaxAddTagStage2(this.parentNode.firstChild.nextSibling.value, this.parentNode); return false; }; |
214 | 1191 |
addlink.appendChild(document.createTextNode($lang.get('tags_btn_add'))); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1192 |
text.type = 'text'; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1193 |
text.size = '15'; |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1194 |
text.onkeyup = function(e) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1195 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1196 |
if ( e.keyCode == 13 ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1197 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1198 |
ajaxAddTagStage2(this.value, this.parentNode); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1199 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1200 |
} |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1201 |
|
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1202 |
adddiv.style.margin = '5px 0 0 0'; |
214 | 1203 |
adddiv.appendChild(document.createTextNode($lang.get('tags_lbl_add_tag')+' ')); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1204 |
adddiv.appendChild(text); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1205 |
adddiv.appendChild(document.createTextNode(' ')); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1206 |
adddiv.appendChild(addlink); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1207 |
catbox.appendChild(adddiv); |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1208 |
addtag_open = true; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1209 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1210 |
|
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1211 |
var addtag_nukeme = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1212 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1213 |
window.ajaxAddTagStage2 = function(tag, nukeme) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1214 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1215 |
if ( !addtag_open ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1216 |
return false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1217 |
if ( addtag_nukeme ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1218 |
return false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1219 |
addtag_nukeme = nukeme; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1220 |
tag = ajaxEscape(tag); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1221 |
setAjaxLoading(); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1222 |
ajaxPost(stdAjaxPrefix + '&_mode=addtag', 'tag=' + tag, function(ajax) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1223 |
{ |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1224 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1225 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1226 |
unsetAjaxLoading(); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1227 |
var nukeme = addtag_nukeme; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1228 |
addtag_nukeme = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1229 |
var resptext = String(ajax.responseText + ' '); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1230 |
resptext = resptext.substr(0, resptext.length-1); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1231 |
if ( resptext.substr(0, 1) != '{' ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1232 |
{ |
320
112debff64bd
SURPRISE! Preliminary PostgreSQL support added. The required schema file is not present in this commit and will be included at a later date. No installer support is implemented. Also in this commit: several fixes including <!-- SYSMSG ... --> was broken in template compiler; set fixed width on included images to prevent the thumbnail box from getting huge; added a much more friendly interface to AJAX responses that are invalid JSON
Dan
parents:
298
diff
changeset
|
1233 |
handle_invalid_json(resptext); |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1234 |
return false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1235 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1236 |
var json = parseJSON(resptext); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1237 |
var parent = nukeme.parentNode; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1238 |
parent.removeChild(nukeme); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1239 |
addtag_open = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1240 |
if ( json.success ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1241 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1242 |
var node = parent.childNodes[1]; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1243 |
var insertafter = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1244 |
var nukeafter = false; |
214 | 1245 |
if ( node.nodeValue == $lang.get('tags_lbl_no_tags') ) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1246 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1247 |
nukeafter = true; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1248 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1249 |
insertafter = parent.childNodes[ parent.childNodes.length - 3 ]; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1250 |
// these need to be inserted in reverse order |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1251 |
if ( json.can_del ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1252 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1253 |
var a = document.createElement('a'); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1254 |
a.appendChild(document.createTextNode('[X]')); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1255 |
a.href = '#'; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1256 |
a._js_tag_id = json.tag_id; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1257 |
a.onclick = function() { ajaxDeleteTag(this, this._js_tag_id); return false; } |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1258 |
insertAfter(parent, a, insertafter); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1259 |
insertAfter(parent, document.createTextNode(' '), insertafter); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1260 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1261 |
insertAfter(parent, document.createTextNode(json.tag), insertafter); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1262 |
if ( !nukeafter ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1263 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1264 |
insertAfter(parent, document.createTextNode(', '), insertafter); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1265 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1266 |
if ( nukeafter ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1267 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1268 |
parent.removeChild(insertafter); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1269 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1270 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1271 |
else |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1272 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1273 |
alert(json.error); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1274 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1275 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1276 |
}); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1277 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1278 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1279 |
window.ajaxDeleteTag = function(parentobj, tag_id) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1280 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1281 |
var arrDelete = [ parentobj, parentobj.previousSibling, parentobj.previousSibling.previousSibling ]; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1282 |
var parent = parentobj.parentNode; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1283 |
var writeNoTags = false; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1284 |
if ( parentobj.previousSibling.previousSibling.previousSibling.nodeValue == ', ' ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1285 |
arrDelete.push(parentobj.previousSibling.previousSibling.previousSibling); |
214 | 1286 |
else if ( parentobj.previousSibling.previousSibling.previousSibling.nodeValue == $lang.get('tags_lbl_page_tags') + ' ' ) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1287 |
arrDelete.push(parentobj.nextSibling); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1288 |
|
214 | 1289 |
if ( parentobj.previousSibling.previousSibling.previousSibling.nodeValue == $lang.get('tags_lbl_page_tags') + ' ' && |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1290 |
parentobj.nextSibling.nextSibling.firstChild ) |
214 | 1291 |
if ( parentobj.nextSibling.nextSibling.firstChild.nodeValue == $lang.get('tags_btn_add_tag')) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1292 |
writeNoTags = true; |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1293 |
|
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1294 |
ajaxPost(stdAjaxPrefix + '&_mode=deltag', 'tag_id=' + String(tag_id), function(ajax) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1295 |
{ |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1296 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1297 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1298 |
if ( ajax.responseText == 'success' ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1299 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1300 |
for ( var i = 0; i < arrDelete.length; i++ ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1301 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1302 |
try |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1303 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1304 |
parent.removeChild(arrDelete[i]); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1305 |
} catch(e) {} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1306 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1307 |
if ( writeNoTags ) |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1308 |
{ |
214 | 1309 |
var node1 = document.createTextNode($lang.get('tags_lbl_no_tags')); |
80
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1310 |
var node2 = document.createTextNode(' '); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1311 |
insertAfter(parent, node1, parent.firstChild); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1312 |
insertAfter(parent, node2, node1); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1313 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1314 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1315 |
else |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1316 |
{ |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1317 |
alert(ajax.responseText); |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1318 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1319 |
} |
cb7dde69c301
Improved and enabled HTML optimization algorithm; enabled gzip compression; added but did not test at all the tag cloud class in includes/tagcloud.php, this is still very preliminary and not ready for any type of production use
Dan
parents:
78
diff
changeset
|
1320 |
}); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1321 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1322 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1323 |
window.ajaxTagToCat = function() |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1324 |
{ |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1325 |
if ( !catHTMLBuf ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1326 |
return false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1327 |
var catbox = document.getElementById('mdgCatBox'); |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1328 |
if ( !catbox ) |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1329 |
return false; |
87
570f68c3fe36
Redid stupid fading button code and fixed several RC2 bugs in the upgrade schema; 1.0.1 release candidate
Dan
parents:
80
diff
changeset
|
1330 |
addtag_open = false; |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1331 |
var linkbox = catbox.parentNode.firstChild.firstChild.nextSibling; |
214 | 1332 |
linkbox.firstChild.nodeValue = $lang.get('tags_catbox_link'); |
76
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1333 |
linkbox.onclick = function() { ajaxCatToTag(); return false; }; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1334 |
catbox.innerHTML = catHTMLBuf; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1335 |
catHTMLBuf = false; |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1336 |
} |
608dee512bf0
Work started on page tags, still aways to go, but syncing to Nighthawk
Dan
parents:
60
diff
changeset
|
1337 |
|
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1338 |
var keepalive_interval = false; |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1339 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1340 |
window.ajaxPingServer = function() |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1341 |
{ |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1342 |
ajaxGet(stdAjaxPrefix + '&_mode=ping', function(ajax) |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1343 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1344 |
}); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1345 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1346 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1347 |
window.ajaxToggleKeepalive = function() |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1348 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1349 |
if ( readCookie('admin_keepalive') == '1' ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1350 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1351 |
createCookie('admin_keepalive', '0', 3650); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1352 |
if ( keepalive_interval ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1353 |
clearInterval(keepalive_interval); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1354 |
var span = document.getElementById('keepalivestat'); |
211 | 1355 |
span.firstChild.nodeValue = $lang.get('adm_btn_keepalive_off'); |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1356 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1357 |
else |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1358 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1359 |
createCookie('admin_keepalive', '1', 3650); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1360 |
if ( !keepalive_interval ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1361 |
keepalive_interval = setInterval('ajaxPingServer();', 600000); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1362 |
var span = document.getElementById('keepalivestat'); |
211 | 1363 |
span.firstChild.nodeValue = $lang.get('adm_btn_keepalive_on'); |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1364 |
ajaxPingServer(); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1365 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1366 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1367 |
|
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1368 |
var keepalive_onload = function() |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1369 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1370 |
if ( readCookie('admin_keepalive') == '1' ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1371 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1372 |
if ( !keepalive_interval ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1373 |
keepalive_interval = setInterval('ajaxPingServer();', 600000); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1374 |
var span = document.getElementById('keepalivestat'); |
211 | 1375 |
span.firstChild.nodeValue = $lang.get('adm_btn_keepalive_on'); |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1376 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1377 |
else |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1378 |
{ |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1379 |
if ( keepalive_interval ) |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1380 |
clearInterval(keepalive_interval); |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1381 |
var span = document.getElementById('keepalivestat'); |
211 | 1382 |
span.firstChild.nodeValue = $lang.get('adm_btn_keepalive_off'); |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1383 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1384 |
}; |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1385 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1386 |
window.aboutKeepAlive = function() |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1387 |
{ |
779
609e35845ec3
load_component() now accepts an array, and most JS components are loaded all in one request now. Totally modular baby. And failsafe too.
Dan
parents:
699
diff
changeset
|
1388 |
load_component(['messagebox', 'flyin', 'fadefilter']); |
550
685e839d934e
Added ability to delete the draft revision; [SECURITY] fixed lack of permission check on draft save; renamed messagebox() constructor to MessageBox() (backward compat. maintained)
Dan
parents:
539
diff
changeset
|
1389 |
new MessageBox(MB_OK|MB_ICONINFORMATION, $lang.get('user_keepalive_info_title'), $lang.get('user_keepalive_info_body')); |
118
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1390 |
} |
0c5efda996bf
Added keep-alive function to admin panel (had been planned for some time) and a new hook, template_var_init_end
Dan
parents:
103
diff
changeset
|
1391 |
|
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1392 |
window.ajaxUpdateCheck = function(targetelement) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1393 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1394 |
if ( !document.getElementById(targetelement) ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1395 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1396 |
return false; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1397 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1398 |
var target = document.getElementById(targetelement); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1399 |
target.innerHTML = ''; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1400 |
var img = document.createElement('img'); |
650
e45183014778
Added CDN support: a URL to a CDN can now be specified and Enano will load all images, CSS, and javascript (except TinyMCE) from that server
Dan
parents:
592
diff
changeset
|
1401 |
img.src = cdnPath + '/images/loading.gif'; |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1402 |
img.alt = 'Loading...'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1403 |
target.appendChild(img); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1404 |
ajaxGet(makeUrlNS('Admin', 'Home/updates.xml'), function(ajax) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1405 |
{ |
407
35d94240a197
Mass-fixed all AJAX functions to also check the HTTP status code before parsing the response
Dan
parents:
343
diff
changeset
|
1406 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1407 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1408 |
var releases = new Array(); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1409 |
var update_available = false; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1410 |
if ( ajax.responseXML == null ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1411 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1412 |
alert("Error fetching updates list:\n" + ajax.responseText); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1413 |
return false; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1414 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1415 |
if ( ajax.responseXML.firstChild.tagName == 'enano' ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1416 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1417 |
var enanotag = ajax.responseXML.firstChild; |
335
67bd3121a12e
Replaced TinyMCE 2.x with 3.0 beta 3. Supports everything but IE. Also rewrote the editor interface completely from the ground up.
Dan
parents:
329
diff
changeset
|
1418 |
for ( var i = 0; i < enanotag.childNodes.length; i++ ) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1419 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1420 |
if ( enanotag.childNodes[i].tagName == 'error' ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1421 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1422 |
alert(enanotag.childNodes[i].firstChild.nodeValue); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1423 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1424 |
else if ( enanotag.childNodes[i].tagName == 'latest' ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1425 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1426 |
// got <latest> |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1427 |
var latesttag = enanotag.childNodes[i]; |
343
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1428 |
for ( var j = 0; j < latesttag.childNodes.length; j++ ) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1429 |
{ |
343
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1430 |
var node = latesttag.childNodes[j]; |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1431 |
if ( node.tagName == 'release' ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1432 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1433 |
var releasedata = new Object(); |
343
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1434 |
for ( var k = 0; k < node.attributes.length; k++ ) |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1435 |
{ |
343
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1436 |
releasedata[node.attributes[k].nodeName] = node.attributes[k].nodeValue; |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1437 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1438 |
releases.push(releasedata); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1439 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1440 |
else if ( node.tagName == 'haveupdates' ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1441 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1442 |
update_available = true; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1443 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1444 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1445 |
break; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1446 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1447 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1448 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1449 |
else |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1450 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1451 |
return false; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1452 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1453 |
var thediv = document.getElementById(targetelement); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1454 |
thediv.innerHTML = ''; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1455 |
if ( !thediv ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1456 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1457 |
return false; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1458 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1459 |
if ( releases.length > 0 ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1460 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1461 |
thediv.className = 'tblholder'; |
946 | 1462 |
// FIXME: l10n |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1463 |
if ( update_available ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1464 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1465 |
var infobox = document.createElement('div'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1466 |
infobox.className = 'info-box-mini'; |
335
67bd3121a12e
Replaced TinyMCE 2.x with 3.0 beta 3. Supports everything but IE. Also rewrote the editor interface completely from the ground up.
Dan
parents:
329
diff
changeset
|
1467 |
infobox.appendChild(document.createTextNode('An update for Enano is available. The newest release is highlighted below.')); |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1468 |
infobox.style.borderWidth = '0'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1469 |
infobox.style.margin = '0 0 0 0'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1470 |
thediv.appendChild(infobox); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1471 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1472 |
else |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1473 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1474 |
var infobox = document.createElement('div'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1475 |
infobox.className = 'info-box-mini'; |
335
67bd3121a12e
Replaced TinyMCE 2.x with 3.0 beta 3. Supports everything but IE. Also rewrote the editor interface completely from the ground up.
Dan
parents:
329
diff
changeset
|
1476 |
infobox.appendChild(document.createTextNode('No new updates are available. The latest available releases are shown below.')); |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1477 |
infobox.style.borderWidth = '0'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1478 |
infobox.style.margin = '0 0 0 0'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1479 |
thediv.appendChild(infobox); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1480 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1481 |
var table = document.createElement('table'); |
343
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1482 |
table.setAttribute('border', '0'); |
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1483 |
table.setAttribute('cellspacing', '1'); |
eefe9ab7fe7c
Localized the first parts of the admin panel. As a consequence, also wrote a brand new Admin:PageManager that doesn't suck like the old one did.
Dan
parents:
335
diff
changeset
|
1484 |
table.setAttribute('cellpadding', '4'); |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1485 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1486 |
var tr = document.createElement('tr'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1487 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1488 |
var td1 = document.createElement('th'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1489 |
var td2 = document.createElement('th'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1490 |
var td3 = document.createElement('th'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1491 |
var td4 = document.createElement('th'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1492 |
|
946 | 1493 |
// FIXME: l10n |
329
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1494 |
td1.appendChild( document.createTextNode('Release type') ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1495 |
td2.appendChild( document.createTextNode('Version') ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1496 |
td3.appendChild( document.createTextNode('Code name') ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1497 |
td4.appendChild( document.createTextNode('Release notes') ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1498 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1499 |
tr.appendChild(td1); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1500 |
tr.appendChild(td2); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1501 |
tr.appendChild(td3); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1502 |
tr.appendChild(td4); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1503 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1504 |
table.appendChild(tr); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1505 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1506 |
var cls = 'row2'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1507 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1508 |
var j = 0; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1509 |
for ( var i in releases ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1510 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1511 |
j++; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1512 |
if ( j > 5 ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1513 |
break; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1514 |
if ( update_available && j == 1 ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1515 |
cls = 'row1_green'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1516 |
else |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1517 |
cls = ( cls == 'row1' ) ? 'row2' : 'row1'; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1518 |
var release = releases[i]; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1519 |
var tr = document.createElement('tr'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1520 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1521 |
var td1 = document.createElement('td'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1522 |
var td2 = document.createElement('td'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1523 |
var td3 = document.createElement('td'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1524 |
var td4 = document.createElement('td'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1525 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1526 |
td1.className = cls; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1527 |
td2.className = cls; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1528 |
td3.className = cls; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1529 |
td4.className = cls; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1530 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1531 |
if ( release.tag ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1532 |
td1.appendChild( document.createTextNode(release.tag) ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1533 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1534 |
if ( release.version ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1535 |
td2.appendChild( document.createTextNode(release.version) ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1536 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1537 |
if ( release.codename ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1538 |
td3.appendChild( document.createTextNode(release.codename) ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1539 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1540 |
if ( release.relnotes ) |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1541 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1542 |
var a = document.createElement('a'); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1543 |
a.href = release.relnotes; |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1544 |
a.appendChild(document.createTextNode('View')); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1545 |
td4.appendChild( a ); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1546 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1547 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1548 |
tr.appendChild(td1); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1549 |
tr.appendChild(td2); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1550 |
tr.appendChild(td3); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1551 |
tr.appendChild(td4); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1552 |
|
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1553 |
table.appendChild(tr); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1554 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1555 |
thediv.appendChild(table); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1556 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1557 |
else |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1558 |
{ |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1559 |
thediv.appendChild(document.createTextNode('No releases available.')); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1560 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1561 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1562 |
}); |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1563 |
} |
0437a7cf1acc
Added update-checking function (still a little rough around the edges); added support into admin user CP for changing avatars
Dan
parents:
326
diff
changeset
|
1564 |
|
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1565 |
window.ajaxPluginAction = function(action, plugin_filename, btnobj, send_confirm) |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1566 |
{ |
560 | 1567 |
// if installing, uninstalling, or re-importing, confirm |
1568 |
if ( action == 'install' || action == 'uninstall' || action == 'reimport' ) |
|
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1569 |
{ |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1570 |
var prompt = miniPrompt(function(div) |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1571 |
{ |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1572 |
var txtholder = document.createElement('div'); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1573 |
txtholder.style.textAlign = 'center'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1574 |
txtholder.appendChild(document.createTextNode($lang.get('acppl_msg_confirm_' + action))); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1575 |
txtholder.appendChild(document.createElement('br')); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1576 |
txtholder.appendChild(document.createElement('br')); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1577 |
|
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1578 |
// create buttons |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1579 |
var btn_go = document.createElement('a'); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1580 |
btn_go.className = 'abutton abutton_red'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1581 |
btn_go.href = '#'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1582 |
btn_go._action = action; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1583 |
btn_go._filename = plugin_filename; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1584 |
btn_go._button = btnobj; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1585 |
btn_go.appendChild(document.createTextNode($lang.get('acppl_btn_' + action))); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1586 |
btn_go.style.fontWeight = 'bold'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1587 |
txtholder.appendChild(btn_go); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1588 |
|
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1589 |
// space |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1590 |
txtholder.appendChild(document.createTextNode(' ')); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1591 |
|
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1592 |
// cancel |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1593 |
var btn_cancel = document.createElement('a'); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1594 |
btn_cancel.className = 'abutton abutton_blue'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1595 |
btn_cancel.href = '#'; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1596 |
btn_cancel.appendChild(document.createTextNode($lang.get('etc_cancel'))); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1597 |
|
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1598 |
txtholder.appendChild(btn_cancel); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1599 |
div.appendChild(txtholder); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1600 |
|
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1601 |
btn_go.onclick = function() |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1602 |
{ |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1603 |
ajaxPluginAction(this._action + '_confirm', this._filename, this._button); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1604 |
miniPromptDestroy(this); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1605 |
return false; |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1606 |
}; |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1607 |
btn_cancel.onclick = function() |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1608 |
{ |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1609 |
miniPromptDestroy(this); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1610 |
return false; |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1611 |
}; |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1612 |
}); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1613 |
return true; |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1614 |
} |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1615 |
action = action.replace(/_confirm$/, ''); |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1616 |
// white-out the plugin info box |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1617 |
if ( btnobj ) |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1618 |
{ |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1619 |
var td = btnobj.parentNode.parentNode.parentNode.parentNode; |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1620 |
var blackbox = whiteOutElement(td); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1621 |
} |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1622 |
var request = { |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1623 |
mode: action, |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1624 |
plugin: plugin_filename |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1625 |
}; |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1626 |
if ( send_confirm ) |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1627 |
{ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1628 |
request.install_confirmed = true; |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1629 |
} |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1630 |
request = toJSONString(request); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1631 |
ajaxPost(makeUrlNS('Admin', 'PluginManager/action.json'), 'r=' + ajaxEscape(request), function(ajax) |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1632 |
{ |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1633 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1634 |
{ |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1635 |
var response = String(ajax.responseText + ''); |
651
ce9d78d7251d
Improved JSON validation and error interface when validation fails; made rank manager support custom CSS
Dan
parents:
650
diff
changeset
|
1636 |
if ( !check_json_response(response) ) |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1637 |
{ |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1638 |
handle_invalid_json(response); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1639 |
return false; |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1640 |
} |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1641 |
response = parseJSON(response); |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1642 |
if ( blackbox ) |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1643 |
{ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1644 |
blackbox.parentNode.removeChild(blackbox); |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1645 |
} |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1646 |
if ( response.success ) |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1647 |
{ |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1648 |
ajaxPage( namespace_list['Admin'] + 'PluginManager' ); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1649 |
return true; |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1650 |
} |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1651 |
if ( response.need_confirm ) |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1652 |
{ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1653 |
miniPromptMessage({ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1654 |
title: $lang.get(response.confirm_title), |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1655 |
message: $lang.get(response.confirm_body), |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1656 |
buttons: [ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1657 |
{ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1658 |
text: $lang.get('acppl_btn_install'), |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1659 |
color: 'red', |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1660 |
style: { |
1053
bdbb49cf6f1b
One word: Internet Explorer 6. This includes a rewrite of $paths->parseAdminTree() that encodes to JSON instead of manually generating JS, so good-bye to stupid parser problems I hope.
Dan
parents:
946
diff
changeset
|
1661 |
fontWeight: 'bold' |
869
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1662 |
}, |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1663 |
onclick: function() { |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1664 |
ajaxPluginAction(action + '_confirm', plugin_filename, btnobj, true); |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1665 |
miniPromptDestroy(this); |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1666 |
} |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1667 |
}, |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1668 |
{ |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1669 |
text: $lang.get('etc_cancel'), |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1670 |
color: 'blue', |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1671 |
onclick: function() { |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1672 |
miniPromptDestroy(this); |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1673 |
} |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1674 |
} |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1675 |
] |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1676 |
}); |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1677 |
return true; |
58bc29c14a4d
Plugins: Added checks and additional warning for authentication plugins.
Dan
parents:
823
diff
changeset
|
1678 |
} |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1679 |
// wait for fade effect to finish its run |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1680 |
setTimeout(function() |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1681 |
{ |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1682 |
miniPrompt(function(div) |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1683 |
{ |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1684 |
if ( blackbox ) |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1685 |
{ |
527
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1686 |
blackbox.parentNode.removeChild(blackbox); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1687 |
} |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1688 |
var txtholder = document.createElement('div'); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1689 |
txtholder.style.textAlign = 'center'; |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1690 |
txtholder.appendChild(document.createTextNode(response.error)); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1691 |
txtholder.appendChild(document.createElement('br')); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1692 |
txtholder.appendChild(document.createElement('br')); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1693 |
|
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1694 |
// close button |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1695 |
var btn_cancel = document.createElement('a'); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1696 |
btn_cancel.className = 'abutton abutton_red'; |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1697 |
btn_cancel.href = '#'; |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1698 |
btn_cancel.appendChild(document.createTextNode($lang.get('etc_ok'))); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1699 |
|
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1700 |
txtholder.appendChild(btn_cancel); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1701 |
div.appendChild(txtholder); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1702 |
|
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1703 |
btn_cancel.onclick = function() |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1704 |
{ |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1705 |
miniPromptDestroy(this); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1706 |
return false; |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1707 |
} |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1708 |
}); |
21e11f564463
(Hopefully) finished new plugin manager and implemented the utilization of it. Still HIGHLY experimental.
Dan
parents:
526
diff
changeset
|
1709 |
}, 750); |
526
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1710 |
} |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1711 |
}); |
b2fb50d572c7
New plugin manager half-implemented. Most of the UI/frontend code is done. Moved sql_parse.php to /includes/ to allow use after installation - TODO: check installer, etc. for breakage
Dan
parents:
522
diff
changeset
|
1712 |
} |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1713 |
|
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1714 |
window.ajaxReverseDNS = function(o, text) |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1715 |
{ |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1716 |
if(text) var ipaddr = text; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1717 |
else var ipaddr = o.innerHTML; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1718 |
rDnsObj = o; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1719 |
rDnsBannerObj = bannerOn('Retrieving reverse DNS info...'); |
823
4596c40aaa94
AJAX core library: possible breaking change, readystatechange functions are now called with the XHR instance as the first parameter, to allow requests to run in parallel. This means much better stability but may break some applets (compatibility hack is included)
Dan
parents:
800
diff
changeset
|
1720 |
ajaxGet(stdAjaxPrefix+'&_mode=rdns&ip='+ipaddr, function(ajax) { |
582
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1721 |
if ( ajax.readyState == 4 && ajax.status == 200 ) |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1722 |
{ |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1723 |
off = fetch_offset(rDnsObj); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1724 |
dim = fetch_dimensions(rDnsObj); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1725 |
right = off['left'] + dim['w']; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1726 |
top = off['top'] + dim['h']; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1727 |
var thediv = document.createElement('div'); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1728 |
thediv.className = 'info-box'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1729 |
thediv.style.margin = '0'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1730 |
thediv.style.position = 'absolute'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1731 |
thediv.style.top = top + 'px'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1732 |
thediv.style.display = 'none'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1733 |
thediv.style.zIndex = getHighestZ() + 2; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1734 |
thediv.id = 'mdgDynamic_rDnsInfoDiv_'+Math.floor(Math.random() * 1000000); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1735 |
thediv.innerHTML = '<b>Reverse DNS:</b><br />'+ajax.responseText+' <a href="#" onclick="elem = document.getElementById(\''+thediv.id+'\'); elem.innerHTML = \'\'; elem.style.display = \'none\';return false;">Close</a>'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1736 |
var body = document.getElementsByTagName('body'); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1737 |
body = body[0]; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1738 |
bannerOff(rDnsBannerObj); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1739 |
body.appendChild(thediv); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1740 |
thediv.style.display = 'block'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1741 |
left = fetch_dimensions(thediv); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1742 |
thediv.style.display = 'none'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1743 |
left = right - left['w']; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1744 |
thediv.style.left = left + 'px'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1745 |
thediv.style.display = 'block'; |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1746 |
fadeInfoBoxes(); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1747 |
} |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1748 |
}); |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1749 |
} |
a38876c0793c
Majorly reworked Javascript runtime stuff to use on-demand loading.
Dan
parents:
581
diff
changeset
|
1750 |