--- loncom/interface/loncommon.pm 2002/09/14 21:01:38 1.68 +++ loncom/interface/loncommon.pm 2003/02/03 18:03:52 1.76 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # a pile of common routines # -# $Id: loncommon.pm,v 1.68 2002/09/14 21:01:38 albertel Exp $ +# $Id: loncommon.pm,v 1.76 2003/02/03 18:03:52 harris41 Exp $ # # Copyright Michigan State University Board of Trustees # @@ -27,9 +27,7 @@ # # YEAR=2001 # 2/13-12/7 Guy Albertelli -# 12/11,12/12,12/17 Scott Harrison # 12/21 Gerd Kortemeyer -# 12/21 Scott Harrison # 12/25,12/28 Gerd Kortemeyer # YEAR=2002 # 1/4 Gerd Kortemeyer @@ -311,7 +309,44 @@ sub browser_and_searcher_javascript { END } +sub studentbrowser_javascript { + unless ($ENV{'request.course.id'}) { return ''; } + unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { + return ''; + } + return (<<'ENDSTDBRW'); +<script type="text/javascript" language="Javascript" > + var stdeditbrowser; + function openstdbrowser(formname,uname,udom) { + var url = '/adm/pickstudent?'; + var filter; + eval('filter=document.'+formname+'.'+uname+'.value;'); + if (filter != null) { + if (filter != '') { + url += 'filter='+filter+'&'; + } + } + url += 'form=' + formname + '&unameelement='+uname+ + '&udomelement='+udom; + var title = 'Student Browser'; + var options = 'scrollbars=1,resizable=1,menubar=0'; + options += ',width=700,height=600'; + stdeditbrowser = open(url,title,options,'1'); + stdeditbrowser.focus(); + } +</script> +ENDSTDBRW +} +sub selectstudent_link { + my ($form,$unameele,$udomele)=@_; + unless ($ENV{'request.course.id'}) { return ''; } + unless (&Apache::lonnet::allowed('srm',$ENV{'request.course.id'})) { + return ''; + } + return "<a href='".'javascript:openstdbrowser("'.$form.'","'.$unameele. + '","'.$udomele.'");'."'>Select</a>"; +} ############################################################### @@ -493,7 +528,7 @@ sub help_open_topic { if (!$stayOnPage) { - $link = "javascript:void(open('/adm/help/${filename}.hlp', 'Help_for_$topic', 'menubar=0,toolbar=1,scrollbars=1,width=$width,height=$height'))"; + $link = "javascript:void(open('/adm/help/${filename}.hlp', 'Help_for_$topic', 'menubar=0,toolbar=1,scrollbars=1,width=$width,height=$height,resizable=yes'))"; } else { @@ -802,7 +837,7 @@ sub authform_internal{ onclick="javascript:changed_radio('int',$args{'formname'});" /> Internally authenticated (with initial password <input type="text" size="10" name="intarg" value="" - onchange="javascript:changed_text('int',$args{'formname'});" /> + onchange="javascript:changed_text('int',$args{'formname'});" />) END return $result; } @@ -838,7 +873,7 @@ sub authform_filesystem{ onclick="javascript:changed_radio('fsys',$in{'formname'});" /> Filesystem authenticated (with initial password <input type="text" size="10" name="fsysarg" value="" - onchange="javascript:changed_text('fsys',$in{'formname'});"> + onchange="javascript:changed_text('fsys',$in{'formname'});">) END return $result; } @@ -1010,18 +1045,26 @@ sub messagewrapper { return "<a href='/adm/email?compose=individual&recname=$un&recdom=$do'>$link</a>"; } +# --------------------------------------------------------------- Notes Wrapper + +sub noteswrapper { + my ($link,$un,$do)=@_; + return +"<a href='/adm/email?recordftf=retrieve&recname=$un&recdom=$do'>$link</a>"; +} # ------------------------------------------------------------- Aboutme Wrapper sub aboutmewrapper { - my ($link,$un,$do)=@_; - return "<a href='/adm/$do/$un/aboutme'>$link</a>"; + my ($link,$username,$domain)=@_; + return "<a href='/adm/$domain/$username/aboutme'>$link</a>"; } # ------------------------------------------------------------ Syllabus Wrapper sub syllabuswrapper { - my ($link,$un,$do)=@_; + my ($link,$un,$do,$tf)=@_; + if ($tf) { $link='<font color="'.$tf.'">'.$link.'</font>'; } return "<a href='/public/$do/$un/syllabus'>$link</a>"; } @@ -1222,6 +1265,22 @@ sub maketime { } +######################################### +# +# Retro-fixing of un-backward-compatible time format + +sub unsqltime { + my $timestamp=shift; + if ($timestamp=~/^(\d+)\-(\d+)\-(\d+)\s+(\d+)\:(\d+)\:(\d+)$/) { + $timestamp=&maketime( + 'year'=>$1,'month'=>$2,'day'=>$3, + 'hours'=>$4,'minutes'=>$5,'seconds'=>$6); + } + return $timestamp; +} + +######################################### + sub findallcourses { my %courses=(); my $now=time; @@ -1283,7 +1342,8 @@ sub domainlogo { my $domain = &determinedomain(shift); # See if there is a logo if (-e '/home/httpd/html/adm/lonDomLogos/'.$domain.'.gif') { - return '<img src="/adm/lonDomLogos/'.$domain.'.gif" />'; + return '<img src="http://'.$ENV{'HTTP_HOST'}.':8080/adm/lonDomLogos/'. + $domain.'.gif" />'; } elsif(exists($Apache::lonnet::domaindescription{$domain})) { return $Apache::lonnet::domaindescription{$domain}; } else { @@ -1387,7 +1447,7 @@ END $bodytag <table width="100%" cellspacing="0" border="0" cellpadding="0"> <tr><td bgcolor="$font"> -<img src="$img" /></td> +<img src="http://$ENV{'HTTP_HOST'}:8080/$img" /></td> <td bgcolor="$font"><font color='$sidebg'>$messages</font></td> </tr> <tr>