G['actsc_hash']; // actor::stat_cat
var mw = G['main_window'];
-var auth_meter_per = 10;
+var auth_meter_incr = 8;
function auth_init() {
sdump('D_AUTH','TESTING: auth.js: ' + mw.G['main_test_variable'] + '\n');
var np = document.getElementById('name_prompt');
np.focus(); np.select();
document.getElementById('auth_meter').value = 0;
+ document.getElementById('auth_meter').setAttribute('real', '0.0');
G.sound.beep();
}
[ name, hex_md5(auth_init + hex_md5(pw)) ],
auth_ses_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function auth_ses_callback(request) {
[],
ap_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function ap_list_callback(request) {
[],
cit_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function cit_list_callback(request) {
cst_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function cst_list_callback(request) {
[],
acpl_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
[],
ccs_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function ccs_list_callback(request) {
[ mw.G['auth_ses'][0] ],
user_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function user_callback(request) {
org_type_callback
);*/
org_type_callback();
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function org_type_callback(request) {
[ mw.G.auth_ses[0] ],
my_orgs_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
my_actsc_list_callback
);
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
}
function my_actsc_list_callback(request) {
mw.G.actsc_hash = convert_object_list_to_hash( actsc_list );
sdump('D_AUTH', 'actsc_list = ' + js2JSON(actsc_list) + '\n');
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',auth_meter_incr);
spawn_main();
function spawn_main() {
try {
- var w = new_window('chrome://evergreen/content/evergreen/main.xul');
+ var w = new_window('chrome://evergreen/content/evergreen/main/app_shell.xul');
if (!w) { throw('window ref == null'); }
try {
w.document.title = mw.G.user.usrname() + '@' + mw.G.user_ou.name();
alert('Hrmm. ' + pretty_print( js2JSON(E) ) );
}
} catch(E) {
+ incr_progressmeter('auth_meter',-100);
alert('Login failed on new_window: ' + js2JSON(E)); enable_login_prompts(); return;
}
- document.getElementById('auth_meter').value += auth_meter_per;
+ incr_progressmeter('auth_meter',100);
}
function logoff() {
mw.G['auth_ses'] = '';
close_all_windows();
enable_login_prompts();
+ incr_progressmeter('auth_meter',-100);
snd_logoff();
}
return list;
}
+// Increment a XUL progressmeter
+function incr_progressmeter(meter,increment) {
+ if (typeof(meter)!='object')
+ meter = document.getElementById(meter);
+ if (typeof(meter)!='object')
+ return;
+
+ var real = meter.getAttribute('_real');
+
+ if (!real)
+ real = 0;
+ real = parseFloat( real ) + parseFloat( increment );
+
+ if (real > 100)
+ real = 100;
+ else if ( real < 0)
+ real = 0;
+
+ meter.setAttribute('_real',real);
+ meter.value = Math.ceil( real );
+}
+
// Simulates radio buttons with checkboxes. Include this in command event listeners
// for the pertinent textboxes. For any set of checkboxes that have the same 'group'
// attribute, only one can be checked at a time.