-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsend_bitcoin.py
48 lines (45 loc) · 1.89 KB
/
send_bitcoin.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Unicode - Django
__author__ = 'cemkiy'
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "jackalprojects.settings")
from member.models import Orders
from django.template.loader import get_template
import decimal
from bitcoin.coinbase_api import coinbase_api
from mailgun import mailgun
from django.template import Context
from coinbase import CoinbaseAmount
from decimal import Decimal
def main():
coinbase_operator = coinbase_api()
orders = Orders.objects.filter(status='4', active=True).all()
for order in orders:
amount = Decimal(order.on_sales.amount_bitcoin) * int(order.total_ticket)
print amount
comission = amount/10
comission = comission + Decimal(0.0001)
print comission
amount = amount - comission # without comission
print amount
try:
c_amount = CoinbaseAmount(amount, 'BTC')
coinbase_operator.send_bitcoin(adress=order.user_url_for_btc_send, amount=c_amount, note='fazladanbilet sends your bitcoin')
order.status = '0'
order.save()
template = get_template("mail_send_bitcoin.html")
context = Context({'username': order.on_sales.member.username,
'ticket_name': order.on_sales.title,
'bitcoin_url': order.user_url_for_btc_send,
'amount': amount}) #send amount
content = template.render(context)
mailgun_operator = mailgun()
mailgun_operator.send_mail_with_html(order.on_sales.member.email, content)
except Exception as e:
print e
mailgun_operator = mailgun()
text = str(order.id)+' '+str(order.on_sales.member.username)+' failure payment'
mailgun_operator.send_mail('[email protected]', text)
if __name__ == "__main__":
main()