Added `tweet_mode='extended'` option to `t.statuses` calls
[rainbowstream.git] / rainbowstream / util.py
index e8d3c74c0b4ba454ffc7fa4cf6c28824477bd66b..d69cf88991898dada09d45c887c9eedaa673cabf 100644 (file)
@@ -2,19 +2,48 @@ import json
 
 from twitter.util import printNicely
 from .colors import *
+from .config import *
 
 
 def detail_twitter_error(twitterException):
     """
     Display Twitter Errors nicely
     """
+    data = twitterException.response_data
     try:
-        # twitterException.response_data can be byte string on Python 3
-        # or nornal dict on Python 2
-        loadedJson = json.loads(twitterException.response_data.decode('utf8'))
-        for m in loadedJson.get('errors', dict()):
-            info = "Error " + str(m.get('code')) + ": " + m.get('message')
-            printNicely(yellow(info))
-    except:
-        info = "Error: " + twitterException.response_data.decode('utf8')
-        printNicely(yellow(info))
+        for m in data.get('errors', dict()):
+            printNicely(yellow(m.get('message')))
+    except: 
+        printNicely(yellow(data))
+
+
+def format_prefix(listname='', keyword=''):
+    """
+    Format the custom prefix
+    """
+    formattedPrefix = c['PREFIX']
+    owner = '@' + c['original_name']
+    place = ''
+    # Public stream
+    if keyword:
+        formattedPrefix = ''.join(formattedPrefix.split('#owner'))
+        formattedPrefix = ''.join(formattedPrefix.split('#place'))
+        formattedPrefix = ''.join(formattedPrefix.split('#me'))
+    # List stream
+    elif listname:
+        formattedPrefix = ''.join(formattedPrefix.split('#keyword'))
+        formattedPrefix = ''.join(formattedPrefix.split('#me'))
+        owner, place = listname.split('/')
+        place = '/' + place
+    # Personal stream
+    else:
+        formattedPrefix = ''.join(formattedPrefix.split('#keyword'))
+        formattedPrefix = ''.join(formattedPrefix.split('#owner'))
+        formattedPrefix = ''.join(formattedPrefix.split('#place'))
+
+    formattedPrefix = formattedPrefix.replace('#owner', owner)
+    formattedPrefix = formattedPrefix.replace('#place', place)
+    formattedPrefix = formattedPrefix.replace('#keyword', keyword)
+    formattedPrefix = formattedPrefix.replace('#me', '@' + c['original_name'])
+
+    return formattedPrefix