Exemplo n.º 1
0
if (!elgg_instanceof($voucher, 'object', 'vouchers')) {
    // if not voucher entity
    $errmsg = elgg_echo('vouchers:get_with_points:voucher_entity_missing');
}
$buyer_profil = get_user($buyer_guid);
if (!elgg_instanceof($buyer_profil, 'user')) {
    // if not user entity
    $errmsg = elgg_echo('vouchers:get_with_points:user_entity_missing');
}
if ($errmsg) {
    register_error($errmsg);
} else {
    $subtract = false;
    // subtract buyer elggx userpoints if required
    if ($voucher->points && elgg_is_active_plugin("elggx_userpoints")) {
        $subtract = userpoints_subtract($buyer_guid, $voucher->points, elgg_echo('vouchers:get_with_points:description', array($voucher->guid)), 'vouchers', $voucher->guid);
    }
    if ($subtract) {
        $vouchersale = new ElggObject();
        $vouchersale->subtype = "vsales";
        $vouchersale->access_id = 0;
        $vouchersale->save();
        // set object metadata
        $transaction_date = date('Y-m-d H:i:s');
        $vouchersale->container_guid = $voucher->container_guid;
        $vouchersale->owner_guid = $buyer_guid;
        $vouchersale->txn_vguid = $voucher->guid;
        $vouchersale->txn_buyer_guid = $buyer_guid;
        $vouchersale->txn_date = $transaction_date;
        $vouchersale->txn_id = 'VElggx-' . $voucher->guid . '-' . $buyer_guid;
        $vouchersale->txn_code = get_voucher_code($voucher);
Exemplo n.º 2
0
$access = get_input('access');
$receiver = get_entity($receiver_guid);
$sender = elgg_get_logged_in_user_entity();
$sender_guid = $sender->getGUID();
// No Friend selected?
if (!$receiver instanceof ElggUser || empty($gift_id)) {
    register_error(elgg_echo("gifts:blank"));
    forward("gifts/" . $sender->name . "/sendgift");
}
// Userpoints
$useuserpoints = elgg_get_plugin_setting('useuserpoints', 'gifts');
if ($useuserpoints == 1 && function_exists('userpoints_subtract')) {
    $pTemp = userpoints_get($sender_guid);
    $points = $pTemp['approved'];
    // Set new Point Value
    if (userpoints_subtract($sender_guid, $cost, 'gifts')) {
        system_message(elgg_echo('gifts:pointsuccess'));
    } else {
        system_message(elgg_echo('gifts:pointfail'));
    }
}
// create a gifts object
$gift = new ElggObject();
$gift->description = $body;
$gift->receiver = $receiver_guid;
$gift->gift_id = $gift_id;
$gift->subtype = "gift";
$gift->access_id = $access;
$gift->owner_guid = $sender_guid;
// save to database
$gift->save();