File:
[LON-CAPA] /
loncom /
javascriptlib /
loncapa.js
Revision
1.2:
download - view:
text,
annotated -
select for diffs
Wed Dec 19 17:21:28 2001 UTC (23 years ago) by
albertel
Branches:
MAIN
CVS tags:
version_2_9_X,
version_2_9_99_0,
version_2_9_1,
version_2_9_0,
version_2_8_X,
version_2_8_99_1,
version_2_8_99_0,
version_2_8_2,
version_2_8_1,
version_2_8_0,
version_2_7_X,
version_2_7_99_1,
version_2_7_99_0,
version_2_7_1,
version_2_7_0,
version_2_6_X,
version_2_6_99_1,
version_2_6_99_0,
version_2_6_3,
version_2_6_2,
version_2_6_1,
version_2_6_0,
version_2_5_X,
version_2_5_99_1,
version_2_5_99_0,
version_2_5_2,
version_2_5_1,
version_2_5_0,
version_2_4_X,
version_2_4_99_0,
version_2_4_2,
version_2_4_1,
version_2_4_0,
version_2_3_X,
version_2_3_99_0,
version_2_3_2,
version_2_3_1,
version_2_3_0,
version_2_2_X,
version_2_2_99_1,
version_2_2_99_0,
version_2_2_2,
version_2_2_1,
version_2_2_0,
version_2_1_X,
version_2_1_99_3,
version_2_1_99_2,
version_2_1_99_1,
version_2_1_99_0,
version_2_1_3,
version_2_1_2,
version_2_1_1,
version_2_1_0,
version_2_12_X,
version_2_11_X,
version_2_11_6,
version_2_11_5_msu,
version_2_11_5,
version_2_11_4_uiuc,
version_2_11_4_msu,
version_2_11_4,
version_2_11_3_uiuc,
version_2_11_3_msu,
version_2_11_3,
version_2_11_2_uiuc,
version_2_11_2_msu,
version_2_11_2_educog,
version_2_11_2,
version_2_11_1,
version_2_11_0_RC3,
version_2_11_0_RC2,
version_2_11_0_RC1,
version_2_11_0,
version_2_10_X,
version_2_10_1,
version_2_10_0_RC2,
version_2_10_0_RC1,
version_2_10_0,
version_2_0_X,
version_2_0_99_1,
version_2_0_2,
version_2_0_1,
version_2_0_0,
version_1_99_3,
version_1_99_2,
version_1_99_1_tmcc,
version_1_99_1,
version_1_99_0_tmcc,
version_1_99_0,
version_1_3_X,
version_1_3_3,
version_1_3_2,
version_1_3_1,
version_1_3_0,
version_1_2_X,
version_1_2_99_1,
version_1_2_99_0,
version_1_2_1,
version_1_2_0,
version_1_1_X,
version_1_1_99_5,
version_1_1_99_4,
version_1_1_99_3,
version_1_1_99_2,
version_1_1_99_1,
version_1_1_99_0,
version_1_1_3,
version_1_1_2,
version_1_1_1,
version_1_1_0,
version_1_0_99_3,
version_1_0_99_2,
version_1_0_99_1,
version_1_0_99,
version_1_0_3,
version_1_0_2,
version_1_0_1,
version_1_0_0,
version_0_99_5,
version_0_99_4,
version_0_99_3,
version_0_99_2,
version_0_99_1,
version_0_99_0,
version_0_6_2,
version_0_6,
version_0_5_1,
version_0_5,
version_0_4,
stable_2002_spring,
stable_2002_july,
stable_2002_april,
loncapaMITrelate_1,
language_hyphenation_merge,
language_hyphenation,
conference_2003,
bz6209-base,
bz6209,
bz5969,
bz2851,
STABLE,
PRINT_INCOMPLETE_base,
PRINT_INCOMPLETE,
HEAD,
GCI_3,
GCI_2,
GCI_1,
BZ5971-printing-apage,
BZ5434-fox,
BZ4492-merge,
BZ4492-feature_horizontal_radioresponse
- added GPL headers
// The LearningOnline Network with CAPA
// loncapa.js This is a window handling library for the LON-CAPA web interface.
//
// $Id: loncapa.js,v 1.2 2001/12/19 17:21:28 albertel Exp $
//
// Copyright Michigan State University Board of Trustees
//
// This file is part of the LearningOnline Network with CAPA (LON-CAPA).
//
// LON-CAPA is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// LON-CAPA is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with LON-CAPA; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// /home/httpd/html/adm/gpl.txt
//
// http://www.lon-capa.org/
//
// This is a window handling library for the LON-CAPA
// web interface. This library interfaces with a variety
// of web page handlers. This is part of the LON-CAPA
// project at http://www.lon-capa.org/
//
// Window status tracking
// -1: not yet opened, no existing window object yet created
// 0: closed
// 1: open (or closed without using the close_window method)
//
// Methods
// -------
// open_window
// close_window
// check_window
// change_window
// change_window_by_submission
var status=new Array();
status['abc123']=-1;
status['def456']=-1;
status['ghi789']=-1;
var windows=new Array();
//-------------------------------------------------------- window attributes
function window_attributes(name,type) {
if (name=='abc123') {
if (type=='target') {return '';}
if (type=='name') {return 'abc123';}
if (type=='options') {return 'width=360,height=165';}
return(true);
}
if (name=='def456') {
if (type=='target') {return '';}
if (type=='name') {return 'def456';}
if (type=='options') {return 'width=360,height=165';}
return(true);
}
if (name=='ghi789') {
if (type=='target') {return '';}
if (type=='name') {return 'ghi789';}
if (type=='options') {return 'width=360,height=165';}
return(true);
}
alert('undefined window '+name+' called for loncapa.js;'+
'see window_attributes function');
return(false);
}
//------------------------------------------------------------ open a window
function open_window(name) {
if (window_attributes(name)&&(status[name]==-1||windows[name].closed)) {
windows[name]=window.open(window_attributes(name,'target'),
window_attributes(name,'name'),
window_attributes(name,'options'));
status[name]=1;
}
}
//-------------------------------------------------- close dependent windows
function close_dependents(name) {
if (name=='THIS') {
close_window('abc123');
close_window('def456');
close_window('ghi789');
}
if (name=='abc123') {
close_window('ghi789');
}
}
//----------------------------------------------------------- close a window
function close_window(name) {
close_dependents(name);
if (name!="THIS" && window_attributes(name) && status[name]!=-1
&& !windows[name].closed) {
windows[name].close();
status[name]=0;
}
}
//------------------------------------------------- check and focus a window
function check_window(name) {
open_window(name);
windows[name].focus();
}
//---------------------------------------------------------- change a window
function change_window(name) {
check_window(name);
}
//-------------------------------------------- change a window by submission
function change_window_by_submission() {
check_window(name);
}
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>