1
+ − 1
/*
+ − 2
* Enano - an open source wiki-like CMS
+ − 3
* Copyright (C) 2006-2007 Dan Fuhry
+ − 4
* Javascript client library
+ − 5
*
+ − 6
* This program is Free Software; you can redistribute and/or modify it under the terms of the GNU General Public License
+ − 7
* as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
+ − 8
*
+ − 9
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+ − 10
* warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
+ − 11
*
86
c162ca39db8f
Finished pagination code (was incomplete in previous revision) and added a few hacks for an upcoming theme
Dan
diff
changeset
+ − 12
* For more information about Enano, please visit http://enanocms.org/.
420
+ − 13
* Unless otherwise noted, all of the code in these script files may be used freely so long as the above license block
+ − 14
* is displayed and your modified code is distributed in compliance with the GPL. See the special page "About Enano" on
+ − 15
* this website for more information.
1
+ − 16
*/
+ − 17
+ − 18
if(typeof title != 'string')
+ − 19
{
+ − 20
alert('Uh-oh! The required dynamic (PHP-generated) Javascript variables don\'t seem to be available. Javascript is going to be seriously broken.');
+ − 21
}
+ − 22
+ − 23
// Run-time variables
+ − 24
+ − 25
var detect = navigator.userAgent.toLowerCase();
+ − 26
var IE;
21
663fcf528726
Updated all version numbers back to Banshee; a few preliminary steps towards full UTF-8 support in page URLs
Dan
diff
changeset
+ − 27
var is_Safari;
1
+ − 28
+ − 29
// Detect whether the user is running the Evil One or not...
+ − 30
+ − 31
function checkIt(string) {
+ − 32
place = detect.indexOf(string) + 1;
+ − 33
thestring = string;
+ − 34
return place;
+ − 35
}
+ − 36
if (checkIt('msie')) IE = true;
+ − 37
else IE = false;
+ − 38
117
+ − 39
var is_Opera = ( checkIt('opera') ) ? true : false;
509
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 40
var is_iPhone = ( checkIt('iphone') || checkIt('ipod') ) ? true : false;
117
+ − 41
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
diff
changeset
+ − 42
var KILL_SWITCH = false;
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
diff
changeset
+ − 43
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
diff
changeset
+ − 44
if ( IE )
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
diff
changeset
+ − 45
{
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
diff
changeset
+ − 46
var version = window.navigator.appVersion;
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
diff
changeset
+ − 47
version = version.substr( ( version.indexOf('MSIE') + 5 ) );
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
diff
changeset
+ − 48
var rawversion = '';
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
diff
changeset
+ − 49
for ( var i = 0; i < version.length; i++ )
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
diff
changeset
+ − 50
{
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
diff
changeset
+ − 51
var chr = version.substr(i, 1);
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
diff
changeset
+ − 52
if ( !chr.match(/[0-9\.]/) )
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
diff
changeset
+ − 53
{
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
diff
changeset
+ − 54
break;
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
diff
changeset
+ − 55
}
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
diff
changeset
+ − 56
rawversion += chr;
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
diff
changeset
+ − 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
diff
changeset
+ − 58
rawversion = parseInt(rawversion);
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
diff
changeset
+ − 59
if ( rawversion < 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
diff
changeset
+ − 60
{
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
diff
changeset
+ − 61
KILL_SWITCH = true;
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
diff
changeset
+ − 62
}
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
diff
changeset
+ − 63
}
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
diff
changeset
+ − 64
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
diff
changeset
+ − 65
// dummy tinyMCE object
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
diff
changeset
+ − 66
var tinyMCE = new Object();
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
diff
changeset
+ − 67
348
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 68
if ( typeof(DISABLE_MCE) == undefined )
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 69
{
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 70
var DISABLE_MCE = false;
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 71
}
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 72
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
diff
changeset
+ − 73
// Obsolete JSON 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
diff
changeset
+ − 74
function disableJSONExts() { };
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
diff
changeset
+ − 75
21
663fcf528726
Updated all version numbers back to Banshee; a few preliminary steps towards full UTF-8 support in page URLs
Dan
diff
changeset
+ − 76
is_Safari = checkIt('safari') ? true : false;
663fcf528726
Updated all version numbers back to Banshee; a few preliminary steps towards full UTF-8 support in page URLs
Dan
diff
changeset
+ − 77
1
+ − 78
var cmt_open;
+ − 79
var list;
+ − 80
var edit_open = false;
+ − 81
var catlist = new Array();
+ − 82
var arrDiff1Buttons = new Array();
+ − 83
var arrDiff2Buttons = new Array();
+ − 84
var arrTimeIdList = new Array();
+ − 85
var list;
+ − 86
var unObj;
+ − 87
var unSelectMenuOn = false;
+ − 88
var unObjDivCurrentId = false;
+ − 89
var unObjCurrentSelection = false;
+ − 90
var userlist = new Array();
+ − 91
var submitAuthorized = true;
+ − 92
var rDnsObj;
+ − 93
var rDnsBannerObj;
+ − 94
var ns4 = document.layers;
+ − 95
var op5 = (navigator.userAgent.indexOf("Opera 5")!=-1) ||(navigator.userAgent.indexOf("Opera/5")!=-1);
+ − 96
var op6 = (navigator.userAgent.indexOf("Opera 6")!=-1) ||(navigator.userAgent.indexOf("Opera/6")!=-1);
+ − 97
var agt=navigator.userAgent.toLowerCase();
+ − 98
var mac = (agt.indexOf("mac")!=-1);
+ − 99
var ie = (agt.indexOf("msie") != -1);
+ − 100
var mac_ie = mac && ie;
+ − 101
var mouseX = 0;
+ − 102
var mouseY = 0;
+ − 103
var menuheight;
+ − 104
var inertiabase = 1;
+ − 105
var inertiainc = 1;
+ − 106
var slideintervalinc = 20;
+ − 107
var inertiabaseoriginal = inertiabase;
+ − 108
var heightnow;
+ − 109
var targetheight;
+ − 110
var block;
+ − 111
var slideinterval;
+ − 112
var divheights = new Array();
+ − 113
var __menutimeout = false;
+ − 114
var startmouseX = false;
+ − 115
var startmouseY = false;
+ − 116
var startScroll = false;
+ − 117
var is_dragging = false;
+ − 118
var current_ta = false;
+ − 119
var startwidth = false;
+ − 120
var startheight = false;
+ − 121
var do_width = false;
200
63fddf1335d9
Nothing real special. The AJAX loading icon can be changed using the Javascript variable ajax_load_icon in header.tpl.
Dan
diff
changeset
+ − 122
var ajax_load_icon = scriptPath + '/images/loading.gif';
473
518bc2b214f1
Added modal dialog support for page editor; added customizability for breadcrumbs (thanks to Manoj for idea)
Dan
diff
changeset
+ − 123
var editor_use_modal_window = false;
1
+ − 124
+ − 125
// You have an NSIS coder in your midst...
+ − 126
var MB_OK = 1;
+ − 127
var MB_OKCANCEL = 2;
+ − 128
var MB_YESNO = 4;
+ − 129
var MB_YESNOCANCEL = 8;
+ − 130
var MB_ABORTRETRYIGNORE = 16;
+ − 131
var MB_ICONINFORMATION = 32;
+ − 132
var MB_ICONEXCLAMATION = 64;
+ − 133
var MB_ICONSTOP = 128;
+ − 134
var MB_ICONQUESTION = 256;
+ − 135
var MB_ICONLOCK = 512;
+ − 136
+ − 137
// Syntax:
+ − 138
// messagebox(MB_OK|MB_ICONINFORMATION, 'Title', 'Text');
+ − 139
// :-D
+ − 140
+ − 141
var main_css = document.getElementById('mdgCss').href;
+ − 142
if(main_css.indexOf('?') > -1) {
+ − 143
sep = '&';
+ − 144
} else sep = '?';
+ − 145
var _css = false;
+ − 146
var print_css = main_css + sep + 'printable';
+ − 147
+ − 148
var shift;
+ − 149
+ − 150
function makeUrl(page, query, html_friendly)
+ − 151
{
+ − 152
url = contentPath+page;
+ − 153
if(url.indexOf('?') > 0) sep = '&';
+ − 154
else sep = '?';
+ − 155
if(query)
+ − 156
{
+ − 157
url = url + sep + query;
+ − 158
}
+ − 159
if(html_friendly)
+ − 160
{
+ − 161
url = url.replace('&', '&');
+ − 162
url = url.replace('<', '<');
+ − 163
url = url.replace('>', '>');
+ − 164
}
+ − 165
return url;
+ − 166
}
+ − 167
+ − 168
function makeUrlNS(namespace, page, query, html_friendly)
+ − 169
{
+ − 170
var url = contentPath+namespace_list[namespace]+(page.replace(/ /g, '_'));
+ − 171
if(url.indexOf('?') > 0) sep = '&';
+ − 172
else sep = '?';
+ − 173
if(query)
+ − 174
{
+ − 175
url = url + sep + query;
+ − 176
}
+ − 177
if(html_friendly)
+ − 178
{
+ − 179
url = url.replace('&', '&');
+ − 180
url = url.replace('<', '<');
+ − 181
url = url.replace('>', '>');
+ − 182
}
+ − 183
return append_sid(url);
+ − 184
}
+ − 185
+ − 186
function strToPageID(string)
+ − 187
{
+ − 188
// Convert Special:UploadFile to ['UploadFile', 'Special'], but convert 'Image:Enano.png' to ['Enano.png', 'File']
+ − 189
for(var i in namespace_list)
+ − 190
if(namespace_list[i] != '')
+ − 191
if(namespace_list[i] == string.substr(0, namespace_list[i].length))
+ − 192
return [string.substr(namespace_list[i].length), i];
+ − 193
return [string, 'Article'];
+ − 194
}
+ − 195
+ − 196
function append_sid(url)
+ − 197
{
+ − 198
sep = ( url.indexOf('?') > 0 ) ? '&' : '?';
+ − 199
if(ENANO_SID.length > 10)
+ − 200
{
+ − 201
url = url + sep + 'auth=' + ENANO_SID;
+ − 202
sep = '&';
+ − 203
}
+ − 204
if ( pagepass.length > 0 )
+ − 205
{
+ − 206
url = url + sep + 'pagepass=' + pagepass;
+ − 207
}
+ − 208
return url;
+ − 209
}
+ − 210
+ − 211
var stdAjaxPrefix = append_sid(scriptPath+'/ajax.php?title='+title);
+ − 212
+ − 213
var $_REQUEST = new Object();
+ − 214
if ( window.location.hash )
+ − 215
{
+ − 216
var hash = String(window.location.hash);
+ − 217
hash = hash.substr(1);
+ − 218
var reqobj = hash.split(';');
+ − 219
var a, b;
+ − 220
for ( var i = 0; i < reqobj.length; i++ )
+ − 221
{
+ − 222
a = reqobj[i].substr(0, reqobj[i].indexOf(':'));
+ − 223
b = reqobj[i].substr( ( reqobj[i].indexOf(':') + 1 ) );
+ − 224
$_REQUEST[a] = b;
+ − 225
}
+ − 226
}
+ − 227
117
+ − 228
var onload_hooks = new Array();
+ − 229
+ − 230
function addOnloadHook(func)
+ − 231
{
+ − 232
if ( typeof ( func ) == 'function' )
+ − 233
{
+ − 234
if ( typeof(onload_hooks.push) == 'function' )
+ − 235
{
+ − 236
onload_hooks.push(func);
+ − 237
}
+ − 238
else
+ − 239
{
+ − 240
onload_hooks[onload_hooks.length] = func;
+ − 241
}
+ − 242
}
+ − 243
}
+ − 244
+ − 245
function runOnloadHooks(e)
+ − 246
{
+ − 247
var _errorTrapper = 0;
+ − 248
for ( var _oLc = 0; _oLc < onload_hooks.length; _oLc++ )
+ − 249
{
+ − 250
_errorTrapper++;
+ − 251
if ( _errorTrapper >= 1000 )
+ − 252
break;
+ − 253
var _f = onload_hooks[_oLc];
+ − 254
if ( typeof(_f) == 'function' )
+ − 255
{
+ − 256
_f(e);
+ − 257
}
+ − 258
}
+ − 259
}
+ − 260
1
+ − 261
var head = document.getElementsByTagName('head')[0];
348
87e08a6e4fec
Welcome to the new Enano installer. Much distance still to be covered but the basics are there.
Dan
diff
changeset
+ − 262
if ( !KILL_SWITCH && !DISABLE_MCE )
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
diff
changeset
+ − 263
{
461
+ − 264
if ( IE )
+ − 265
{
+ − 266
document.write('<script type="text/javascript" src="' + scriptPath + '/includes/clientside/tinymce/tiny_mce.js"></script>');
+ − 267
}
+ − 268
else
+ − 269
{
+ − 270
var script = document.createElement('script');
+ − 271
script.type="text/javascript";
544
+ − 272
script.src=scriptPath+"/includes/clientside/tinymce/tiny_mce_gzip.js";
+ − 273
script.onload = function(e)
+ − 274
{
+ − 275
tinyMCE_GZ.init(enano_tinymce_gz_options);
+ − 276
}
461
+ − 277
head.appendChild(script);
+ − 278
}
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
diff
changeset
+ − 279
}
1
+ − 280
509
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 281
var script = document.createElement('script');
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 282
script.type="text/javascript";
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 283
script.src=scriptPath+"/includes/clientside/firebug/firebug.js";
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 284
head.appendChild(script);
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 285
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 286
// placeholder for window.console - used if firebug isn't present
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 287
// http://getfirebug.com/firebug/firebugx.js
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 288
if (!window.console || !console.firebug)
472
bc4b58034f4d
Implemented password reset (albeit hackishly) into the new login API; added dummy window.console object to hopefully reduce errors when Firebug isn't around; fixed the longstanding ACL dismiss/close button bug; fixed a couple undefined variables in mailer; fixed PHP error on attempted opening of /dev/(u)random in rijndael.php; clarified documentation for PageProcessor::update_page(); fixed some logic problems in theme ACL code; disabled CAPTCHA debug
Dan
diff
changeset
+ − 289
{
509
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 290
var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 291
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 292
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 293
window.console = {};
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 294
for (var i = 0; i < names.length; ++i)
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 295
window.console[names[i]] = function() {}
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 296
}
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 297
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 298
// safari has window.console but not the .debug() method
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 299
if ( is_Safari && !window.console.debug )
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 300
{
175df10e0b56
Added a copy of Firebug Lite for debugging purposes. License is uncertain but being treated as MPL. (If is is not MPL then it is under something more permissive that permits relicensing anyway)
Dan
diff
changeset
+ − 301
window.console.debug = function() {};
472
bc4b58034f4d
Implemented password reset (albeit hackishly) into the new login API; added dummy window.console object to hopefully reduce errors when Firebug isn't around; fixed the longstanding ACL dismiss/close button bug; fixed a couple undefined variables in mailer; fixed PHP error on attempted opening of /dev/(u)random in rijndael.php; clarified documentation for PageProcessor::update_page(); fixed some logic problems in theme ACL code; disabled CAPTCHA debug
Dan
diff
changeset
+ − 302
}
bc4b58034f4d
Implemented password reset (albeit hackishly) into the new login API; added dummy window.console object to hopefully reduce errors when Firebug isn't around; fixed the longstanding ACL dismiss/close button bug; fixed a couple undefined variables in mailer; fixed PHP error on attempted opening of /dev/(u)random in rijndael.php; clarified documentation for PageProcessor::update_page(); fixed some logic problems in theme ACL code; disabled CAPTCHA debug
Dan
diff
changeset
+ − 303
420
+ − 304
// Do not remove the following comments, they are used by jsres.php.
+ − 305
/*!START_INCLUDER*/
+ − 306
1
+ − 307
// Start loading files
420
+ − 308
// The string from the [ to the ] needs to be valid JSON, it's parsed by jsres.php.
1
+ − 309
var thefiles = [
420
+ − 310
'dynano.js',
1
+ − 311
'misc.js',
436
+ − 312
'login.js',
1
+ − 313
'admin-menu.js',
+ − 314
'ajax.js',
+ − 315
'autocomplete.js',
184
+ − 316
'autofill.js',
1
+ − 317
'base64.js',
+ − 318
'dropdown.js',
+ − 319
'faders.js',
+ − 320
'fat.js',
+ − 321
'grippy.js',
+ − 322
'json.js',
+ − 323
'md5.js',
436
+ − 324
'libbigint.js',
+ − 325
'enanomath.js',
+ − 326
'diffiehellman.js',
+ − 327
'sha256.js',
1
+ − 328
'sliders.js',
+ − 329
'toolbar.js',
+ − 330
'rijndael.js',
210
2b283402e4e4
Added language export to JSON page and localization for Javascript using $lang.get(). Localized AJAX login interface.
Dan
diff
changeset
+ − 331
'l10n.js',
1
+ − 332
'template-compiler.js',
+ − 333
'acl.js',
+ − 334
'comments.js',
+ − 335
'editor.js',
+ − 336
'flyin.js',
85
7c68a18a27be
AJAX comments are now paginated; plugin manager can now show system plugins; typo in installer corrected; links in oxygen/stpatty/admin footers changed to "About Enano" page; 1.0.1 release candidate
Dan
diff
changeset
+ − 337
'paginate.js',
133
af0f6ec48de3
Fully implemented password complexity enforcement; added encryption for passwords on registration form; some baby steps taken towards supporting international usernames - this is not working very well, we might need a hackish fix; TODO: implement password strength meter into installer UI and get international usernames 100% working
Dan
diff
changeset
+ − 338
'pwstrength.js',
430
ec90736b9cb9
Started (but disabled) work on the new theme manager, 1.1.2 is being released with this thing halfway done.
Dan
diff
changeset
+ − 339
'theme-manager.js',
174
4c5c2b66a34d
SECURITY: remove debug message in session manager; implemented alternate MediaWiki syntax for template embedding; added Adobe Spry for "shake" effect on unsuccessful login
Dan
diff
changeset
+ − 340
'SpryEffects.js',
1
+ − 341
'loader.js'
+ − 342
];
+ − 343
+ − 344
var problem_scripts = {
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
diff
changeset
+ − 345
'json.js' : true,
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
diff
changeset
+ − 346
'template-compiler.js' : true
1
+ − 347
};
+ − 348
+ − 349
for(var f in thefiles)
+ − 350
{
+ − 351
if ( typeof(thefiles[f]) != 'string' )
+ − 352
continue;
+ − 353
var script = document.createElement('script');
+ − 354
script.type="text/javascript";
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
diff
changeset
+ − 355
if ( problem_scripts[thefiles[f]] && 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
diff
changeset
+ − 356
{
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
diff
changeset
+ − 357
// alert('kill switch and problem script');
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
diff
changeset
+ − 358
continue;
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
diff
changeset
+ − 359
}
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
diff
changeset
+ − 360
script.src=scriptPath+"/includes/clientside/static/"+thefiles[f];
1
+ − 361
head.appendChild(script);
+ − 362
}
+ − 363
420
+ − 364
// Do not remove the following comment, it is used by jsres.php.
+ − 365
/*!END_INCLUDER*/
+ − 366
1
+ − 367
addOnloadHook(function() {
+ − 368
if ( $_REQUEST['do'] )
+ − 369
{
+ − 370
var act = $_REQUEST['do'];
+ − 371
switch(act)
+ − 372
{
+ − 373
case 'comments':
+ − 374
ajaxComments();
+ − 375
break;
+ − 376
case 'edit':
+ − 377
ajaxEditor();
+ − 378
break;
+ − 379
case 'login':
+ − 380
ajaxStartLogin();
+ − 381
break;
+ − 382
case 'history':
+ − 383
ajaxHistory();
+ − 384
break;
+ − 385
case 'catedit':
+ − 386
ajaxCatEdit();
+ − 387
break;
+ − 388
}
+ − 389
}
+ − 390
});
+ − 391
+ − 392
//*/