File:  [LON-CAPA] / loncom / cgi / imagechoice.pl
Revision 1.3: download - view: text, annotated - select for diffs
Tue May 6 11:54:08 2003 UTC (21 years ago) by www
Branches: MAIN
CVS tags: HEAD
Fix Browse and Search to target id_curdepth instead of curdepth.id (???)
in attribute mode.

Enable clickable coordinate input.

#!/usr/bin/perl
#
# $Id: imagechoice.pl,v 1.3 2003/05/06 11:54:08 www Exp $
#
# Copyright Michigan State University Board of Trustees
#
# This file is part of the LearningOnline Network with CAPA (LON-CAPA).
#
# LON-CAPA is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# LON-CAPA is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with LON-CAPA; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
# /home/httpd/cgi-bin/plot.gif
#
# http://www.lon-capa.org/
#
use strict;

$|=1;

my %data;
foreach (split/&/,$ENV{'QUERY_STRING'}) {
    my ($name,$value)=split/=/;
    $data{$name}=$value;
}
my $filename = $data{'file'};
my $formname = $data{'formname'};
my $formx = $data{'formx'};
my $formy = $data{'formy'};
my $formwidth = $data{'formwidth'};
my $formheight = $data{'formheight'};
# unescape filename
$filename =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C",hex($1))/eg;


if ((defined($data{'x'})) && (defined($data{'y'}))) {
    my $output='';
    if ($data{'formwidth'}) {
	$output.='opener.document.forms.'.$data{'formname'}.'.'.$data{'formwidth'}.
	    '.value=document.pickimg.width;';
    }
    if ($data{'formheight'}) {
	$output.='opener.document.forms.'.$data{'formname'}.'.'.$data{'formheight'}.
	    '.value=document.pickimg.height;';
    }
    if ($data{'formx'}) {
	$output.='opener.document.forms.'.$data{'formname'}.'.'.$data{'formx'}.
	    '.value='.$data{'x'}.';';
    }
    if ($data{'formy'}) {
	$output.='opener.document.forms.'.$data{'formname'}.'.'.$data{'formy'}.
	    '.value='.$data{'y'}.';';
    }
    print <<"ENDSUBM";
Content-type: text/html

<html>
<script>
    function submitthis() {
	$output
	self.close();
    }
</script>
<body bgcolor="#FFFFFF" onLoad="submitthis()">
<h3>Position Selected</h3>
<img name="pickimg" src="$filename" />
</body>
</html>
ENDSUBM
} else {
    print <<"END";
Content-type: text/html

<html>
<body bgcolor="#FFFFFF">
<h3>Select Position on Image</h3>
<form>
<input type="hidden" name="formname" value="$formname" />
<input type="hidden" name="formx" value="$formx" />
<input type="hidden" name="formy" value="$formy" />
<input type="hidden" name="formwidth" value="$formwidth" />
<input type="hidden" name="formheight" value="$formheight" />
<input type="hidden" name="file" value="$filename" />
<input type="image" src="$filename" />
</form>
</body>
</html>
END
}




FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>