Example #1
0
function add_asset($asset_id)
{
    global $conn, $id;
    $sql = "INSERT INTO bp_process_asset_reference\n            (process_id, asset_id, severity) VALUES (?, ?, ?)";
    $params = array($id, $asset_id['bp_new_asset'], 1);
    if (!$conn->Execute($sql, $params)) {
        die($conn->ErrorMsg());
    }
    return draw_assets(false);
}
Example #2
0
function do_asset()
{
    global $client;
    global $error;
    $t = $client->t;
    $error = false;
    $newasset = mqpost('newasset');
    $updatepercent = mqpost('updatepercent');
    if ($newasset) {
        $scale = mqpost('scale');
        $precision = mqpost('precision');
        $assetname = mqpost('assetname');
        $storage = mqpost('storage');
        if (!(strlen($scale) > 0 && strlen($precision) > 0 && strlen($assetname) > 0)) {
            $error = "Scale, Precision, and Asset name must all be specified";
        } elseif (!(is_numeric($scale) && is_numeric($precision))) {
            $error = "Scale and Precision must be numbers";
        } elseif ($storage && !is_numeric($storage)) {
            $error = "Storage fee must be a number";
        } else {
            $error = $client->addasset($scale, $precision, $assetname, $storage);
        }
        if ($error) {
            draw_assets($scale, $precision, $assetname, $storage);
        } else {
            draw_assets();
        }
    } elseif ($updatepercent) {
        $percentcnt = mqpost('percentcnt');
        for ($i = 0; $i < $percentcnt; $i++) {
            $assetid = mqpost("assetid{$i}");
            $opercent = mqpost("opercent{$i}");
            $percent = mqpost("percent{$i}");
            if (!($percent === $opercent)) {
                // Detect differences in trailing zeroes
                $asset = $client->getasset($assetid);
                if (is_string($asset)) {
                    $error = "Can't find assetid: {$assetid}";
                } else {
                    $scale = $asset[$t->SCALE];
                    $precision = $asset[$t->PRECISION];
                    $assetname = $asset[$t->ASSETNAME];
                    $error = $client->addasset($scale, $precision, $assetname, $percent);
                }
                if ($error) {
                    break;
                }
            }
        }
        draw_assets();
    } else {
        draw_balance();
    }
}