Titan/webapp/titanembeds/database/__init__.py
Jeremy "EndenDragon" Zhang 8bc95f7b0e Paypal (#41)
* Implement Titan Tokens clientside

* Titan Tokens can be modified in the admin panel
2017-08-13 18:10:03 -07:00

35 lines
1.4 KiB
Python

from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
from guilds import Guilds
from unauthenticated_users import UnauthenticatedUsers
from unauthenticated_bans import UnauthenticatedBans
from authenticated_users import AuthenticatedUsers
from guild_members import GuildMembers, list_all_guild_members, get_guild_member
from keyvalue_properties import KeyValueProperties, set_keyvalproperty, get_keyvalproperty, getexpir_keyvalproperty, setexpir_keyvalproperty, ifexists_keyvalproperty, delete_keyvalproperty
from messages import Messages, get_channel_messages
from cosmetics import Cosmetics
from user_css import UserCSS
from administrators import Administrators, get_administrators_list
from titan_tokens import TitanTokens, get_titan_token
from token_transactions import TokenTransactions
def set_titan_token(user_id, amt_change, action):
token_count = get_titan_token(user_id)
if token_count >= 0:
token_usr = db.session.query(TitanTokens).filter(TitanTokens.user_id == user_id).first()
else:
token_count = 0
token_usr = TitanTokens(user_id, 0)
db.session.add(token_usr)
db.session.commit()
new_token_count = token_count + amt_change
if new_token_count < 0:
return False
transact = TokenTransactions(user_id, action, amt_change, token_count, new_token_count)
db.session.add(transact)
token_usr.tokens = new_token_count
db.session.add(token_usr)
db.session.commit()
return True