mirror of
https://github.com/pkkid/python-plexapi
synced 2025-02-16 21:08:27 +00:00
create editAdvanced method
allow for editing a show's advanced settings using kwargs
This commit is contained in:
parent
f2f6d8b9e7
commit
0dbdff4b03
1 changed files with 16 additions and 0 deletions
|
@ -446,6 +446,22 @@ class Show(Video):
|
|||
|
||||
return items
|
||||
|
||||
def editAdvanced(self, **kwargs):
|
||||
data = {}
|
||||
key = '%s/prefs?' % self.key
|
||||
preferences = {pref.id: list(pref.enumValues.keys()) for pref in self.preferences()}
|
||||
for settingID, value in kwargs.items():
|
||||
try:
|
||||
enumValues = [int(x) for x in preferences.get(settingID)]
|
||||
except ValueError:
|
||||
enumValues = [x.decode() for x in preferences.get(settingID)]
|
||||
if value in enumValues:
|
||||
data[settingID] = value
|
||||
else:
|
||||
raise NotFound('%s not found in %s' % (value, enumValues))
|
||||
url = key + urlencode(data)
|
||||
self._server.query(url, method=self._server._session.put)
|
||||
|
||||
def hubs(self):
|
||||
""" Returns a list of :class:`~plexapi.library.Hub` objects. """
|
||||
data = self._server.query(self._details_key)
|
||||
|
|
Loading…
Add table
Reference in a new issue