示例#1
0
文件: checkdata.lib.php 项目: mmr/b1n
function b1n_checkHour($hour, $min, $mandatory = false)
{
    if (!$mandatory && (empty($hour) && empty($min))) {
        return true;
    }
    $ret = b1n_checkNumeric($hour, $mandatory) && b1n_checkNumeric($min, $mandatory);
    $ret = $ret && ($hour >= 0 && $hour <= 23) && ($min >= 0 && $min <= 59);
    return $ret;
}
示例#2
0
文件: search.lib.php 项目: mmr/b1n
function b1n_checkSearch(&$search, $ret, $session_hash_name, $select_first_if_none = true)
{
    if (!isset($search["pg_actual"]) || !b1n_checkNumeric($search["pg_actual"]) || $search["pg_actual"] <= 0) {
        $pg_actual = 1;
    } else {
        $pg_actual = $search["pg_actual"];
    }
    if (!isset($search["search_quantity"]) || !in_array($search["search_quantity"], $ret["possible_quantities"])) {
        if (isset($_SESSION["search"][$session_hash_name]["search_quantity"])) {
            $search["search_quantity"] = $_SESSION["search"][$session_hash_name]["search_quantity"];
        } else {
            $search["search_quantity"] = b1n_DEFAULT_QUANTITY;
        }
    }
    if (!$search["search_order_type"] == 'ASC' && !$search["search_order_type"] == 'DESC') {
        if (isset($_SESSION["search"][$session_hash_name]["search_order_type"])) {
            $search["search_order_type"] = $_SESSION["search"][$session_hash_name]["search_order_type"];
        } else {
            $search["search_order_type"] = 'ASC';
        }
    }
    if (in_array($search["search_field"], $ret["possible_fields"]) && in_array($search["search_order"], $ret["select_fields"])) {
        return true;
    } else {
        if (isset($_SESSION["search"][$session_hash_name]["search_field"])) {
            $search["search_field"] = $_SESSION["search"][$session_hash_name]["search_field"];
        } else {
            if ($select_first_if_none) {
                $search["search_field"] = array_shift($ret["possible_fields"]);
            } else {
                $search["search_field"] = "";
            }
        }
        if (isset($_SESSION["search"][$session_hash_name]["search_order"])) {
            $search["search_order"] = $_SESSION["search"][$session_hash_name]["search_order"];
        } else {
            $search["search_order"] = $search["search_field"];
        }
        if (isset($_SESSION["search"][$session_hash_name]["search_text"])) {
            $search["search_text"] = $_SESSION["search"][$session_hash_name]["search_text"];
        }
        $search["pg_actual"] = $pg_actual;
    }
    return true;
}
示例#3
0
文件: add.php 项目: mmr/b1n
} else {
    b1n_getVar("last_leg_id", $reg_data['last_leg_id']);
    if (!b1n_checkNumeric($reg_data['last_leg_id'], true)) {
        $query = "SELECT leg_id FROM \"leg\" ORDER BY leg_keeptrack_dt DESC";
        $rs = $sql->singleQuery($query);
        if ($rs && is_array($rs)) {
            $reg_data['last_leg_id'] = $rs['leg_id'];
        } else {
            // Prolly very first leg, so, ETD is mandatory
            $reg_config['ETD']['mand'] = true;
        }
    }
}
$colspan = 3;
$disable_etd_dt = false;
if (!empty($reg_data['last_leg_id']) && b1n_checkNumeric($reg_data['last_leg_id'])) {
    $query = "\n        SELECT\n            acf_id,\n            apt_id_depart,\n            apt_id_arrive,\n\n            leg_groundtime_i IS NOT NULL AS leg_groundtime_i,\n            leg_keeptrack_dt::timestamp\n            +\n                CASE WHEN (leg_ete_i IS NULL) THEN\n                    '00:00'::interval\n                ELSE\n                    leg_ete_i::interval\n                END\n            +\n                CASE WHEN (leg_groundtime_i IS NULL) THEN\n                    '00:00'::interval\n                ELSE\n                    leg_groundtime_i::interval\n                END AS leg_keeptrack_dt,\n\n            cmb_id_pic,\n            cmb_id_sic,\n            cmb_id_extra1,\n            cmb_id_extra2\n        FROM\n            \"leg\" \n        WHERE\n            leg_id = '" . b1n_inBd($reg_data['last_leg_id']) . "'";
    $rs = $sql->singleQuery($query);
    switch ($action0) {
        case 'getdefaults':
            // Pax List from Last Leg
            $reg_data['paxs'] = b1n_regDefaultLegPaxList($sql, $reg_data['last_leg_id']);
            if ($rs && is_array($rs)) {
                // Default depart airport is the Last Arrive Airport
                $reg_data['apt_id_depart'] = $rs['apt_id_arrive'];
                // Default arrive airport is the Last Depart Airport
                $reg_data['apt_id_arrive'] = $rs['apt_id_depart'];
                // Default Depart date is keeptrack
                // $reg_data['leg_etd_dt'] = b1n_formatDateHourFromDb($rs['leg_keeptrack_dt']);
                // PIC/SIC/Extra1/Extra2 from Last Leg
                $reg_data['cmb_id_pic'] = $rs['cmb_id_pic'];
示例#4
0
文件: map.lib.php 项目: mmr/b1n
function b1n_mapWithdraw($money)
{
    global $sql;
    if (!empty($money) && b1n_checkNumeric($money) && $money > 0) {
        $money = (int) $money;
        if ($money > $_SESSION['player']['pla_bank_money']) {
            $money = $_SESSION['player']['pla_bank_money'];
        }
        if ($money > 0) {
            $query = "\n        UPDATE player\n        SET\n          pla_money = pla_money + " . b1n_inBd($money) . ",\n          pla_bank_money = pla_bank_money - " . b1n_inBd($money) . "\n        WHERE\n          pla_id = '" . $_SESSION['player']['pla_id'] . "'";
            $rs = $sql->sqlQuery($query);
            if ($rs) {
                $aux = array('money' => $money);
                b1n_logAction('withdraw', $aux);
                $_SESSION['player']['pla_money'] += $money;
                $_SESSION['player']['pla_bank_money'] -= $money;
            }
        }
    }
}
示例#5
0
文件: index.php 项目: mmr/b1n
<?php

// $Id: index.php,v 1.11 2003/02/19 22:51:13 binary Exp $
$ret_msgs = array();
b1n_getVar("action2", $action2);
b1n_getVar("ids", $ids);
if (!is_array($ids)) {
    $ids = explode(':', $ids);
}
$leg_id = $ids[sizeof($ids) - 1];
if (!b1n_checkNumeric($leg_id, true)) {
    b1n_regGoBackExit('Could not get ID of last leg Checked.\\nAborting PDF Generation.' . $leg_id);
}
switch ($action1) {
    case 'config':
        // Config PDF Generation
        switch ($action0) {
            case 'handler':
            case 'permit':
            case 'gedec':
                $page1_title = '';
                // This require defines the $reg_config hash
                // And the beginning of the $page1_title
                require $page0 . '/' . $page1 . '/' . $action0 . '.php';
                $page1_title .= ' PDF Configuration';
                if ($action2 == 'generate') {
                    $func_check = 'b1n_regPdfCheck' . ucfirst($action0);
                    $reg_data = b1n_regExtract($reg_config);
                    if ($func_check($sql, $ret_msgs, $reg_data, $reg_config)) {
                        // Everything is fine, Generate PDF
                        $action2 = 'GO';
示例#6
0
文件: leg.lib.php 项目: mmr/b1n
function b1n_regDefaultLegSearchSimilar($sql, $apt_id_depart, $apt_id_arrive)
{
    if (b1n_checkNumeric($apt_id_depart) && b1n_checkNumeric($apt_id_arrive)) {
        $query = "SELECT func_similar_leg('" . b1n_inBd($apt_id_depart) . "', '" . b1n_inBd($apt_id_arrive) . "') AS similar_leg";
        $rs = $sql->singleQuery($query);
        return $rs['similar_leg'];
    }
}
示例#7
0
文件: change.php 项目: mmr/b1n
}
// Checking if last leg has groundtime
$query = "\n    SELECT\n        leg_id as last_leg_id,\n        leg_groundtime_i IS NOT NULL AS have_groundtime\n    FROM\n        \"leg\"\n    WHERE\n        leg_keeptrack_dt < '" . b1n_inBd(b1n_formatDateHour($reg_data['leg_etd_dt'])) . "'\n    ORDER BY\n        leg_keeptrack_dt DESC";
$rs = $sql->singleQuery($query);
if ($rs && is_array($rs)) {
    $reg_data['last_leg_id'] = $rs['last_leg_id'];
    if ($rs['have_groundtime'] == 't') {
        // Yes, it has, disable etd_dt select box
        $disable_etd_dt = true;
    }
} else {
    // Prolly very first leg, so, ETD is mandatory
    $reg_config['ETD']['mand'] = true;
}
// Seeing if we have to check for leg similarity
if ($action0 == 'similarleg' && b1n_checkNumeric($reg_data['apt_id_depart'], true) && b1n_checkNumeric($reg_data['apt_id_arrive'], true)) {
    $aux = b1n_regDefaultLegSearchSimilar($sql, $reg_data['apt_id_depart'], $reg_data['apt_id_arrive']);
    if ($aux) {
        list($reg_data['leg_ete_i'], $reg_data['leg_distance'], $reg_data['leg_fuel']) = explode('|', $aux);
        unset($aux);
        if ($reg_data['leg_fuel'] === 0) {
            $reg_data['leg_fuel'] = '';
        }
        $reg_data['leg_ete_i'] = b1n_formatHourFromDb($reg_data['leg_ete_i']);
    }
}
?>
<script language="JavaScript">
function b1n_verifyAirports(f)
{
    var d = f.apt_id_depart.options[f.apt_id_depart.selectedIndex]; 
示例#8
0
文件: reg.lib.php 项目: mmr/b1n
function b1n_regCheckChange($sql, &$ret_msgs, $reg_data, $reg_config)
{
    $ret = true;
    foreach ($reg_config as $t => $r) {
        $msg = "";
        switch ($r['check']) {
            case "none":
                if ($r['mand'] && empty($reg_data[$r['reg_data']]) && $r['type'] != 'password') {
                    $msg = "Please, fill the <b>" . $t . "</b> field.";
                }
                break;
            case "numeric":
                if (!b1n_checkNumeric($reg_data[$r["reg_data"]], $r['mand'])) {
                    $msg = "Invalid <b>" . $t . "</b> (Only numbers are allowed).";
                }
                break;
            case "date":
                if (!b1n_checkDate($reg_data[$r["reg_data"]]["month"], $reg_data[$r["reg_data"]]["day"], $reg_data[$r["reg_data"]]["year"], $r['mand'])) {
                    $msg = "Invalid date in <b>" . $t . "</b>.";
                }
                break;
            case "date_hour":
                if (!b1n_checkDate($reg_data[$r["reg_data"]]["month"], $reg_data[$r["reg_data"]]["day"], $reg_data[$r["reg_data"]]["year"], $reg_data[$r["reg_data"]]["hour"], $reg_data[$r["reg_data"]]["min"], $r['mand'])) {
                    $msg = "Invalid date/hour in <b>" . $t . "</b>.";
                }
                break;
            case "email":
                if (!b1n_checkEmail($reg_data[$r["reg_data"]])) {
                    $msg = "Invalid <b>" . $t . "</b> (Example: user@domain.org).";
                }
                break;
            case "length":
                if (strlen($reg_data[$r["reg_data"]]) > $r["extra"]["maxlen"]) {
                    $msg = "No more than '" . $r["extra"]["maxlen"] . "' characters are allowed in <b>" . $t . "</b>";
                }
                break;
            case "radio":
                if (!b1n_checkFilled($reg_data[$r["reg_data"]])) {
                    $msg = "Please, choose something on <b>" . $t . "</b>.";
                }
                break;
            case "boolean":
                if (!b1n_checkBoolean($reg_data[$r["reg_data"]], $r['mand'])) {
                    $msg = "Please, choose something on <b>" . $t . "</b>.";
                }
                break;
            case "unique":
                if ($r['mand'] && empty($reg_data[$r['reg_data']])) {
                    $msg = "Please, fill the <b>" . $t . "</b> field.";
                    break;
                }
                $query = "SELECT " . $reg_config['ID']['db'] . " AS id FROM \"" . $r['extra']['table'] . "\" WHERE " . $r['db'] . " = '" . b1n_inBd($reg_data[$r["reg_data"]]) . "' AND " . $reg_config['ID']['db'] . " != '" . b1n_inBd($reg_data["id"]) . "'";
                $rs = $sql->singleQuery($query);
                if (is_array($rs)) {
                    global $page1_title;
                    $msg = "There is already one " . $page1_title . " with this <b>" . $t . "</b>.";
                    unset($page1_title);
                }
                break;
            case "fk":
                if (is_array($reg_data[$r['reg_data']]) && $r['mand'] && !sizeof($reg_data[$r['reg_data']])) {
                    $msg = "Please, select something in <b>" . $t . "</b>.";
                } else {
                    if (!b1n_checkNumeric($reg_data[$r["reg_data"]], $r['mand'])) {
                        $msg = "Please, select something in <b>" . $t . "</b>.";
                    }
                }
                break;
            case "hour":
                if (isset($reg_data[$r["reg_data"]]["hour"])) {
                    if (!b1n_checkHour($reg_data[$r["reg_data"]]["hour"], $reg_data[$r["reg_data"]]["min"], $r["mand"])) {
                        $msg = "Invalid Hour/Minute in <b>" . $t . "</b>.";
                    }
                }
                break;
        }
        if (!empty($msg)) {
            b1n_retMsg($ret_msgs, b1n_FIZZLES, $msg);
            $ret = false;
        }
    }
    return $ret;
}
示例#9
0
文件: index.php 项目: mmr/b1n
<?php

/* $Id: index.php,v 1.3 2002/12/23 13:57:53 binary Exp $ */
b1n_getVar("id", $id);
if (!b1n_checkNumeric($id)) {
    ?>
    <script language='JavaScript'>
        history.go(-1);
        window.alert('ID is missing.\nDownload aborted.');
    </script>
    <?php 
    exit;
}
$query = "SELECT fil_fake_name FROM \"file\" WHERE fil_id = '" . b1n_inBd($id) . "'";
$rs = $sql->singleQuery($query);
if (!$rs) {
    ?>
    <script language='JavaScript'>
        history.go(-1);
        window.alert('ID Not Registered.\nDownload Aborted.');
    </script>
    <?php 
    exit;
}
$fil_fake = $rs['fil_fake_name'];
$fil_real = b1n_UPLOAD_DIR . "/fil_" . $id;
if (is_readable($fil_real)) {
    header("Content-Type: octet/stream");
    //header("Content-Length: ...");
    header("Content-Disposition: attachment; filename=" . $fil_fake);
    readfile($fil_real);