#! /usr/bin/env perl

use strict;

use CGI qw/:standard/;
use Fortune;
use HTML::Entities;

my $db_file = '/tmp/fortunes';

my $cgi = new CGI;

my $f = Fortune->new($db_file);
$f->read_header;
my $count = $f->num_fortunes;
my $first = 0;
my $last = $count - 1;

print header, "\n";
print start_html(
			-title => 'Fortunes',
			-head  => meta({ -http_equiv => 'Content-Type',
							 -content    => 'text/html; charset=utf-8' }
				)
			), "\n";
print
    div({style => "text-align:center"},
        h1 "Les fortunes de l'ENS Lyon"
    );

my $id = 0;
if (url_param() && defined url_param('id')) {
    $id = url_param('id');
}
else {
	$id = int(rand $count);
}

my $fortune = encode_entities($f->read_fortune($id));
$fortune = join("<br />\n", split(/\n/, $fortune));
my $previous = $id - 1;
my $next = $id + 1;

print
	p,
	a({href => "fortunes-add.cgi"}, "Ajouter une fortune");

print
	p, $fortune,
	hr;

print a({href => url."?id=$first"}, "First");

if (defined $previous && $previous >= 0) {
		print a({href => url."?id=$previous"}, "Previous");
}
else {
	print "Previous";
}

print a({href => url}, "Random");

if (defined $next && $next < $count) {
		print a({href => url."?id=$next"}, "Next");
}
else {
	print "Next";
}

print a({href => url."?id=$last"}, "Last");

print
    end_html(), "\n";
    
