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);
$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();