Switch to side-by-side view

--- a/Allura/allura/model/index.py
+++ b/Allura/allura/model/index.py
@@ -75,7 +75,10 @@
     class __mongometa__:
         session = main_orm_session
         name = 'shortlink'
-        indexes = [ ('link', 'project_id', 'app_config_id') ]
+        indexes = [
+            ('link', 'project_id', 'app_config_id'),
+            ('ref_id',),
+            ]
 
     # Stored properties
     _id = FieldProperty(S.ObjectId)
@@ -174,6 +177,9 @@
         if s.endswith(']'):
             s = s[:-1]
         parts = s.split(':')
+        p_shortname = None
+        if hasattr(c, 'project'):
+            p_shortname = getattr(c.project, 'shortname', None)
         if len(parts) == 3:
             return dict(
                 project=parts[0],
@@ -181,12 +187,12 @@
                 artifact=parts[2])
         elif len(parts) == 2:
             return dict(
-                project=c.project.shortname,
+                project=p_shortname,
                 app=parts[0],
                 artifact=parts[1])
         elif len(parts) == 1:
             return dict(
-                project=c.project.shortname,
+                project=p_shortname,
                 app=None,
                 artifact=parts[0])
         else: