#include "..\script_component.hpp"

/*
 * Author: IDSolutions
 * Transfers money to a player.
 *
 * Arguments:
 * None
 *
 * Return Value:
 * None
 *
 * Example:
 * [] call forge_client_bank_fnc_transfer;
 *
 * Public: Yes
 */

private _display = findDisplay IDD_BANKDIALOG;
private _input = _display displayCtrl IDC_AMOUNTINPUT;
private _dropdown = _display displayCtrl IDC_PLAYERINPUT;

private _amount = parseNumber (ctrlText _input);
private _selectedTarget = lbCurSel _dropdown;
private _selectedTargetData = _dropdown lbData _selectedTarget;
private _target = objectFromNetId _selectedTargetData;

private _fromUid = getPlayerUID player;
private _toUid = getPlayerUID _target;

private _messageData = createHashMapFromArray [
    ["event", "TRANSFER::FUNDS"],
    ["data", createHashMapFromArray [
        ["fromUid", _fromUid],
        ["toUid", _toUid],
        ["amount", _amount]
    ]]
];

private _response = [QGVAR(handleEvents), (toJSON _messageData)] call CFUNC(localEvent);

if (_response) then {
    [format ["Transferred $%1", _amount], "info", 3, "right"] call EFUNC(misc,notify);
} else {
    [format ["Transfer failed"], "warning", 3, "right"] call EFUNC(misc,notify);
};