--- modules/gci/londocsgci.pm 2010/11/16 02:28:10 1.15 +++ modules/gci/londocsgci.pm 2010/11/29 04:33:35 1.16 @@ -2,7 +2,7 @@ # Custom Edit Course Routines for Assembly of Valid Concept Tests from # Geoscience Concept Inventory. # -# $Id: londocsgci.pm,v 1.15 2010/11/16 02:28:10 gci Exp $ +# $Id: londocsgci.pm,v 1.16 2010/11/29 04:33:35 gci Exp $ # # Copyright Michigan State University Board of Trustees # @@ -219,25 +219,35 @@ sub listresources { } else { $r->print('
'.&mt('Modify Test').''. &mt('Currently no student submissions have been recorded, so you may modify the contents of the Concept Test.'). - '
'. + '

'. ''. '

'); } my ($crsparms,$ineffect,$parmlev) = ¤t_parms($cdom,$cnum); my $formname = 'datesform'; my $datebutton = &mt('Save'); + my $hide_timezone = 1; my $startform = &Apache::lonhtmlcommon::date_setter($formname,'opendate', - $crsparms->{'opendate'}); + $crsparms->{'opendate'},'','','', + '','','','','',$hide_timezone); my $endform = &Apache::lonhtmlcommon::date_setter($formname,'duedate', - $crsparms->{'duedate'}); + $crsparms->{'duedate'},'','','', + '','','','','',$hide_timezone); + my $includeempty = 1; + my $timezone = &Apache::lonlocal::gettimezone(); + my $tzform = &Apache::loncommon::select_timezone('timezone',$timezone, + undef,$includeempty); $r->print('

'.&mt('Test Availability').''. &mt('Open and close dates for test items for the concept test are currently set as follows:'). - '
'. + '

'. '
'. &Apache::lonhtmlcommon::start_pick_box(). + &Apache::lonhtmlcommon::row_title(&mt('Time zone')). + $tzform. + &Apache::lonhtmlcommon::row_closure(1). &Apache::lonhtmlcommon::row_title(&mt('Open date')). $startform. &Apache::lonhtmlcommon::row_closure(1). @@ -547,8 +557,18 @@ sub current_parms { sub store_dates_parms { my ($cdom,$cnum) = @_; my $topsymb = '___0___uploaded/'.$cdom.'/'.$cnum.'/default.sequence'; + my $tz_change; + my $timezone = &Apache::lonlocal::gettimezone(); + if ($env{'form.timezone'} ne '') { + if (&Apache::lonlocal::gettimezone($env{'form.timezone'}) ne 'local') { + if ($timezone ne $env{'form.timezone'}) { + $tz_change = 1; + $timezone = $env{'form.timezone'}; + } + } + } my ($opendate,$duedate) = - &Apache::lonuserutils::get_dates_from_form('opendate','duedate'); + &Apache::lonuserutils::get_dates_from_form('opendate','duedate',$timezone); my %dates = ( opendate => { value => $opendate, @@ -566,11 +586,14 @@ sub store_dates_parms { '0_'.$date,14,$dates{$date}{'value'}, $dates{$date}{'type'},undef,$cdom); } + if ($tz_change) { + &Apache::lonnet::appenv({'course.'.$env{'request.course.id'}.'.timezone' => $timezone}); + } my $output = &mt('Open and Close dates set for test items').''; return $output; }