--- loncom/interface/lonhtmlcommon.pm 2004/03/01 16:19:45 1.58 +++ loncom/interface/lonhtmlcommon.pm 2004/03/03 22:55:35 1.59 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common html routines # -# $Id: lonhtmlcommon.pm,v 1.58 2004/03/01 16:19:45 www Exp $ +# $Id: lonhtmlcommon.pm,v 1.59 2004/03/03 22:55:35 matthew Exp $ # # Copyright Michigan State University Board of Trustees # @@ -201,6 +201,13 @@ Also, to be explicit, a value of 'now' a Additional html/javascript to be associated with each element in the date_setter. See lonparmset for example usage. +=item $includeempty + +=item $state + +Specifies the initial state of the form elements. Either 'disabled' or empty. +Defaults to empty, which indiciates the form elements are not disabled. + =back Bugs @@ -212,7 +219,10 @@ The method used to restrict user input w ############################################## ############################################## sub date_setter { - my ($formname,$dname,$currentvalue,$special,$includeempty) = @_; + my ($formname,$dname,$currentvalue,$special,$includeempty,$state) = @_; + if (! defined($state) || $state ne 'disabled') { + $state = ''; + } if (! defined($currentvalue) || $currentvalue eq 'now') { unless ($includeempty) { $currentvalue = time; @@ -261,18 +271,39 @@ sub date_setter { } } + function $dname\_disable() { + document.$formname.$dname\_month.disabled=true; + document.$formname.$dname\_day.disabled=true; + document.$formname.$dname\_year.disabled=true; + document.$formname.$dname\_hour.disabled=true; + document.$formname.$dname\_minute.disabled=true; + document.$formname.$dname\_second.disabled=true; + } + + function $dname\_enable() { + document.$formname.$dname\_month.disabled=false; + document.$formname.$dname\_day.disabled=false; + document.$formname.$dname\_year.disabled=false; + document.$formname.$dname\_hour.disabled=false; + document.$formname.$dname\_minute.disabled=false; + document.$formname.$dname\_second.disabled=false; + } + function $dname\_opencalendar() { - var calwin=window.open( + if (! document.$formname.$dname\_month.disabled) { + var calwin=window.open( "/adm/announcements?pickdate=yes&formname=$formname&element=$dname&month="+ document.$formname.$dname\_month.value+"&year="+ document.$formname.$dname\_year.value, "LONCAPAcal", "height=350,width=350,scrollbars=yes,resizable=yes,menubar=no"); + } } ENDJS $result .= " \n"; - $result .= " \n"; - $result .= " \n"; $result .= "  "; - $result .= " \n"; if ($includeempty) { $result.=""; } for (my $h = 0;$h<24;$h++) { $result .= " \n\n";