Esempio n. 1
0
def coinj_post(secret, participants=3, amount='0.01'):
    """
     POST information into a CoinJoin
    """
    if secret in transactions:
        t = transactions[secret]

        # collect post arguments
        input = request.form.get('input')
        output = request.form.get('output')
        sig = request.form.get('sig')
        message = request.form.get('message')

        # Add a message
        if message:
            t.add_message(message)
        # Execute commands
        if input and input.isalnum():
            return jsonify({'status': t.add_input(input)})
        elif output and output.isalnum():
            return jsonify({'status': min(t.add('outputs', output), 0)})
        elif sig:
            # only alphanumeric and colon
            sig = re.sub(r'[^a-zA-Z0-9:]', '', sig)
            sig_idx = int(request.form.get('sig_idx'))
            return jsonify(
                {'status': min(t.add('signatures', [sig_idx, sig]), 0)})
        # if no command return error
        return jsonify({'error': 'Invalid command', 'status': -1}, 402)
    # group not found
    return jsonify({'error': 'Group does not exist'}, 400)
Esempio n. 2
0
def coinj_post(secret, participants=3, amount='0.01'):
    """
     POST information into a CoinJoin
    """
    if secret in transactions:
        t = transactions[secret]

        # collect post arguments
        input = request.form.get('input')
        output = request.form.get('output')
        sig = request.form.get('sig')
        message = request.form.get('message')

        # Add a message
        if message:
            t.add_message(message)
        # Execute commands
        if input and input.isalnum():
            return jsonify({'status': t.add_input(input)})
        elif output and output.isalnum():
            return jsonify({'status': min(t.add('outputs', output), 0)})
        elif sig:
            # only alphanumeric and colon
            sig = re.sub(r'[^a-zA-Z0-9:]', '', sig)
            sig_idx = int(request.form.get('sig_idx'))
            return jsonify({'status': min(t.add('signatures', [sig_idx, sig]), 0)})
        # if no command return error
        return jsonify({'error': 'Invalid command', 'status': -1}, 402)
    # group not found
    return jsonify({'error': 'Group does not exist'}, 400)
Esempio n. 3
0
def page_json():
    """
     Print public transactions in json format
     """
    return jsonify({
        'links':
        map(lambda s: transactions[s].report_status(), get_public_tx())
    })
Esempio n. 4
0
def coinj_get(secret, participants=3, amount='0.01'):
    """
     GET information for a CoinJoin
    """
    if secret in transactions:
        t = transactions[secret]
    else:
        # validate but keep as str for now
        amount = str(Decimal(amount))
        t = SimpleCoinJoin(int(participants), amount)
        transactions[secret] = t
    return jsonify(t.report_status())
Esempio n. 5
0
def coinj_get(secret, participants=3, amount='0.01'):
    """
     GET information for a CoinJoin
    """
    if secret in transactions:
        t = transactions[secret]
    else:
        # validate but keep as str for now
        amount = str(Decimal(amount))
        t = SimpleCoinJoin(int(participants), amount)
        transactions[secret] = t
    return jsonify(t.report_status())
Esempio n. 6
0
def status_page():
    return jsonify({
        'status': "ALL SYSTEMS GO GO",
        'transactions': len(transactions)
    })
Esempio n. 7
0
def status_page():
    return jsonify({'status': "ALL SYSTEMS GO GO", 'transactions': len(transactions)})
Esempio n. 8
0
def page_json():
     """
     Print public transactions in json format
     """
     return jsonify({'links': map(lambda s: transactions[s].report_status(), get_public_tx())})