From 00b6bf8394edd6e5b7fd70c91e9c7612a6a03630 Mon Sep 17 00:00:00 2001 From: JonnyWong16 Date: Sun, 21 Feb 2016 17:11:49 -0800 Subject: [PATCH] Return default ip_address/poster_url if database query fails --- plexpy/datafactory.py | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/plexpy/datafactory.py b/plexpy/datafactory.py index 915d07a9..2857417e 100644 --- a/plexpy/datafactory.py +++ b/plexpy/datafactory.py @@ -843,14 +843,18 @@ class DataFactory(object): def get_session_ip(self, session_key=''): monitor_db = database.MonitorDatabase() - if session_key: - query = 'SELECT ip_address FROM sessions WHERE session_key = %d' % int(session_key) - result = monitor_db.select(query) - else: - return None - ip_address = 'N/A' + if session_key: + try: + query = 'SELECT ip_address FROM sessions WHERE session_key = %d' % int(session_key) + result = monitor_db.select(query) + except Exception as e: + logger.warn(u"PlexPy DataFactory :: Unable to execute database query for get_session_ip: %s." % e) + return ip_address + else: + return ip_address + for item in result: ip_address = item['ip_address'] @@ -859,16 +863,20 @@ class DataFactory(object): def get_poster_url(self, rating_key=''): monitor_db = database.MonitorDatabase() - if rating_key: - query = 'SELECT id, poster_url FROM notify_log ' \ - 'WHERE rating_key = %d OR parent_rating_key = %d OR grandparent_rating_key = %d ' \ - 'ORDER BY id DESC LIMIT 1' % (int(rating_key), int(rating_key), int(rating_key)) - result = monitor_db.select(query) - else: - return None - poster_url = '' + if rating_key: + try: + query = 'SELECT id, poster_url FROM notify_log ' \ + 'WHERE rating_key = %d OR parent_rating_key = %d OR grandparent_rating_key = %d ' \ + 'ORDER BY id DESC LIMIT 1' % (int(rating_key), int(rating_key), int(rating_key)) + result = monitor_db.select(query) + except Exception as e: + logger.warn(u"PlexPy DataFactory :: Unable to execute database query for get_poster_url: %s." % e) + return poster_url + else: + return poster_url + for item in result: poster_url = item['poster_url']