cleanup of item-metadata interface ('about' links)
authorgfawcett <gfawcett@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Thu, 26 Mar 2009 02:26:35 +0000 (02:26 +0000)
committergfawcett <gfawcett@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Thu, 26 Mar 2009 02:26:35 +0000 (02:26 +0000)
git-svn-id: svn://svn.open-ils.org/ILS-Contrib/servres/trunk@228 6d9bc8c9-1ec2-4278-b937-99fde70a366f

conifer/static/main.css
conifer/syrup/models.py
conifer/templates/components/course.xhtml
conifer/templates/item_metadata.xhtml

index d2e75c7..fae3418 100644 (file)
@@ -241,13 +241,29 @@ p.todo, div.todo { background-color: #fdd; padding: 6; margin: 12; border-left:
     font-weight: normal; 
 }
 
+.metadata_table tbody th,
+.metadata_table tbody td {
+    padding: 8; border: #ddd 1px solid;
+}
+
+.metadata_table tbody th {
+    background-color: #eee;
+}
+   
+.metadata_table a.bigdownload { padding: 8 58; font-weight: bold; font-size: 105%; }
+
+h2.metadata_subhead {font-size: 105%; padding: 0; margin: 18 0 9 0;}
+
+.metadata_table tbody th {
+    text-align: left; width: 120;
+}
 .gap { height: 24; }
 
 /* panels that appear when specific OPTIONs or radio-buttons are selected. */
 .specific { padding: 8; margin: 0 16; background-color: #eef; }
 
 
-li.sort_item { margin-top: 20px !important;
+li.sort_item { margin-top: 20px} !important;
             border: gray 1px dotted; width: 400; }
 
 li.sort_item:hover { background-color: #eee; }
index d5853bb..7209447 100644 (file)
@@ -426,7 +426,7 @@ class Item(m.Model):
     def needs_meta_link(self):
         """Should an 'About' link be displayed for this item?"""
 
-        return self.item_type in ('ELEC', 'URL')
+        return self.item_type in ('ELEC', 'URL', 'PHYS')
 
     def item_url(self, suffix='', force_local_url=False):
         if self.item_type == 'ELEC' and suffix == '':
index 95a34a5..6208a76 100644 (file)
@@ -38,7 +38,7 @@ searchtext = _('search this course...')
          <!-- !I'm really sorry, this is ugly, but I want
               non-breaking spaces here, so that on long-named items,
               the links will stay togeter. A better way?  -->
-         <span py:if="item.needs_meta_link()"><a href="${item.item_url('meta')}">about</a>&#160;</span><span py:if="edit">&bull;&#160;<a href="${item.item_url('edit/')}">edit</a></span><span py:if="edit">&#160;&bull;&#160;<a href="${item.item_url('relocate/')}">put under heading</a></span>
+         <span py:if="item.needs_meta_link()"><a href="${item.item_url('meta')}">about</a>&#160;</span><span py:if="edit">&bull;&#160;<a href="${item.item_url('edit/')}">edit</a></span><span py:if="edit">&#160;&bull;&#160;<a href="${item.item_url('relocate/')}">put&#160;under&#160;heading</a></span>
        </span>
       </div>
       <!-- !to show a full tree, uncomment the following: -->
index 089a204..8f05df1 100644 (file)
@@ -2,6 +2,7 @@
 course_title = '%s: %s (%s)' % (course.code, course.title, course.term)
 hier = item.hierarchy()[:-1]
 title = item.title
+metadata = item.metadata_set.all()
 ?>
 <html xmlns="http://www.w3.org/1999/xhtml"
       xmlns:xi="http://www.w3.org/2001/XInclude"
@@ -14,24 +15,26 @@ title = item.title
   <body>
     ${course_banner(course)}
     ${nested_title(item)}
-
-    <table>
+    <table class="metadata_table" style="margin-top: 1em;">
       <tr><th>Title</th><td>${item.title}</td></tr>
-      <tr><th>Type</th><td>${item.item_type}</td></tr>
+      <tr><th>Type</th><td>${item.get_item_type_display()}</td></tr>
       <tr py:if="item.url"><th>URL</th><td><a href="${item.url}">${item.url}</a></td></tr>
     </table>
     <div py:if="item.item_type=='ELEC'">
-    <p><a href="${item.item_url()}">Download</a></p>
-    <table>
+    <h2 class="metadata_subhead">Attached document</h2>
+    <table class="metadata_table">
     <tr><th>Content type</th><td>${item.fileobj_mimetype}</td></tr>
-    <tr><th>Content length</th><td>${item.fileobj.size}</td></tr>
+    <tr><th>Size</th><td>${item.fileobj.size} bytes</td></tr>
+    <tr><th/><td><a class="bigdownload" href="${item.item_url()}">Download</a></td></tr>
     </table>
     </div>
-
-    <table>
-      <tr py:for="attr in item.metadata_set.all()">
-       <th>${attr.get_name_display()}</th><td>${attr.value}</td>
-      </tr>
-    </table>
+    <div py:if="metadata">
+      <h2 class="metadata_subhead">Additional metadata</h2>
+      <table class="metadata_table">
+       <tr py:for="attr in metadata">
+         <th>${attr.get_name_display()}</th><td>${attr.value}</td>
+       </tr>
+      </table>
+      </div>
   </body>
 </html>