version 1.1, 2003/05/04 08:45:22
|
version 1.3, 2003/05/05 19:27:08
|
Line 36 BEGIN {
|
Line 36 BEGIN {
|
} |
} |
|
|
sub seperate_jme_window { |
sub seperate_jme_window { |
my ($id,$molecule)=@_; |
my ($smile_input,$jme_input,$molecule)=@_; |
|
my $smilesection; |
|
if (defined($smile_input)) { |
|
$smilesection=<<SMILESECTION; |
|
opener.document.lonhomework.$smile_input.value = smiles; |
|
SMILESECTION |
|
} |
|
my $jmesection; |
|
if (defined($jme_input)) { |
|
$jmesection=<<JMESECTION; |
|
jmeFile = document.applets.JME.jmeFile(); |
|
opener.document.lonhomework.$jme_input.value = jmeFile; |
|
JMESECTION |
|
} |
|
|
my $body=<<CHEMPAGE; |
my $body=<<CHEMPAGE; |
<html> |
<html> |
<head> |
<head> |
Line 47 function submitSmiles() {
|
Line 61 function submitSmiles() {
|
if (smiles == "") { |
if (smiles == "") { |
alert("Nothing to submit"); |
alert("Nothing to submit"); |
} else { |
} else { |
jmeFile = document.applets.JME.jmeFile(); |
$smilesection |
opener.document.lonhomework.HWVAL_$id.value = smiles; |
$jmesection |
opener.document.lonhomework.MOLECULE_$id.value = jmeFile; |
|
window.close(); |
window.close(); |
} |
} |
} |
} |
function openHelpWindow() { |
function openHelpWindow() { |
window.open("/adm/jme/jme_help.html","","scrollbars=yes,resizable=yes,width=500,height=600") |
window.open("/adm/jme/jme_help.html","","scrollbars=yes,resizable=yes,width=500,height=600"); |
} |
} |
</script> |
</script> |
</head> |
</head> |
Line 98 sub start_chemresponse {
|
Line 111 sub start_chemresponse {
|
$molecule=&Apache::lonxml::get_param('molecule',$parstack, |
$molecule=&Apache::lonxml::get_param('molecule',$parstack, |
$safeeval); |
$safeeval); |
} |
} |
$result=&seperate_jme_window($id,$molecule); |
$result=&seperate_jme_window("HWVAL_$id","MOLECULE_$id",$molecule); |
$result.= '<input type="hidden" name="MOLECULE_'.$id.'" value="" />'; |
$result.= '<input type="hidden" name="MOLECULE_'.$id.'" value="" />'; |
|
} elsif ($target eq 'edit') { |
|
$result .=&Apache::edit::tag_start($target,$token); |
|
$result .=&Apache::edit::text_arg('Starting Molecule:','molecule', |
|
$token,40); |
|
my $molecule=&Apache::lonxml::get_param('molecule',$parstack, |
|
$safeeval); |
|
$result .=&seperate_jme_window(undef, |
|
&Apache::edit::html_element_name('molecule'), |
|
$molecule); |
|
$result .='<br />'; |
|
$result .=&Apache::edit::text_arg('Correct Answer:','answer', |
|
$token,40); |
|
$result .=&Apache::edit::hidden_arg('jmeanswer',$token); |
|
my $jmeanswer=&Apache::lonxml::get_param('jmeanswer',$parstack, |
|
$safeeval); |
|
$result .=&seperate_jme_window( |
|
&Apache::edit::html_element_name('answer'), |
|
&Apache::edit::html_element_name('jmeanswer'), |
|
$jmeanswer); |
|
$result .=&Apache::edit::end_row().&Apache::edit::start_spanning_row(); |
|
} elsif ($target eq 'modified') { |
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
|
$safeeval,'molecule', |
|
'answer','jmeanswer'); |
|
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
} |
} |
return $result; |
return $result; |
} |
} |
Line 127 sub end_chemresponse {
|
Line 165 sub end_chemresponse {
|
$Apache::lonhomework::results{"resource.$partid.$id.awarddetail"}=$ad; |
$Apache::lonhomework::results{"resource.$partid.$id.awarddetail"}=$ad; |
$Apache::lonhomework::results{"resource.$partid.$id.molecule"}=$ENV{"form.MOLECULE_$id"}; |
$Apache::lonhomework::results{"resource.$partid.$id.molecule"}=$ENV{"form.MOLECULE_$id"}; |
} |
} |
|
} elsif ($target eq "edit") { |
|
$result.= &Apache::edit::tag_end($target,$token,''); |
} |
} |
&Apache::response::end_response; |
&Apache::response::end_response; |
return $result; |
return $result; |
} |
} |
|
|
sub start_chemstructure { |
sub start_chemstructure { |
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
my $result; |
|
if ($target eq 'web') { |
|
my $width=&Apache::lonxml::get_param('width',$parstack,$safeeval); |
|
my $height=&Apache::lonxml::get_param('height',$parstack,$safeeval); |
|
my $molecule=&Apache::lonxml::get_param('molecule',$parstack,$safeeval); |
|
$result=<<CHEMOUTPUT; |
|
<applet code="JME.class" archive="/adm/jme/JME.jar" width="$width" height="$height"> |
|
<param name="options" value="depict border" /> |
|
<param name="jme" value="$molecule" /> |
|
</applet> |
|
CHEMOUTPUT |
|
} elsif ($target eq 'edit') { |
|
$result .=&Apache::edit::tag_start($target,$token); |
|
$result .=&Apache::edit::text_arg('Width:','width',$token,5); |
|
$result .=&Apache::edit::text_arg('Height:','height',$token,5); |
|
$result .=&Apache::edit::text_arg('Molecule:','molecule',$token,40); |
|
my $molecule=&Apache::lonxml::get_param('molecule',$parstack, |
|
$safeeval); |
|
$result .=&seperate_jme_window(undef, |
|
&Apache::edit::html_element_name('molecule'), |
|
$molecule); |
|
$result .=&Apache::edit::end_row().&Apache::edit::start_spanning_row(); |
|
} elsif ($target eq 'modified') { |
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
|
$safeeval,'molecule', |
|
'width','height'); |
|
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
|
} |
|
return $result; |
} |
} |
|
|
sub end_chemstructure { |
sub end_chemstructure { |
|
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
my $result; |
|
if ($target eq "edit") { |
|
$result.= &Apache::edit::tag_end($target,$token,''); |
|
} |
|
return $result; |
} |
} |
|
|
1; |
1; |