#include <stdio.h>
#ifndef NO_STDLIB_H
#include <stdlib.h>
#endif
#include "cgi-util.h"

#define MAX_ENTRIES 1000
#define MAX_APOSTAS 12

int main(int argc, char *argv[])
{
entry entries[MAX_ENTRIES];
int x, m, p;
char value[80];
int ncruzes = 0, i;int apostas[MAX_APOSTAS];char aposta[15];
int multiplas[] = {0, 0, 0, 0, 0, 0, 1, 7, 28, 84, 210, 462, 924};
int napostas;
float preco, preco_esc;

	/**CGI: inicializar o modulo de CGI **/
	m = cgi_init(entries, sizeof(entries)/sizeof(entries[0]));
	if (m < 0)
	{
		/**CGI: reportar erro no modulo **/
		cgi_send_error(m);
		exit(1);
	}

	/**CGI: indicar tipo de conteudo da resposta **/  
	cgi_send_header(HEADER_TYPE_TEXT_HTML);
	
	/**CGI: procurar por um valor **/
	p = cgi_get_value_from_key(value, sizeof(value), "n", 0, entries, m);	ncruzes = atoi(value);	if (p == -1 || ncruzes == 0)	{
		/* Erro */		puts("<html><body>");
		puts("<strong>Aparentemente você não usou a nossa página do Totoloto</strong><br>");
		puts("clique <a href='http://www.dei.isep.ipp.pt/~psousa/aulas/amb-des/TLOTO2.htm'>aqui</a>");
		puts("</body></html>");
		exit(1);	}		if (ncruzes < 6)	{
		/* Erro */		puts("<html><body>");
		puts("<strong>Você não preencheu devidamente o Totoloto</strong><br>");
		puts("clique <a href='javascript:history.back();'>aqui</a>");
		puts("</body></html>");
		exit(1);	}
		
	/* obter as apostas */	for (i = 0; i < ncruzes; i++)	{		sprintf(aposta, "text%d", i+1);
				/**CGI: procurar por um valor **/
		p = cgi_get_value_from_key(value, sizeof(value), aposta, 0, entries, m);		apostas[i] = atoi(value);		if (p == -1 || apostas[i] == 0)		{
			/* Erro */			puts("<html><body>");
			puts("<strong>Aparentemente você não usou a nossa página do Totoloto</strong><br>");			printf("<em>DEBUG: </em> n=%d i=%d aposta=%s<br>", ncruzes, i, aposta);
			puts("clique <a href='http://www.dei.isep.ipp.pt/~psousa/aulas/amb-des/TLOTO2.htm'>aqui</a>");
			puts("</body></html>");
			exit(1);		}		}

	napostas = multiplas[ncruzes];
	preco = napostas * 0.25;
	preco_esc = preco * 200.482;
	/* construir documento */	puts("<html><body>");
	printf("<H1>Totoloto electronico</H1>\n");
	printf("<em>Casa da Lotaria Informática na Internet</em>");	puts("<hr>"); 
	printf("<em>Nº de cruzes: </em>%d<br>", ncruzes);
	printf("<em>Nº de apostas: </em>%d<br>", napostas);	printf("<em>Preço: </em> %g Euros (%g Esc.)<br>", preco, preco_esc);
	puts("<em>Apostas: </em>");	for (i = 0; i < ncruzes; i++)	{
		printf("%d &nbsp;", apostas[i]);	}	puts("</body></html>");	
	/**CGI: libertar recursos do modulo **/
	cgi_uninit(entries, m);		return 0;
}

