From 961f44b93eaa77193fa8878ce0f61d0b320fe9d0 Mon Sep 17 00:00:00 2001
From: Amanda Ghassaei <amandaghassaei@gmail.com>
Date: Tue, 15 Sep 2015 02:42:10 -0400
Subject: [PATCH] keep seq in sync with assembly

---
 js/menus/DNAExportMenuView.js             | 15 +++++++++++----
 js/menus/templates/DNAExportMenuView.html |  6 ++++++
 2 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/js/menus/DNAExportMenuView.js b/js/menus/DNAExportMenuView.js
index 2581d0dd..a30bd067 100644
--- a/js/menus/DNAExportMenuView.js
+++ b/js/menus/DNAExportMenuView.js
@@ -3,18 +3,20 @@
  */
 
 
-define(['jquery', 'underscore', 'menuParent', 'dnaExport', 'text!menus/templates/DNAExportMenuView.html'],
-    function($, _, MenuParentView, dnaExport, template){
+define(['jquery', 'underscore', 'menuParent', 'dnaExport', 'lattice', 'text!menus/templates/DNAExportMenuView.html'],
+    function($, _, MenuParentView, dnaExport, lattice, template){
 
 
     return MenuParentView.extend({
 
         events: {
-            "click #saveSequences":                     "_saveToFile"
+            "click #saveSequences":                     "_saveToFile",
+            "click #calcSequences":                     "_calcSequences"
         },
 
 
         _initialize: function(){
+            this.listenTo(dnaExport, "change", this.render);
         },
 
         _saveToFile: function(e){
@@ -22,8 +24,13 @@ define(['jquery', 'underscore', 'menuParent', 'dnaExport', 'text!menus/templates
             dnaExport.save();
         },
 
+        _calcSequences: function(e){
+            e.preventDefault();
+            dnaExport.generateSequences();
+        },
+
         _makeTemplateJSON: function(){
-            return dnaExport.toJSON();
+            return _.extend(dnaExport.toJSON(), lattice.toJSON());
         },
 
         template: _.template(template)
diff --git a/js/menus/templates/DNAExportMenuView.html b/js/menus/templates/DNAExportMenuView.html
index eca84975..0c4ad711 100644
--- a/js/menus/templates/DNAExportMenuView.html
+++ b/js/menus/templates/DNAExportMenuView.html
@@ -1,3 +1,8 @@
+<% if(sequence32.length + sequence16.length != numCells){ %>
+    <div class="inlineWarning">
+        The number of sequences calculated does not match the number of cells in your assembly.  Switch to part type "DNA" and then hit "Re-Calc Sequences" to fix this.
+    </div>
+<% } %>
 <% if(sequence32.length > 0){ %>
     32bp sequences:<br/>
     <div class="sequenceOutput">
@@ -18,4 +23,5 @@
 <% } else { %>
     no 16bp sequences<br/>
 <% } %><br/>
+<a href="#" id="calcSequences" class="btn btn-block btn-lg btn-default">(Re)-Calc Sequences</a><br/>
 <a href="#" id="saveSequences" class="btn btn-block btn-lg btn-success">Save to File</a><br/>
-- 
GitLab