--- loncom/interface/lonhtmlcommon.pm	2006/02/22 19:22:49	1.121
+++ loncom/interface/lonhtmlcommon.pm	2006/04/19 22:26:26	1.125
@@ -1,7 +1,7 @@
 # The LearningOnline Network with CAPA
 # a pile of common html routines
 #
-# $Id: lonhtmlcommon.pm,v 1.121 2006/02/22 19:22:49 raeburn Exp $
+# $Id: lonhtmlcommon.pm,v 1.125 2006/04/19 22:26:26 albertel Exp $
 #
 # Copyright Michigan State University Board of Trustees
 #
@@ -524,7 +524,7 @@ sub get_date_from_form {
     if (($year<70) || ($year>137)) { return undef; }
     if (defined($sec) && defined($min)   && defined($hour) &&
         defined($day) && defined($month) && defined($year) &&
-        eval(&timelocal($sec,$min,$hour,$day,$month,$year))) {
+        eval('&timelocal($sec,$min,$hour,$day,$month,$year)')) {
         return &timelocal($sec,$min,$hour,$day,$month,$year);
     } else {
         return undef;
@@ -803,20 +803,25 @@ sub Create_PrgWin {
     $prog_state{'type'}=$type;
     if ($type eq 'popup') {
 	$prog_state{'window'}='popwin';
-	my $html=&Apache::lonxml::xmlbegin();
+	my $start_page =
+	    &Apache::loncommon::start_page($title,undef,
+					   {'only_body' => 1,
+					    'bgcolor'   => '#88DDFF',
+					    'js_ready'  => 1});
+	my $end_page = &Apache::loncommon::end_page({'js_ready'  => 1});
+
 	#the whole function called through timeout is due to issues
 	#in mozilla Read BUG #2665 if you want to know the whole story
-	&r_print($r,'<script>'.
+	&r_print($r,'<script type="text/javascript">'.
         "var popwin;
          function openpopwin () {
          popwin=open(\'\',\'popwin\',\'width=400,height=100\');".
-        "popwin.document.writeln(\'".$html."<head><title>$title</title></head>".
-	      "<body bgcolor=\"#88DDFF\">".
+        "popwin.document.writeln(\'".$start_page.
               "<h4>$heading</h4>".
               "<form name=popremain>".
               '<input type="text" size="'.$width.'" name="remaining" value="'.
-	      &mt('Starting').'"></form>'.
-              "</body></html>\');".
+	      &mt('Starting').'"></form>'.$end_page.
+              "\');".
         "popwin.document.close();}".
         "\nwindow.setTimeout(openpopwin,0)</script>");
 	$prog_state{'formname'}='popremain';
@@ -974,7 +979,14 @@ sub crumbs {
 # --------------------- A function that generates a window for the spellchecker
 
 sub spellheader {
-    my $html=&Apache::lonxml::xmlbegin();
+    my $start_page=
+	&Apache::loncommon::start_page('Speller Suggestions',undef,
+				       {'only_body' => 1,
+					'js_ready'  => 1,
+					'bgcolor'   => '#DDDDDD',});
+    my $end_page=
+	&Apache::loncommon::end_page({'js_ready'  => 1}); 
+
     my $nothing=&javascript_nothing();
     return (<<ENDCHECK);
 <script type="text/javascript"> 
@@ -983,7 +995,7 @@ var checkwin;
 
 function spellcheckerwindow() {
     checkwin=window.open($nothing,'spellcheckwin','height=320,width=280,resizable=yes,scrollbars=yes,location=no,menubar=no,toolbar=no');
-    checkwin.document.writeln('$html<head></head><body bgcolor="#DDDDDD"><form name="spellcheckform" action="/adm/spellcheck" method="post"><input type="hidden" name="text" value="" /></form></body></html>');
+    checkwin.document.writeln('$start_page<form name="spellcheckform" action="/adm/spellcheck" method="post"><input type="hidden" name="text" value="" /></form>$end_page');
     checkwin.document.close();
 }
 // END LON-CAPA Internal -->
@@ -1003,6 +1015,22 @@ ENDLINK
 
 # ------------------------------------------------- Output headers for HTMLArea
 
+{
+    my @htmlareafields;
+    sub init_htmlareafields {
+	undef(@htmlareafields);
+    }
+    
+    sub add_htmlareafields {
+	my (@newfields) = @_;
+	push(@htmlareafields,@newfields);
+    }
+
+    sub get_htmlareafields {
+	return @htmlareafields;
+    }
+}
+
 sub htmlareaheaders {
     if (&htmlareablocked()) { return ''; }
     unless (&htmlareabrowser()) { return ''; }