Switch to side-by-side view

--- a/src/mediaserver/cdplugins/qobuz/qobuz-app.py
+++ b/src/mediaserver/cdplugins/qobuz/qobuz-app.py
@@ -71,7 +71,12 @@
         formatid = int(formatid)
     else:
         formatid = 5
-        
+    
+    if formatid == 5:
+        setMimeAndSamplerate("audio/mpeg", "44100")
+    else:
+        setMimeAndSamplerate("application/flac", "44100")
+
     if not username or not password:
         raise Exception("qobuzuser and/or qobuzpass not set in configuration")
 
@@ -79,11 +84,14 @@
     
 @dispatcher.record('trackuri')
 def trackuri(a):
-    global formatid
+    global formatid, pathprefix
     msgproc.log("trackuri: [%s]" % a)
     trackid = trackid_from_urlpath(pathprefix, a)
     maybelogin()
     media_url = session.get_media_url(trackid, formatid)
+    if not media_url:
+        media_url = ""
+        
     #msgproc.log("%s" % media_url)
     if formatid == 5:
         mime = "audio/mpeg"
@@ -113,12 +121,16 @@
         except:
             image = None
         try:
+            upnpclass = item.upnpclass if item.upnpclass else None
+        except:
+            upnpclass = None
+        try:
             artnm = item.artist.name if item.artist.name else None
         except:
             artnm = None
         xbmcplugin.entries.append(
             direntry('0$qobuz$' + url, xbmcplugin.objid, title, arturi=image,
-                     artist=artnm))
+                     artist=artnm, upnpclass=upnpclass))
 
 def track_list(tracks):
     xbmcplugin.entries += trackentries(httphp, pathprefix,
@@ -265,19 +277,19 @@
     xbmcplugin = XbmcPlugin('0$qobuz$')
     msgproc.log("search: [%s]" % a)
     objid = a['objid']
-    field = a['field']
+    field = a['field'] if 'field' in a else None
     value = a['value']
     if re.match('0\$qobuz\$', objid) is None:
         raise Exception("bad objid [%s]" % objid)
     xbmcplugin.objid = objid
     maybelogin()
     
-    if field not in ['artist', 'album', 'playlist', 'track']:
+    if field and field not in ['artist', 'album', 'playlist', 'track']:
         msgproc.log('Unknown field \'%s\'' % field)
         field = 'track'
 
     # type may be 'tracks', 'albums', 'artists' or 'playlists'
-    qfield = field + "s"
+    qfield = field + "s" if field else None
     searchresults = session.search(value, qfield)
 
     if field is None or field == 'artist':