Merge pull request #66 from jroyal/feature-allow-custom-profile-pic

Feature allow custom profile pic
This commit is contained in:
drzoidberg33 2015-08-15 15:59:02 +02:00
commit 375bd733f1
4 changed files with 51 additions and 5 deletions

View file

@ -248,18 +248,45 @@ class DataFactory(object):
except Exception, e:
logger.debug(u"Uncaught exception %s" % e)
def set_user_profile_url(self, user=None, user_id=None, profile_url=None):
if user_id:
if profile_url.strip() == '':
profile_url = None
monitor_db = database.MonitorDatabase()
control_value_dict = {"user_id": user_id}
new_value_dict = {"thumb": profile_url}
try:
monitor_db.upsert('users', new_value_dict, control_value_dict)
except Exception, e:
logger.debug(u"Uncaught exception %s" % e)
if user:
if profile_url.strip() == '':
profile_url = None
monitor_db = database.MonitorDatabase()
control_value_dict = {"user_id": user_id}
new_value_dict = {"thumb": profile_url}
try:
monitor_db.upsert('users', new_value_dict, control_value_dict)
except Exception, e:
logger.debug(u"Uncaught exception %s" % e)
def get_user_friendly_name(self, user=None, user_id=None):
if user_id:
monitor_db = database.MonitorDatabase()
query = 'select username, ' \
'(CASE WHEN friendly_name IS NULL THEN username ELSE friendly_name END),' \
'do_notify, keep_history ' \
'do_notify, keep_history, thumb ' \
'FROM users WHERE user_id = ?'
result = monitor_db.select(query, args=[user_id])
if result:
user_detail = {'user_id': user_id,
'user': result[0][0],
'friendly_name': result[0][1],
'thumb': result[0][4],
'do_notify': helpers.checked(result[0][2]),
'keep_history': helpers.checked(result[0][3])
}
@ -269,19 +296,21 @@ class DataFactory(object):
'user': '',
'friendly_name': '',
'do_notify': '',
'thumb': '',
'keep_history': ''}
return user_detail
elif user:
monitor_db = database.MonitorDatabase()
query = 'select user_id, ' \
'(CASE WHEN friendly_name IS NULL THEN username ELSE friendly_name END),' \
'do_notify, keep_history ' \
'do_notify, keep_history, thumb ' \
'FROM users WHERE username = ?'
result = monitor_db.select(query, args=[user])
if result:
user_detail = {'user_id': result[0][0],
'user': user,
'friendly_name': result[0][1],
'thumb': result[0][4],
'do_notify': helpers.checked(result[0][2]),
'keep_history': helpers.checked(result[0][3])}
return user_detail
@ -290,6 +319,7 @@ class DataFactory(object):
'user': user,
'friendly_name': '',
'do_notify': '',
'thumb': '',
'keep_history': ''}
return user_detail

View file

@ -193,6 +193,8 @@ class WebInterface(object):
friendly_name=friendly_name,
do_notify=do_notify,
keep_history=keep_history)
data_factory.set_user_profile_url(user_id=user_id,
profile_url=kwargs['thumb'])
status_message = "Successfully updated user."
return status_message
@ -206,6 +208,8 @@ class WebInterface(object):
friendly_name=friendly_name,
do_notify=do_notify,
keep_history=keep_history)
data_factory.set_user_profile_url(user=user,
profile_url=kwargs['thumb'])
status_message = "Successfully updated user."
return status_message