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, 2 months 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_msu,
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
1: // The LearningOnline Network with CAPA
2: // loncapa.js This is a window handling library for the LON-CAPA web interface.
3: //
4: // $Id: loncapa.js,v 1.2 2001/12/19 17:21:28 albertel Exp $
5: //
6: // Copyright Michigan State University Board of Trustees
7: //
8: // This file is part of the LearningOnline Network with CAPA (LON-CAPA).
9: //
10: // LON-CAPA is free software; you can redistribute it and/or modify
11: // it under the terms of the GNU General Public License as published by
12: // the Free Software Foundation; either version 2 of the License, or
13: // (at your option) any later version.
14: //
15: // LON-CAPA is distributed in the hope that it will be useful,
16: // but WITHOUT ANY WARRANTY; without even the implied warranty of
17: // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18: // GNU General Public License for more details.
19: //
20: // You should have received a copy of the GNU General Public License
21: // along with LON-CAPA; if not, write to the Free Software
22: // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23: //
24: // /home/httpd/html/adm/gpl.txt
25: //
26: // http://www.lon-capa.org/
27: //
28: // This is a window handling library for the LON-CAPA
29: // web interface. This library interfaces with a variety
30: // of web page handlers. This is part of the LON-CAPA
31: // project at http://www.lon-capa.org/
32: //
33: // Window status tracking
34: // -1: not yet opened, no existing window object yet created
35: // 0: closed
36: // 1: open (or closed without using the close_window method)
37: //
38: // Methods
39: // -------
40: // open_window
41: // close_window
42: // check_window
43: // change_window
44: // change_window_by_submission
45:
46: var status=new Array();
47: status['abc123']=-1;
48: status['def456']=-1;
49: status['ghi789']=-1;
50: var windows=new Array();
51:
52: //-------------------------------------------------------- window attributes
53: function window_attributes(name,type) {
54: if (name=='abc123') {
55: if (type=='target') {return '';}
56: if (type=='name') {return 'abc123';}
57: if (type=='options') {return 'width=360,height=165';}
58: return(true);
59: }
60: if (name=='def456') {
61: if (type=='target') {return '';}
62: if (type=='name') {return 'def456';}
63: if (type=='options') {return 'width=360,height=165';}
64: return(true);
65: }
66: if (name=='ghi789') {
67: if (type=='target') {return '';}
68: if (type=='name') {return 'ghi789';}
69: if (type=='options') {return 'width=360,height=165';}
70: return(true);
71: }
72: alert('undefined window '+name+' called for loncapa.js;'+
73: 'see window_attributes function');
74: return(false);
75: }
76: //------------------------------------------------------------ open a window
77: function open_window(name) {
78: if (window_attributes(name)&&(status[name]==-1||windows[name].closed)) {
79: windows[name]=window.open(window_attributes(name,'target'),
80: window_attributes(name,'name'),
81: window_attributes(name,'options'));
82: status[name]=1;
83: }
84: }
85: //-------------------------------------------------- close dependent windows
86: function close_dependents(name) {
87: if (name=='THIS') {
88: close_window('abc123');
89: close_window('def456');
90: close_window('ghi789');
91: }
92: if (name=='abc123') {
93: close_window('ghi789');
94: }
95: }
96: //----------------------------------------------------------- close a window
97: function close_window(name) {
98: close_dependents(name);
99:
100: if (name!="THIS" && window_attributes(name) && status[name]!=-1
101: && !windows[name].closed) {
102: windows[name].close();
103: status[name]=0;
104: }
105: }
106: //------------------------------------------------- check and focus a window
107: function check_window(name) {
108: open_window(name);
109: windows[name].focus();
110: }
111: //---------------------------------------------------------- change a window
112: function change_window(name) {
113: check_window(name);
114: }
115: //-------------------------------------------- change a window by submission
116: function change_window_by_submission() {
117: check_window(name);
118: }
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>