version 1.587, 2007/09/24 23:29:53
|
version 1.591, 2007/10/09 17:33:57
|
Line 1074 sub changable_area {
|
Line 1074 sub changable_area {
|
|
|
=pod |
=pod |
|
|
|
=item * viewport_geometry_js { |
|
|
|
Provides javascript object (Geometry) which can provide information about the viewport geometry for the client browser. |
|
|
|
=cut |
|
|
|
|
|
sub viewport_geometry_js { |
|
return <<"GEOMETRY"; |
|
var Geometry = {}; |
|
function init_geometry() { |
|
if (Geometry.init) { return }; |
|
Geometry.init=1; |
|
if (window.innerHeight) { |
|
Geometry.getViewportHeight = function() { return window.innerHeight; }; |
|
Geometry.getViewportWidth = function() { return window.innerWidth; }; |
|
Geometry.getHorizontalScroll = function() { return window.pageXOffset; }; |
|
Geometry.getVerticalScroll = function() { return window.pageYOffset; }; |
|
} |
|
else if (document.documentElement && document.documentElement.clientHeight) { |
|
Geometry.getViewportHeight = |
|
function() { return document.documentElement.clientHeight; }; |
|
Geometry.getViewportWidth = |
|
function() { return document.documentElement.clientWidth; }; |
|
|
|
Geometry.getHorizontalScroll = |
|
function() { return document.documentElement.scrollLeft; }; |
|
Geometry.getVerticalScroll = |
|
function() { return document.documentElement.scrollTop; }; |
|
} |
|
else if (document.body.clientHeight) { |
|
Geometry.getViewportHeight = |
|
function() { return document.body.clientHeight; }; |
|
Geometry.getViewportWidth = |
|
function() { return document.body.clientWidth; }; |
|
Geometry.getHorizontalScroll = |
|
function() { return document.body.scrollLeft; }; |
|
Geometry.getVerticalScroll = |
|
function() { return document.body.scrollTop; }; |
|
} |
|
} |
|
|
|
GEOMETRY |
|
} |
|
|
|
=pod |
|
|
|
=item * viewport_size_js { |
|
|
|
Provides a javascript function to set values of two form elements - width and height (elements are passed in as arguments to the javascript function) to the dimensions of the user's browser window. |
|
|
|
=cut |
|
|
|
sub viewport_size_js { |
|
my $geometry = &viewport_geometry_js(); |
|
return <<"DIMS"; |
|
|
|
$geometry |
|
|
|
function getViewportDims(width,height) { |
|
init_geometry(); |
|
width.value = Geometry.getViewportWidth(); |
|
height.value = Geometry.getViewportHeight(); |
|
return; |
|
} |
|
|
|
DIMS |
|
} |
|
|
|
=pod |
|
|
=item * resize_textarea_js |
=item * resize_textarea_js |
|
|
emits the needed javascript to resize a textarea to be as big as possible |
emits the needed javascript to resize a textarea to be as big as possible |
Line 1087 to be attached to the <body> for the onl
|
Line 1158 to be attached to the <body> for the onl
|
=cut |
=cut |
|
|
sub resize_textarea_js { |
sub resize_textarea_js { |
|
my $geometry = &viewport_geometry_js(); |
return <<"RESIZE"; |
return <<"RESIZE"; |
<script type="text/javascript"> |
<script type="text/javascript"> |
var Geometry = {}; |
$geometry |
function init_geometry() { |
|
if (Geometry.init) { return }; |
function getX(element) { |
Geometry.init=1; |
var x = 0; |
if (window.innerHeight) { |
while (element) { |
Geometry.getViewportHeight = function() { return window.innerHeight; }; |
x += element.offsetLeft; |
} |
element = element.offsetParent; |
else if (document.documentElement && document.documentElement.clientHeight) { |
} |
Geometry.getViewportHeight = |
return x; |
function() { return document.documentElement.clientHeight; }; |
} |
} |
function getY(element) { |
else if (document.body.clientHeight) { |
var y = 0; |
Geometry.getViewportHeight = |
while (element) { |
function() { return document.body.clientHeight; }; |
y += element.offsetTop; |
|
element = element.offsetParent; |
} |
} |
|
return y; |
} |
} |
|
|
|
|
function resize_textarea(textarea_id,bottom_id) { |
function resize_textarea(textarea_id,bottom_id) { |
init_geometry(); |
init_geometry(); |
var textarea = document.getElementById(textarea_id); |
var textarea = document.getElementById(textarea_id); |
//alert(textarea); |
//alert(textarea); |
|
|
var textarea_top = textarea.offsetTop; |
var textarea_top = getY(textarea); |
var textarea_height = textarea.offsetHeight; |
var textarea_height = textarea.offsetHeight; |
var bottom = document.getElementById(bottom_id); |
var bottom = document.getElementById(bottom_id); |
var bottom_top = bottom.offsetTop; |
var bottom_top = getY(bottom); |
var bottom_height = bottom.offsetHeight; |
var bottom_height = bottom.offsetHeight; |
var window_height = Geometry.getViewportHeight(); |
var window_height = Geometry.getViewportHeight(); |
var fudge = 23; |
var fudge = 23; |
var new_height = window_height-fudge-textarea_top-bottom_height; |
var new_height = window_height-fudge-textarea_top-bottom_height; |
if (new_height < 300) { |
if (new_height < 300) { |
new_height = 300; |
new_height = 300; |
Line 1332 sub domain_select {
|
Line 1407 sub domain_select {
|
|
|
=over 4 |
=over 4 |
|
|
=cut |
|
|
|
=item * multiple_select_form($name,$value,$size,$hash,$order) |
=item * multiple_select_form($name,$value,$size,$hash,$order) |
|
|
Returns a string containing a <select> element int multiple mode |
Returns a string containing a <select> element int multiple mode |
Line 1725 END
|
Line 1798 END
|
} |
} |
|
|
my $radioval = "'nochange'"; |
my $radioval = "'nochange'"; |
if (exists($in{'curr_authtype'}) && |
if (defined($in{'curr_authtype'})) { |
defined($in{'curr_authtype'}) && |
if ($in{'curr_authtype'} ne '') { |
$in{'curr_authtype'} ne '') { |
$radioval = "'".$in{'curr_authtype'}."arg'"; |
$radioval = "'$in{'curr_authtype'}arg'"; |
} |
} |
} |
my $argfield = 'null'; |
my $argfield = 'null'; |
if ( grep/^mode$/,(keys %in) ) { |
if (defined($in{'mode'})) { |
if ($in{'mode'} eq 'modifycourse') { |
if ($in{'mode'} eq 'modifycourse') { |
if ( grep/^curr_authtype$/,(keys %in) ) { |
if (defined($in{'curr_autharg'})) { |
$radioval = "'$in{'curr_authtype'}'"; |
if ($in{'curr_autharg'} ne '') { |
} |
|
if ( grep/^curr_autharg$/,(keys %in) ) { |
|
unless ($in{'curr_autharg'} eq '') { |
|
$argfield = "'$in{'curr_autharg'}'"; |
$argfield = "'$in{'curr_autharg'}'"; |
} |
} |
} |
} |
Line 1834 sub authform_nochange{
|
Line 1904 sub authform_nochange{
|
return $result; |
return $result; |
} |
} |
|
|
sub authform_kerberos{ |
sub authform_kerberos { |
my %in = ( |
my %in = ( |
formname => 'document.cu', |
formname => 'document.cu', |
kerb_def_dom => 'MSU.EDU', |
kerb_def_dom => 'MSU.EDU', |
Line 1850 sub authform_kerberos{
|
Line 1920 sub authform_kerberos{
|
$check4 = ' checked="on"'; |
$check4 = ' checked="on"'; |
} |
} |
$krbarg = $in{'kerb_def_dom'}; |
$krbarg = $in{'kerb_def_dom'}; |
if (grep(/^curr_authtype$/,(keys(%in)))) { |
if (defined($in{'curr_authtype'})) { |
if ($in{'curr_authtype'} =~ m/^krb(\d+)$/) { |
if ($in{'curr_authtype'} eq 'krb') { |
$krbver = $1; |
|
$krbcheck = ' checked="on"'; |
$krbcheck = ' checked="on"'; |
if ($krbver eq '5') { |
if (defined($in{'curr_kerb_ver'})) { |
$check5 = ' checked="on"'; |
if ($in{'curr_krb_ver'} eq '5') { |
$check4 = ''; |
$check5 = ' checked="on"'; |
} else { |
$check4 = ''; |
$check4 = ' checked="on"'; |
} else { |
$check5 = ''; |
$check4 = ' checked="on"'; |
|
$check5 = ''; |
|
} |
} |
} |
if (grep(/^curr_autharg$/,(keys(%in)))) { |
if (defined($in{'curr_autharg'})) { |
$krbarg = $in{'curr_autharg'}; |
$krbarg = $in{'curr_autharg'}; |
} |
} |
if (!$can_assign{'krb4'} && !$can_assign{'krb5'}) { |
if (!$can_assign{'krb4'} && !$can_assign{'krb5'}) { |
if (grep(/^curr_autharg$/,(keys(%in)))) { |
if (defined($in{'curr_autharg'})) { |
$result = |
$result = |
&mt('Currently Kerberos authenticated with domain [_1] Version [_2].', |
&mt('Currently Kerberos authenticated with domain [_1] Version [_2].', |
$in{'curr_autharg'},$krbver); |
$in{'curr_autharg'},$krbver); |
Line 1884 sub authform_kerberos{
|
Line 1955 sub authform_kerberos{
|
if (!$can_assign{'krb4'} && !$can_assign{'krb5'}) { |
if (!$can_assign{'krb4'} && !$can_assign{'krb5'}) { |
return; |
return; |
} elsif ($authtype eq '') { |
} elsif ($authtype eq '') { |
if (grep(/^mode$/,(keys(%in)))) { |
if (defined($in{'mode'})) { |
if ($in{'mode'} eq 'modifycourse') { |
if ($in{'mode'} eq 'modifycourse') { |
if ($authnum == 1) { |
if ($authnum == 1) { |
$authtype = '<input type="hidden" name="login" value="krb">'; |
$authtype = '<input type="hidden" name="login" value="krb">'; |
Line 1945 sub authform_internal{
|
Line 2016 sub authform_internal{
|
); |
); |
my ($intcheck,$intarg,$result,$authtype,$autharg,$jscall); |
my ($intcheck,$intarg,$result,$authtype,$autharg,$jscall); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
if (grep(/^curr_authtype$/,(keys(%in)))) { |
if (defined($in{'curr_authtype'})) { |
if ($in{'curr_authtype'} eq 'internal:') { |
if ($in{'curr_authtype'} eq 'int') { |
if ($can_assign{'int'}) { |
if ($can_assign{'int'}) { |
$intcheck = 'checked="on" '; |
$intcheck = 'checked="on" '; |
if (grep(/^curr_autharg$/,(keys(%in)))) { |
if (defined($in{'curr_autharg'})) { |
$intarg = $in{'curr_autharg'}; |
$intarg = $in{'curr_autharg'}; |
} |
} |
} else { |
} else { |
Line 1965 sub authform_internal{
|
Line 2036 sub authform_internal{
|
if (!$can_assign{'int'}) { |
if (!$can_assign{'int'}) { |
return; |
return; |
} elsif ($authtype eq '') { |
} elsif ($authtype eq '') { |
if (grep(/^mode$/,(keys(%in)))) { |
if (defined($in{'mode'})) { |
if ($in{'mode'} eq 'modifycourse') { |
if ($in{'mode'} eq 'modifycourse') { |
if ($authnum == 1) { |
if ($authnum == 1) { |
$authtype = '<input type="hidden" name="login" value="int">'; |
$authtype = '<input type="hidden" name="login" value="int">'; |
Line 1994 sub authform_local{
|
Line 2065 sub authform_local{
|
); |
); |
my ($loccheck,$locarg,$result,$authtype,$autharg,$jscall); |
my ($loccheck,$locarg,$result,$authtype,$autharg,$jscall); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
if (grep(/^curr_authtype$/,(keys(%in)))) { |
if (defined($in{'curr_authtype'})) { |
if ($in{'curr_authtype'} eq 'localauth:') { |
if ($in{'curr_authtype'} eq 'loc') { |
if ($can_assign{'loc'}) { |
if ($can_assign{'loc'}) { |
$loccheck = 'checked="on" '; |
$loccheck = 'checked="on" '; |
if (grep(/^curr_autharg$/,(keys(%in)))) { |
if (defined($in{'curr_autharg'})) { |
$locarg = $in{'curr_autharg'}; |
$locarg = $in{'curr_autharg'}; |
} |
} |
} else { |
} else { |
Line 2014 sub authform_local{
|
Line 2085 sub authform_local{
|
if (!$can_assign{'loc'}) { |
if (!$can_assign{'loc'}) { |
return; |
return; |
} elsif ($authtype eq '') { |
} elsif ($authtype eq '') { |
if (grep(/^mode$/,(keys(%in)))) { |
if (defined($in{'mode'})) { |
if ($in{'mode'} eq 'modifycourse') { |
if ($in{'mode'} eq 'modifycourse') { |
if ($authnum == 1) { |
if ($authnum == 1) { |
$authtype = '<input type="hidden" name="login" value="loc">'; |
$authtype = '<input type="hidden" name="login" value="loc">'; |
Line 2043 sub authform_filesystem{
|
Line 2114 sub authform_filesystem{
|
); |
); |
my ($fsyscheck,$result,$authtype,$autharg,$jscall); |
my ($fsyscheck,$result,$authtype,$autharg,$jscall); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
my ($authnum,%can_assign) = &get_assignable_auth($in{'domain'}); |
if (grep(/^curr_authtype$/,(keys(%in)))) { |
if (defined($in{'curr_authtype'})) { |
if ($in{'curr_authtype'} eq 'unix:') { |
if ($in{'curr_authtype'} eq 'fsys') { |
if ($can_assign{'fsys'}) { |
if ($can_assign{'fsys'}) { |
$fsyscheck = 'checked="on" '; |
$fsyscheck = 'checked="on" '; |
} else { |
} else { |
Line 2060 sub authform_filesystem{
|
Line 2131 sub authform_filesystem{
|
if (!$can_assign{'fsys'}) { |
if (!$can_assign{'fsys'}) { |
return; |
return; |
} elsif ($authtype eq '') { |
} elsif ($authtype eq '') { |
if (grep(/^mode$/,(keys(%in)))) { |
if (defined($in{'mode'})) { |
if ($in{'mode'} eq 'modifycourse') { |
if ($in{'mode'} eq 'modifycourse') { |
if ($authnum == 1) { |
if ($authnum == 1) { |
$authtype = '<input type="hidden" name="login" value="fsys">'; |
$authtype = '<input type="hidden" name="login" value="fsys">'; |
Line 4304 table.LC_data_table, table.LC_mail_list
|
Line 4375 table.LC_data_table, table.LC_mail_list
|
} |
} |
table.LC_nested_outer { |
table.LC_nested_outer { |
border: 1px solid #000000; |
border: 1px solid #000000; |
border-collapse: separate; |
border-collapse: collapse; |
border-spacing: 0px; |
border-spacing: 0px; |
width: 100%; |
width: 100%; |
} |
} |
table.LC_nested { |
table.LC_nested { |
border: 0px; |
border: 0px; |
border-collapse: separate; |
border-collapse: collapse; |
border-spacing: 0px; |
border-spacing: 0px; |
width: 100%; |
width: 100%; |
} |
} |
Line 4362 table.LC_nested tr.LC_info_row td {
|
Line 4433 table.LC_nested tr.LC_info_row td {
|
font-size: small; |
font-size: small; |
text-align: center; |
text-align: center; |
} |
} |
table.LC_nested tr.LC_info_row td.LC_left_item { |
table.LC_nested tr.LC_info_row td.LC_left_item, |
|
table.LC_nested_outer tr th.LC_left_item { |
text-align: left; |
text-align: left; |
} |
} |
table.LC_nested td { |
table.LC_nested td { |
Line 4886 table.LC_sty_end {
|
Line 4958 table.LC_sty_end {
|
background: #FFBBBB; |
background: #FFBBBB; |
} |
} |
|
|
|
table.LC_double_column { |
|
border-width: 0px; |
|
border-collapse: collapse; |
|
width: 100%; |
|
padding: 2px; |
|
} |
|
|
|
table.LC_double_column tr td.LC_left_col { |
|
top: 2px; |
|
left: 2px; |
|
width: 47%; |
|
vertical-align: top; |
|
} |
|
|
|
table.LC_double_column tr td.LC_right_col { |
|
top: 2px; |
|
right: 2px; |
|
width: 47%; |
|
vertical-align: top; |
|
} |
|
|
|
div.LC_left_float { |
|
float: left; |
|
padding-right: 5%; |
|
padding:bottom: 4px; |
|
} |
|
|
|
div.LC_clear_float_header { |
|
padding:bottom: 2px; |
|
} |
|
|
|
div.LC_clear_float_footer { |
|
padding:top: 10px; |
|
clear: both; |
|
} |
|
|
END |
END |
} |
} |
|
|