Merge pull request #87 from Adarnof/forumavatars

phpbb3 avatars
This commit is contained in:
Adarnof 2015-11-15 15:51:14 -05:00
commit b46365a3d3
2 changed files with 16 additions and 5 deletions

View File

@ -32,9 +32,18 @@ class Phpbb3Manager:
SQL_GET_USER_GROUPS = r"SELECT phpbb_groups.group_name FROM phpbb_groups , phpbb_user_group WHERE " \
r"phpbb_user_group.group_id = phpbb_groups.group_id AND user_id=%s"
SQL_ADD_USER_AVATAR = r"UPDATE phpbb_users SET user_avatar_type=2, user_avatar_width=64, user_avatar_height=64, user_avatar=%s WHERE user_id = %s"
def __init__(self):
pass
@staticmethod
def __add_avatar(username, characterid):
avatar_url = "http://image.eveonline.com/Character/" + characterid + "_64.jpg"
cursor = connections['phpbb3'].cursor()
userid = Phpbb3Manager.__get_user_id(username)
cursor.execute(Phpbb3Manager.SQL_ADD_USER_AVATAR, [avatar_url, userid])
@staticmethod
def __generate_random_pass():
return os.urandom(8).encode('hex')
@ -113,7 +122,7 @@ class Phpbb3Manager:
pass
@staticmethod
def add_user(username, email, groups):
def add_user(username, email, groups, characterid):
cursor = connections['phpbb3'].cursor()
username_clean = Phpbb3Manager.__santatize_username(username)
@ -130,6 +139,7 @@ class Phpbb3Manager:
email, 2, Phpbb3Manager.__get_current_utc_date(),
"", ""])
Phpbb3Manager.update_groups(username_clean, groups)
Phpbb3Manager.__add_avatar(username_clean, characterid)
except:
pass
@ -203,12 +213,13 @@ class Phpbb3Manager:
return False
@staticmethod
def update_user_password(username):
def update_user_password(username, characterid):
cursor = connections['phpbb3'].cursor()
password = Phpbb3Manager.__generate_random_pass()
if Phpbb3Manager.check_user(username):
pwhash = Phpbb3Manager.__gen_hash(password)
cursor.execute(Phpbb3Manager.SQL_UPDATE_USER_PASSWORD, [pwhash, username])
Phpbb3Manager.__add_avatar(username, characterid)
return password
return ""
@ -219,4 +230,4 @@ class Phpbb3Manager:
try:
cursor.execute(Phpbb3Manager.SQL_DIS_USER, [email, password, username])
except:
pass
pass

View File

@ -100,7 +100,7 @@ def activate_forum(request):
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
# Valid now we get the main characters
character = EveManager.get_character_by_id(authinfo.main_char_id)
result = Phpbb3Manager.add_user(character.character_name, request.user.email, ['REGISTERED'])
result = Phpbb3Manager.add_user(character.character_name, request.user.email, ['REGISTERED'], authinfo.main_char_id)
# if empty we failed
if result[0] != "":
AuthServicesInfoManager.update_user_forum_info(result[0], result[1], request.user)
@ -126,7 +126,7 @@ def deactivate_forum(request):
@user_passes_test(service_blue_alliance_test)
def reset_forum_password(request):
authinfo = AuthServicesInfoManager.get_auth_service_info(request.user)
result = Phpbb3Manager.update_user_password(authinfo.forum_username)
result = Phpbb3Manager.update_user_password(authinfo.forum_username, authinfo.main_char_id)
# false we failed
if result != "":
AuthServicesInfoManager.update_user_forum_info(authinfo.forum_username, result, request.user)