Add user filter to the synced table

This commit is contained in:
JonnyWong16 2018-01-30 23:07:21 -08:00
parent 9100e25a21
commit d29a12b6db
6 changed files with 71 additions and 24 deletions

View file

@ -384,6 +384,11 @@ class PlexTV(object):
elif rating_key_filter is not None:
rating_key_filter = [str(rating_key_filter)]
if isinstance(user_id_filter, list):
user_id_filter = [str(k) for k in user_id_filter]
elif user_id_filter is not None:
user_id_filter = [str(user_id_filter)]
sync_list = self.get_plextv_sync_lists(machine_id, output_format='xml')
user_data = users.Users()
@ -423,7 +428,7 @@ class PlexTV(object):
device_last_seen = helpers.get_xml_attr(device, 'lastSeenAt')
# Filter by user_id
if user_id_filter and str(user_id_filter) != device_user_id:
if user_id_filter and device_user_id not in user_id_filter:
continue
for synced in a.getElementsByTagName('SyncItems'):

View file

@ -2201,9 +2201,8 @@ class WebInterface(object):
@cherrypy.tools.json_out()
@requireAuth()
def get_sync(self, machine_id=None, user_id=None, **kwargs):
if not machine_id:
machine_id = plexpy.CONFIG.PMS_IDENTIFIER
if user_id == 'null':
user_id = None
plex_tv = plextv.PlexTV()
result = plex_tv.get_synced_items(machine_id=machine_id, user_id_filter=user_id)