function genHiddenFieldsArray($aHiddenFields = array())
{
//retrieve next page
$iPageInd = (int) array_search($this->iPage, $this->aPages);
$iNextInd = $iPageInd + 1;
if (array_key_exists($iNextInd, $this->aPages)) {
$sNextPage = $this->aPages[$iNextInd];
} else {
$sNextPage = 'done';
}
// insert next page
$aHiddenFields['join_page'] = $sNextPage;
//echoDbg( $this -> aValues );
// insert entered values
$iHumans = $this->bCouple ? 2 : 1;
for ($iHuman = 0; $iHuman < $iHumans; $iHuman++) {
foreach ($this->aPages as $iPage) {
if ($iPage == $this->iPage) {
break;
}
// we are on this page
$aBlocks = $this->oPF->aArea[$iPage];
foreach ($aBlocks as $aBlock) {
foreach ($aBlock['Items'] as $aItem) {
$sItemName = $aItem['Name'];
if (isset($this->aValues[$iHuman][$sItemName])) {
$mValue = $this->aValues[$iHuman][$sItemName];
switch ($aItem['Type']) {
case 'pass':
$aHiddenFields[$sItemName . '_confirm[' . $iHuman . ']'] = $mValue;
case 'text':
case 'area':
case 'html_area':
case 'date':
case 'datetime':
case 'select_one':
case 'num':
$aHiddenFields[$sItemName . '[' . $iHuman . ']'] = $mValue;
break;
case 'select_set':
foreach ($mValue as $iInd => $sValue) {
$aHiddenFields[$sItemName . '[' . $iHuman . '][' . $iInd . ']'] = $sValue;
}
break;
case 'range':
$aHiddenFields[$sItemName . '[' . $iHuman . '][0]'] = $mValue[0];
$aHiddenFields[$sItemName . '[' . $iHuman . '][1]'] = $mValue[1];
break;
case 'bool':
$aHiddenFields[$sItemName . '[' . $iHuman . ']'] = $mValue ? 'yes' : '';
break;
case 'system':
switch ($aItem['Name']) {
case 'Couple':
case 'TermsOfUse':
$aHiddenFields[$sItemName] = $mValue ? 'yes' : '';
break;
case 'Captcha':
$aHiddenFields[$sItemName] = $mValue;
break;
case 'ProfilePhoto':
$aHiddenFields['ProfilePhoto_tmp'] = $mValue;
break;
}
break;
}
}
}
}
}
}
return $aHiddenFields;
}