addmembers.php 2.98 KB
<?
if($_POST) {
    $validator = array(
        "normal" => '/^[0-9]?$/',
        "pro" => '/^[0-9]?$/',
        "visitor" => '/^[0-9]?$/'
    );

    $errors = array();

    foreach($validator as $key => $val) {
        $curval = $_POST[$key];
        if ( !preg_match($val, $curval)) {
            array_push($errors, $key);
        }
    }
    if (count($errors) == 0) {
        $all = array();

        if($_POST['normal']) {
            foreach(range(1, $_POST['normal']) as $val) {
                array_push($all, array(
                    'TYPE' => 0,
                    'CREATED' => new Zend_Db_Expr('NOW()'),
                    'EDITED' => new Zend_Db_Expr('NOW()')
                    ));
            }
        }
        
        if($_POST['pro']) {
            foreach(range(1, $_POST['pro']) as $val) {
                array_push($all, array(
                    'TYPE' => 2,
                    'CREATED' => new Zend_Db_Expr('NOW()'),
                    'EDITED' => new Zend_Db_Expr('NOW()')
                    ));                   
            }
        }
        
        if($_POST['visitor']) {
            foreach(range(1, $_POST['visitor']) as $val) {
                array_push($all, array(
                    'TYPE' => 1,
                    'CREATED' => new Zend_Db_Expr('NOW()'),
                    'EDITED' => new Zend_Db_Expr('NOW()')
                    ));       
            }       
        }

        $ids = array();
        foreach($all as $ins) {
            $db->insert('USER', $ins);
            array_push($ids, $db->lastInsertId());
        }

        # connect user's to groups
        $gid = get_leaders_group($db, $_SESSION['uid']);
        foreach($ids as $id) {
            $db->insert('USERGROUP_USER', array('groups_ID' => $gid, 'members_ID' => $id));
        }
        # ADD leader to group! Fixed 20090815 2133 
        $sessuid = $db->quote($_SESSION['uid']);
        if (!$db->fetchOne("SELECT members_ID FROM USERGROUP_USER WHERE members_ID = $sessuid")) {
            $db->insert('USERGROUP_USER', array('groups_ID' => $gid, 'members_ID' => $_SESSION['uid']));
        }
        Header('Location:/index.php?pid=details&mid=0');
    }
}
$asia .= "<div id='left'>";

$f = new renderForm();
$f->start("index.php?pid=addmembers", "POST");
if(free_places($db, 0)) {
    $detail = free_places($db, 0) . '/' . total_places($db, 0);
    $f->inp("Tavallisia konepaikkoja $detail", 'normal');
}

if(free_places($db, 2)) {
    $detail = free_places($db, 2) . '/' . total_places($db, 2);
    $f->inp("PRO-konepaikkoja $detail", "pro");
}

$f->inp("Vierailijalippuja", "visitor");
$f->inp("&nbsp;", 'addmembers', 'submit', 'Tilaa');
$asia .= $f->end();
$asia .= "</div>";

$asia .= "<div id='right'>";
$asia .= note("Lisälippujen tilaaminen", "Voit tilata tästä lisää lippuja. Kirjoita lomakkeeseen haluamasi lipputyypin kohdalle kuinka monta lippua tilaat. Voit maksimissaan tilata 9 lippua / lipputyyppi. Mikäli tilauksesi menee tästä yli, tilausta ei rekisteröidä.");
$asia .= "</div>";
?>