}
}
if ($trans_id != '') {
    // initialize transactions structure with database values
    $trans->load($trans_id);
    if ($trans->id == '') {
        //not possible to load transaction, exit
        header('location: index.php');
        die;
    }
}
// Validation
$transaction['dyn'] = array();
if (isset($_POST['valid'])) {
    // dynamic fields
    $transaction['dyn'] = $dyn_fields->extractPosted($_POST, $_FILES, array(), $transaction['id_adh']);
    $dyn_fields_errors = $dyn_fields->getErrors();
    if (count($dyn_fields_errors) > 0) {
        $error_detected = array_merge($error_detected, $dyn_fields_errors);
    }
    // regular fields
    $valid = $trans->check($_POST, $required, $disabled);
    if ($valid !== true) {
        $error_detected = array_merge($error_detected, $valid);
    }
    if (count($error_detected) == 0) {
        //all goes well, we can proceed
        $new = false;
        if ($trans->id == '') {
            $new = true;
        }
                //a transaction? In most cases, it would be OK I guess, but I'm
                //very unsure
                //$disabled['id_adh'] = ' disabled="disabled"';
            }
        }
        //second step only: first step, and all the rest
        // flagging required fields for second step
        $second_required = array('montant_cotis' => 1, 'date_debut_cotis' => 1, 'date_fin_cotis' => $contrib->isCotis());
        $required = $required + $second_required;
    }
}
// Validation
$contribution['dyn'] = array();
if (isset($_POST['valid'])) {
    // dynamic fields
    $contribution['dyn'] = $dyn_fields->extractPosted($_POST, $_FILES, array(), $id_adh);
    $dyn_fields_errors = $dyn_fields->getErrors();
    if (count($dyn_fields_errors) > 0) {
        $error_detected = array_merge($error_detected, $dyn_fields_errors);
    }
    // regular fields
    $valid = $contrib->check($_POST, $required, $disabled);
    if ($valid !== true) {
        $error_detected = array_merge($error_detected, $valid);
    }
    if (count($error_detected) == 0) {
        //all goes well, we can proceed
        if ($contrib->isCotis()) {
            // Check that membership fees does not overlap
            $overlap = $contrib->checkOverlap();
            if ($overlap !== true) {
Beispiel #3
0
$required = $fc->getRequired();
// flagging fields visibility
$visibles = $fc->getVisibilities();
// disable some fields
$disabled = $member->disabled_fields;
// DEBUT parametrage des champs
// On recupere de la base la longueur et les flags des champs
// et on initialise des valeurs par defaut
$update_string = '';
$insert_string_fields = '';
$insert_string_values = '';
$has_register = false;
$fields = Adherent::getDbFields();
if (isset($_POST["nom_adh"])) {
    // dynamic fields
    $adherent['dyn'] = $dyn_fields->extractPosted($_POST, $_FILES, $disabled, $member->id);
    $dyn_fields_errors = $dyn_fields->getErrors();
    if (count($dyn_fields_errors) > 0) {
        $error_detected = array_merge($error_detected, $dyn_fields_errors);
    }
    // regular fields
    $valid = $member->check($_POST, $required, $disabled);
    if ($valid !== true) {
        $error_detected = array_merge($error_detected, $valid);
    }
    if (count($error_detected) == 0) {
        //all goes well, we can proceed
        $store = $member->store();
        if ($store === true) {
            //member has been stored :)
            //Send email to admin if preference checked