File: clickable_image.cgi

package info (click to toggle)
libcgi-pm-perl 4.44-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 1,016 kB
  • sloc: perl: 5,932; makefile: 9
file content (56 lines) | stat: -rwxr-xr-x 1,438 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/usr/bin/env perl

use strict;
use warnings;

use CGI;
use Template;

my $cgi = CGI->new;
my $template_vars;

if ( $cgi->param ) {
	foreach my $var ( qw/ magnification letter x y / ) {
		$template_vars->{$var} = $cgi->param(
			$var =~ /^[xy]$/ ? "picture.$var" : $var
		);
	}
}

my $tt  = Template->new;
print $cgi->header(
    -type    => 'text/html',
    -charset => 'utf-8',
);

$tt->process( \*DATA,$template_vars ) or warn $tt->error;

__DATA__
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>A Clickable Image</title>
	</head>
	<body>
		<h1>A Clickable Image</h1>
		</a>
		<p>Sorry, this isn't very exciting!</p>
		<form method="post" action="/clickable_image/">
			<input type="image" name="picture" src="/wilogo.gif" />
			<p>Give me a:
			<select name="letter" >[%- FOREACH letter_opt IN [ 'A','B','C','D','E','W' ] %]
				<option value="[% letter_opt %]" [% IF letter == letter_opt %]selected[% END %]>[% letter_opt %]</option>
			[%- END %]</select>
			</p>
			<p>Magnification:
			[% FOREACH magnification_opt IN [ 1,2,4,20 ] -%]
				[%- %]<label><input type="radio" name="magnification" value="[% magnification_opt %]"[%
						IF magnification.defined AND magnification == magnification_opt %] checked="checked"[% END
					%]/>[% magnification_opt %]X</label>
			[% END -%]
			[%- IF x.defined AND y.defined %]
				<p>Selected Position <strong>([% x %],[% y %])</strong></p>
			[% END %]
	</body>
</html>