Added start of inventory summary view and cleaned up inventory template location
authorBrandon King <kingb@caltech.edu>
Wed, 1 Jul 2009 19:43:02 +0000 (19:43 +0000)
committerBrandon King <kingb@caltech.edu>
Wed, 1 Jul 2009 19:43:02 +0000 (19:43 +0000)
htsworkflow/frontend/inventory/urls.py
htsworkflow/frontend/inventory/views.py
htsworkflow/frontend/static/js/htsw-inventory.js
htsworkflow/frontend/templates/app_base.html
htsworkflow/frontend/templates/inventory/inventory_app.html [new file with mode: 0644]
htsworkflow/frontend/templates/inventory/inventory_index.html [new file with mode: 0644]
htsworkflow/frontend/templates/inventory/inventory_summary.html [new file with mode: 0644]
htsworkflow/frontend/templates/inventory_app.html [deleted file]
htsworkflow/frontend/templates/inventory_index.html [deleted file]

index 18f38a972e1a005b27d67bf1c7bfd9c79872887f..0d7da6c21699c20341f07b2a4967200bcb5ba5a4 100644 (file)
@@ -7,5 +7,6 @@ urlpatterns = patterns('',
      (r'^lts/link/(?P<flowcell>.+)/(?P<serial>.+)/$', 'htsworkflow.frontend.inventory.views.link_flowcell_and_device'),
      
     # INDEX
+    (r'^(?P<uuid>[a-fA-F0-9]{32})/$', 'htsworkflow.frontend.inventory.views.item_summary'),
      (r'^$', 'htsworkflow.frontend.inventory.views.index')
     )
index 3c72d207590e4e03c1b3a22bd41097870730b962..9f9207b66739e7e2b80e366d27b0b659bb43c302 100644 (file)
@@ -17,6 +17,7 @@ INVENTORY_CONTEXT_DEFAULTS = {
     'bcmagic': BarcodeMagicForm()
 }
 
+@login_required
 def data_items(request):
     """
     Returns items in json format
@@ -56,7 +57,7 @@ def data_items(request):
     
     return HttpResponse(encode_json(d), content_type="application/javascript")
 
-
+@login_required
 def index(request):
     """
     Inventory Index View
@@ -66,10 +67,30 @@ def index(request):
     }
     context_dict.update(INVENTORY_CONTEXT_DEFAULTS)
     
-    return render_to_response('inventory_index.html',
+    return render_to_response('inventory/inventory_index.html',
                               context_dict,
                               context_instance=RequestContext(request))
     
+@login_required
+def item_summary(request, uuid):
+    """
+    Display a summary for an item
+    """
+    try:
+        item = Item.objects.get(uuid=uuid)
+    except ObjectDoesNotExist, e:
+        item = None
+    
+    context_dict = {
+        'page_name': 'Item Summary',
+        'item': item,
+        'uuid': uuid
+    }
+    context_dict.update(INVENTORY_CONTEXT_DEFAULTS)
+    
+    return render_to_response('inventory/inventory_summary.html',
+                              context_dict,
+                              context_instance=RequestContext(request))
 
 def link_flowcell_and_device(request, flowcell, serial):
     """
index 6f44e5026a4f7765509e2d7a1c775fa544b5c35a..3cbca3f456196094c82bf8ec9c0ec381c146b2ef 100644 (file)
@@ -1,4 +1,11 @@
 
+var inventory_item_dblclick_handler = function(grid, row_index, e){
+    //quick_msg('Choose Row: ' + row_index);
+    var rec = grid.getStore().getAt(row_index);
+    //quick_msg('UUID: ' + rec.get('uuid'));
+    goto_url('/inventory/'+rec.get('uuid')+'/');
+}
+
 var getInventoryDataGrid = function(){
     
     var Item = Ext.data.Record.create([
@@ -73,9 +80,11 @@ var getInventoryDataGrid = function(){
         iconCls: 'icon-grid',
         id: 'inventory_item_panel',
         stateId: 'inventory_item_panel_state',
-        stateful: true,
+        stateful: true
         //renderTo: 'grid_target'
     });
     
+    grid.on('rowdblclick', inventory_item_dblclick_handler);
+    
     return grid;
 }
\ No newline at end of file
index 0145c1a6e2f8e7858f30fcd705db7b8d53480f27..1ba9fcdceab0e005587dd2b8375fdeaa6ee541f0 100644 (file)
                     <a href="#">Add</a><br />
                 </li>
         </ul>
-        <ul id="Containers" class="x-hidden">
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="#">Index</a>
-            </li>
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="#">Add</a>
-            </li>
-        </ul>
-        <ul id="Samples" class="x-hidden">
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="#">Index</a>
-            </li>
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="#">Homeless</a>
-            </li>
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="#">Add</a>
-            </li>
-        </ul>
         {% endblock %}
     </div>
     
@@ -87,7 +63,9 @@
     <div id="left_tbar_data" class="x-hidden">
         {% block left_tbar_menu %}
         <div id="Flowcells-Libraries Tracker" href="{% url htsworkflow.frontend.samples.views.library %}"></div>
+        {% if user.is_authenticated %}
         <div id="Inventory Tracker" href="{% url htsworkflow.frontend.inventory.views.index %}"></div>
+        {% endif %}
         {% endblock %}
     </div>
     
diff --git a/htsworkflow/frontend/templates/inventory/inventory_app.html b/htsworkflow/frontend/templates/inventory/inventory_app.html
new file mode 100644 (file)
index 0000000..b5271c6
--- /dev/null
@@ -0,0 +1,21 @@
+{% extends "app_base.html" %}
+
+{% block additional_css %}
+{% endblock %}
+
+{% block dynamic_panels %}
+    <ul id="Libraries" class="x-hidden">
+            <li>
+                <img src="/static/img/s.gif" class="icon-show-all" />
+                <a href="{% url htsworkflow.frontend.samples.views.library %}">Index</a><br />
+            </li>
+    </ul>
+{% endblock %}
+
+{% block app_toolbar_west %}
+    <div id="Inventory Index" href="{% url htsworkflow.frontend.inventory.views.index %}"></div>
+{% endblock %}
+
+{% block app_toolbar_east %}
+    <!--<div id="Admin" href="/admin/"></div>-->
+{% endblock %}
diff --git a/htsworkflow/frontend/templates/inventory/inventory_index.html b/htsworkflow/frontend/templates/inventory/inventory_index.html
new file mode 100644 (file)
index 0000000..1a1e32b
--- /dev/null
@@ -0,0 +1,10 @@
+{% extends "inventory/inventory_app.html" %}
+
+{% block additional_javascript %}
+<script type="text/javascript" src="/static/js/htsw-inventory.js"></script>
+{% endblock %}
+
+{% block content %}
+<div id="grid_target"></div>
+{% endblock %}
+    
\ No newline at end of file
diff --git a/htsworkflow/frontend/templates/inventory/inventory_summary.html b/htsworkflow/frontend/templates/inventory/inventory_summary.html
new file mode 100644 (file)
index 0000000..0f18488
--- /dev/null
@@ -0,0 +1,9 @@
+{% extends "inventory/inventory_app.html" %}
+
+{% block content %}
+        {% if item %}
+                <h3>Item: {{item.uuid}}</h3>
+        {% else %}
+                <h3>Item with UUID of {{ uuid }} not found.</h3>
+        {% endif %}
+{% endblock %}
diff --git a/htsworkflow/frontend/templates/inventory_app.html b/htsworkflow/frontend/templates/inventory_app.html
deleted file mode 100644 (file)
index 108a9d4..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-{% extends "app_base.html" %}
-
-{% block additional_css %}
-{% endblock %}
-
-{% block additional_javascript %}
-<script type="text/javascript" src="/static/js/htsw-inventory.js"></script>
-{% endblock %}
-
-{% block dynamic_panels %}
-    <ul id="Libraries" class="x-hidden">
-            <li>
-                <img src="/static/img/s.gif" class="icon-show-all" />
-                <a href="{% url htsworkflow.frontend.samples.views.library %}">Index</a><br />
-            </li>
-    </ul>
-{% endblock %}
-
-{% block app_toolbar_west %}
-    <div id="Inventory Index" href="{% url htsworkflow.frontend.inventory.views.index %}"></div>
-{% endblock %}
-
-{% block app_toolbar_east %}
-    <!--<div id="Admin" href="/admin/"></div>-->
-{% endblock %}
-
-{% block content %}
-test
-{% endblock %}
\ No newline at end of file
diff --git a/htsworkflow/frontend/templates/inventory_index.html b/htsworkflow/frontend/templates/inventory_index.html
deleted file mode 100644 (file)
index 0cc0b5f..0000000
+++ /dev/null
@@ -1,6 +0,0 @@
-{% extends "inventory_app.html" %}
-
-{% block content %}
-<div id="grid_target"></div>
-{% endblock %}
-    
\ No newline at end of file