require_once("MedodoDiPagamento.php");
class FormRaccoltaDati extends MedodoDiPagamento{
var $nome_metodo = "Form raccolta dati";
var $dati_pagamento = array();
var $useInclude = false;
var $file = false;
// var $onSubmit = function($dati){};
var $step_var = "form_step";
function setValuta($code){
}
function auto(){
switch($_GET[$this->step_var]){
default:
$form = $this->Procedura->iniziato($this->nome_metodo);
$dati = '';
foreach($this->dati_pagamento as $nome=>$dato){
$dati .= '
'.(!is_numeric($nome)?''.$nome.'':'').''.$dato.'
';
}
if($this->useInclude){
ob_start();
include($this->file);
$html = ob_get_clean();
}
else $html = file_get_contents($this->file);
$form .= str_replace(
array(
"##URL_OK##",
"##URL_KO##",
"##URL_RESTART##",
"##URL_EXIT##",
"##LABEL_EXIT##",
"##DATI##",
),
array(
$this->Procedura->genera_link_agg(array($this->step_var=>"return_ok")),
$this->Procedura->genera_link_agg(array($this->step_var=>"return_ko")),
$this->Procedura->genera_link_restart(),
$this->exit_url,
$this->Procedura->htmlentities($this->Procedura->testo_uscita_dopo_esito),
$dati
),
$html
);
return $form;
break;
case 'return_ok':
if($_POST){//posso fare anche un post per uscire
$dati = array();
foreach($_POST as $f=>$v) $dati[] = "\n| ".strtoupper($f).": $v";
if($dati){
$this->Procedura->comunicazione_s2s($this->identificativo, "Dati inseriti dall'utente: ".implode(" - ", $dati));
if($this->onSubmit) call_user_func($this->onSubmit, $_POST);
}
}
return $this->Procedura->concluso();
case 'return_ko':
return $this->Procedura->annulla();
}
}
}
?>