Rafal's code for NMR restraints
[django_unres.git] / django_simple / todo / templates / details1.html
index f2d9c48..8494d96 100644 (file)
@@ -1,5 +1,6 @@
 {% extends "base.html" %}
 
+{% load index %}
 {% load i18n lazysignup_tags %}
 {% block content %}
 
@@ -43,6 +44,18 @@ Created {{ task.created_date  }}
                                <div class="col-md-8">
                                        {% if task.done %}
                                                <span class="fa fa-check-square-o"></span>
+                                           {% if task.type == "md" or task.type == "remd" or task.type == "dock" %}
+                                             <form action="restart/"
+                                               method="get"
+                                               style="text-align;float:right;">
+                                               {% csrf_token %}
+                                                <input type="submit" 
+                                                class="btn btn-default" 
+                                                value="Restart"
+                                                name="restartbtn">
+                                                </button>
+                                              </form>
+                                            {% endif %}  
                                        {% else %}
                                          {% if task.running > 0  %}
                                                <span class="fa fa-spinner
@@ -136,6 +149,13 @@ Created {{ task.created_date  }}
                            <div class="col-md-6">{{ task.md_start}}</div>
                        </li>           
                        
+<!-- -->
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> input pdb3 </div>
+                           <div class="col-md-6">{{ task.myfile3 }}</div>
+                       </li>           
+<!-- -->
+                       
                        <li class="list-group-item task-item">
                            <div class="col-md-6"> input pdb </div>
                            <div class="col-md-6">{{ task.myfile1 }}</div>
@@ -165,6 +185,10 @@ Created {{ task.created_date  }}
                            <div class="col-md-6">{{ task.md_nstep}}</div>
                        </li>           
                        <li class="list-group-item task-item">
+                           <div class="col-md-6"> total steps (with restarts) </div>
+                           <div class="col-md-6">{{ task.md_total_steps}}</div>
+                       </li>           
+                       <li class="list-group-item task-item">
                            <div class="col-md-6"> ntwe </div>
                            <div class="col-md-6">{{ task.md_ntwe}}</div>
                        </li>           
@@ -209,7 +233,7 @@ Created {{ task.created_date  }}
                        
         {% endif %}
 
-        {% if task.type == "remd" %}
+        {% if task.type == "remd" or task.type == "dock" %}
 
                        <li class="list-group-item task-item">
                            <div class="col-md-6"> nrep </div>
@@ -219,6 +243,13 @@ Created {{ task.created_date  }}
                            <div class="col-md-6"> starting </div>
                            <div class="col-md-6">{{ task.md_start}}</div>
                        </li>           
+<!-- -->
+                       {% if task.type == "remd" %}
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> input pdb3 </div>
+                           <div class="col-md-6">{{ task.myfile3 }}</div>
+                       </li>           
+<!-- -->
                        
                        <li class="list-group-item task-item">
                            <div class="col-md-6"> input pdb </div>
@@ -228,6 +259,21 @@ Created {{ task.created_date  }}
                            <div class="col-md-6"> pdb code</div>
                            <div class="col-md-6">{{ task.pdbcode }}</div>
                        </li>           
+                       {% if task.type == "dock" %}
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> input pdb2 </div>
+                           <div class="col-md-6">{{ task.myfile2 }}</div>
+                       </li>           
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> pdb code2</div>
+                           <div class="col-md-6">{{ task.pdbcode2 }}</div>
+                       </li>           
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> dock_peptide</div>
+                           <div class="col-md-6">{{ task.dock_peptide }}</div>
+                       </li>           
+                       
+                       {% endif %}
                        <li class="list-group-item task-item">
                            <div class="col-md-6"> seed </div>
                            <div class="col-md-6">{{ task.md_seed}}</div>
@@ -251,6 +297,10 @@ Created {{ task.created_date  }}
                            <div class="col-md-6">{{ task.md_nstep}}</div>
                        </li>           
                        <li class="list-group-item task-item">
+                           <div class="col-md-6"> total steps (with restarts) </div>
+                           <div class="col-md-6">{{ task.md_total_steps}}</div>
+                       </li>           
+                       <li class="list-group-item task-item">
                            <div class="col-md-6"> ntwe </div>
                            <div class="col-md-6">{{ task.md_ntwe}}</div>
                        </li>           
@@ -304,6 +354,11 @@ Created {{ task.created_date  }}
                            <div class="col-md-6"> temperature for clustering</div>
                            <div class="col-md-6">{{ task.remd_cluter_temp}}</div>
                        </li>           
+                       <li class="list-group-item task-item">
+                           <div class="col-md-6"> number of clusters</div>
+                           <div class="col-md-6">{{ task.remd_cluster_n}}</div>
+                       </li>           
+
                        {% if task.saxs_data != "" %}                   
                        <li class="list-group-item task-item">
                            <div class="col-md-6"> wsaxs </div>
@@ -338,6 +393,12 @@ Created {{ task.created_date  }}
                            <a href="/myfiles/list/{{task.jobdirname}}/">
                            {{ task.jobdirname }}
                            </a>
+                           {% if task.done %}
+                           &nbsp;
+                           <a class="btn btn-default"
+                            href="/{{task.id}}/all.zip">
+                            Download as zip</a>
+                            {% endif %}
                            </div>
                        </li>           
 
@@ -416,7 +477,8 @@ Created {{ task.created_date  }}
                            <div class="col-md-2"> Movie </div>
                            <div class="col-md-10"> 
 
-                            <video width="500" height="400" preload controls>
+                            <video width="500" height="400"
+                            preload="auto" controls="controls">
                             <source
                             src="/myfiles/download-file/{{task.jobdirname}}/md.ogv"
                             type="video/ogg; codecs=theora"> </source>
@@ -434,7 +496,7 @@ Created {{ task.created_date  }}
                        </li>
                         <li class="list-group-item task-item">
                <div class="col-md-6">
-<input id="clipRange" type="range" value=0 min=0 max= {% widthratio task.md_nstep task.md_ntwx 1 %} step=1 ></input><span id="clipRange_val">0</span> frame
+<input id="clipRange" type="range" value=1 min=1 max= {% widthratio task.md_total_steps task.md_ntwx 1 %} step=1 ></input><span id="clipRange_val">1</span> frame
 </div>
 <div class="col-md-6">
 <button id="toggleRunMDs">run/pause MD</button>  
@@ -456,7 +518,7 @@ Created {{ task.created_date  }}
                
                           {% if task.md_pdbref %}
                        <li class="list-group-item task-item">
-                         <div class="col-md-2"> RMSD </div>
+                         <div class="col-md-2"> C<sup>&alpha;</sup> RMSD </div>
                          <div class="col-md-10"> <img 
                          src="/myfiles/download-file/{{task.jobdirname}}/md_rms.png"
                          width="500"> </div>
@@ -506,7 +568,7 @@ Created {{ task.created_date  }}
 
                        {% endif %}
                        
-                       {% if task.type == "remd" %}
+                       {% if task.type == "remd" or task.type == "dock" %}
                        
                        <li class="list-group-item task-item">
                          <div class="col-md-2"> Energy histogram </div>
@@ -532,21 +594,22 @@ Created {{ task.created_date  }}
                           {% if task.md_pdbref %}
 
                        <li class="list-group-item task-item">
-                         <div class="col-md-2"> Average RMSD vs. temperature </div>
+                         <div class="col-md-2"> Average C<sup>&alpha;</sup> RMSD vs. temperature </div>
                          <div class="col-md-10"> <img 
                          src="/myfiles/download-file/{{task.jobdirname}}/remd_rmsd.png"
                          width="500"> </div>
                        </li>
 
                        <li class="list-group-item task-item">
-                         <div class="col-md-2"> potential energy vs. RMSD</div>
+                         <div class="col-md-2"> potential energy vs.
+                         C<sup>&alpha;</sup> RMSD</div>
                          <div class="col-md-10"> <img 
                          src="/myfiles/download-file/{{task.jobdirname}}/remd_ene_rms.png"
                          width="500"> </div>
                        </li>
 
                         <li class="list-group-item task-item">
-                         <div class="col-md-2"> RMSD vs. step*replica
+                         <div class="col-md-2"> C<sup>&alpha;</sup> RMSD vs. step*replica
                          colored by bath temperature</div>
                          <div class="col-md-10"> <img 
                          src="/myfiles/download-file/{{task.jobdirname}}/remd_step_rms.png"
@@ -584,173 +647,45 @@ Created {{ task.created_date  }}
         <button onclick="plusDivs(1)">&#10095;</button>
        </div>
        </li>           
-                       
+       
+               {% for iii in range %}
+
+                {% with istr=forloop.counter|stringformat:"s" %}
+                {% with MODELi="MODEL"|add:istr|add:".pdb" %}
+                {% with viewporti="viewport_M"|add:istr %}
+                {% with toggleRefi="toggleRefM"|add:istr %}
+                {% with toggleSidechainsi="toggleSidechainsM"|add:istr %}
+
                         <div class="model">
-<!--                   <li class="list-group-item task-item">
-                         <div class="col-md-2"> model1 after conversion
-                         to allatom 
-                         {{ task.remd_model1|linebreaks }}
-                         </div>
-                         <div class="col-md-10"> 
-                         <a
-                         href="/myfiles/download-file/{{task.jobdirname}}/MODEL1.pdb">
-                         <img
-                         src="/myfiles/download-file/{{task.jobdirname}}/model1.png" width="500">
-                         </a></div>
-                       </li> -->                       
-                       <li class="list-group-item task-item">
-                         <div class="col-md-2"> model1 after conversion 
-                         to allatom {{ task.remd_model1|linebreaks }}
-                         NGL viewer</div>
-                         <div class="col-md-10" id="viewport_M1"
-                         style="width:500px;height:500px;"> 
-                         </div>
-                       </li>
-                        <li class="list-group-item task-item">
-               <div class="col-md-12">
-               {% if task.md_pdbref %}
-               <button id="toggleRefM1">Reference structure on/off</button>
-               {% endif %}
-               <button id="toggleSidechainsM1">Side-chains on/off</button>
-               <a class="btn btn-default"
-               href="/myfiles/download-file/{{task.jobdirname}}/MODEL1.pdb">Download</a>               
-               </div>
-                        </li>
-                       
-                       </div>
-                       <div class="model">
-<!--                   <li class="list-group-item task-item">
-                         <div class="col-md-2"> model2 after conversion
-                         to allatom 
-                         {{ task.remd_model2|linebreaks }}
-                         </div>
-                         <div class="col-md-10"> 
-                         <a
-                         href="/myfiles/download-file/{{task.jobdirname}}/MODEL2.pdb">
-                         <img
-                         src="/myfiles/download-file/{{task.jobdirname}}/model2.png" width="500">
-                         </a></div>
-                       </li> -->
-                       <li class="list-group-item task-item">
-                         <div class="col-md-2"> model2 after conversion 
-                         to allatom {{ task.remd_model2|linebreaks }}
-                         NGL viewer</div>
-                         <div class="col-md-10" id="viewport_M2"
-                         style="width:500px;height:500px;"> 
-                         </div>
-                       </li>
-                        <li class="list-group-item task-item">
-               <div class="col-md-12">
-               {% if task.md_pdbref %}
-               <button id="toggleRefM2">Reference structure on/off</button>
-               {% endif %}
-               <button id="toggleSidechainsM2">Side-chains on/off</button>
-               <a class="btn btn-default"
-               href="/myfiles/download-file/{{task.jobdirname}}/MODEL2.pdb">Download</a>               
-               </div>
-                        </li>
-                       
-                       
-                       </div>
-                       <div class="model">
-<!--                   <li class="list-group-item task-item">
-                         <div class="col-md-2"> model3 after conversion
-                         to allatom 
-                         {{ task.remd_model3|linebreaks }}
-                         </div>
-                         <div class="col-md-10"> 
-                         <a
-                         href="/myfiles/download-file/{{task.jobdirname}}/MODEL3.pdb">
-                         <img
-                         src="/myfiles/download-file/{{task.jobdirname}}/model3.png" width="500">
-                         </a></div>
-                       </li>-->
                        <li class="list-group-item task-item">
-                         <div class="col-md-2"> model3 after conversion 
-                         to allatom {{ task.remd_model3|linebreaks }}
+                         <div class="col-md-2"> model {{ iii }}
+                         {% if not task.damino %}
+                         after conversion to allatom 
+                         {% endif %}
+                         {{ remd_models|index:iii|linebreaks }}
                          NGL viewer</div>
-                         <div class="col-md-10" id="viewport_M3"
+                         <div class="col-md-10" id={{viewporti}}
                          style="width:500px;height:500px;"> 
                          </div>
                        </li>
                         <li class="list-group-item task-item">
                <div class="col-md-12">
                {% if task.md_pdbref %}
-               <button id="toggleRefM3">Reference structure on/off</button>
+               <button id={{toggleRefi}}>Reference structure on/off</button>
                {% endif %}
-               <button id="toggleSidechainsM3">Side-chains on/off</button>
+               <button id={{toggleSidechainsi}}>Side-chains on/off</button>
                <a class="btn btn-default"
-               href="/myfiles/download-file/{{task.jobdirname}}/MODEL3.pdb">Download</a>               
+               href="/myfiles/download-file/{{task.jobdirname}}/{{MODELi}}">Download</a>               
                </div>
                         </li>
-                       
-                       </div>
-                       <div class="model">
-<!--                   <li class="list-group-item task-item">
-                         <div class="col-md-2"> model4 after conversion
-                         to allatom 
-                         {{ task.remd_model4|linebreaks }}
-                         </div>
-                         <div class="col-md-10"> 
-                         <a
-                         href="/myfiles/download-file/{{task.jobdirname}}/MODEL4.pdb">
-                         <img
-                         src="/myfiles/download-file/{{task.jobdirname}}/model4.png" width="500">
-                         </a></div>
-                       </li>-->
-                       <li class="list-group-item task-item">
-                         <div class="col-md-2"> model4 after conversion 
-                         to allatom {{ task.remd_model4|linebreaks }}
-                         NGL viewer</div>
-                         <div class="col-md-10" id="viewport_M4"
-                         style="width:500px;height:500px;"> 
-                         </div>
-                       </li>
-                        <li class="list-group-item task-item">
-               <div class="col-md-12">
-               {% if task.md_pdbref %}
-               <button id="toggleRefM4">Reference structure on/off</button>
-               {% endif %}
-               <button id="toggleSidechainsM4">Side-chains on/off</button>
-               <a class="btn btn-default"
-               href="/myfiles/download-file/{{task.jobdirname}}/MODEL4.pdb">Download</a>               
-               </div>
-                        </li>
-                       
-                       </div>
-                       <div class="model">
-<!--                   <li class="list-group-item task-item">
-                         <div class="col-md-2"> model5 after conversion
-                         to allatom 
-                         {{ task.remd_model5|linebreaks }}
-                         </div>
-                         <div class="col-md-10"> 
-                         <a
-                         href="/myfiles/download-file/{{task.jobdirname}}/MODEL5.pdb">
-                         <img
-                         src="/myfiles/download-file/{{task.jobdirname}}/model5.png" width="500">
-                         </a></div>
-                       </li>-->
-                       <li class="list-group-item task-item">
-                         <div class="col-md-2"> model5 after conversion 
-                         to allatom {{ task.remd_model5|linebreaks }}
-                         NGL viewer</div>
-                         <div class="col-md-10" id="viewport_M5"
-                         style="width:500px;height:500px;"> 
-                         </div>
-                       </li>
-                        <li class="list-group-item task-item">
-               <div class="col-md-12">
-               {% if task.md_pdbref %}
-               <button id="toggleRefM5">Reference structure on/off</button>
-               {% endif %}
-               <button id="toggleSidechainsM5">Side-chains on/off</button>
-               <a class="btn btn-default"
-               href="/myfiles/download-file/{{task.jobdirname}}/MODEL5.pdb">Download</a>               
-               </div>
-                        </li>
-                       
                        </div>
+               {% endwith %}
+               {% endwith %}   
+                {% endwith %}
+                {% endwith %}
+                {% endwith %}
+                {% endfor %}   
+
                        {% endif %}
 
        {% endif %}             
@@ -776,10 +711,11 @@ $('.majorpointslegend').click(function(){
 });
 </script>
 
-{% if task.type == "remd" %}
+{% if task.type == "remd" or task.type == "dock" %}
 <script>
-function display_model(numstr){
+function display_model(num){
 
+ numstr=num.toString();
 {% if task.md_pdbref %}
   var stage = new NGL.Stage("viewport_M"+numstr);
   stage.setParameters( { backgroundColor: "white",fogFar: 60, fogNear: 45 } );
@@ -889,7 +825,7 @@ function (event) {
 },false);
 
 
-display_model("1")
+display_model(1)
 
 
 var slideIndex = 1;
@@ -916,20 +852,8 @@ function showDivs(n) {
   }
   x[slideIndex-1].style.display = "block";
   
-  if (lista[slideIndex-1] == 0 && slideIndex == 2) {
-    display_model("2")  
-  }
-  
-  if (lista[slideIndex-1] == 0 && slideIndex == 3) {
-     display_model("3")  
-  }
-
-  if (lista[slideIndex-1] == 0 && slideIndex == 4) {
-     display_model("4")  
-  }
-
-  if (lista[slideIndex-1] == 0 && slideIndex == 5) {
-     display_model("5")  
+  if (lista[slideIndex-1] == 0) {
+    display_model(slideIndex)  
   }
     
   
@@ -1172,6 +1096,7 @@ window.addEventListener("resize",
         o.addRepresentation( "licorice",{ color:
        "residueindex",colorScale:["blue","cyan", "green", "yellow","orange", "red"]
         });        
+        o.setPosition([0, 0, 100]);
         o.autoView();
         o.addTrajectory();
       });
@@ -1197,7 +1122,7 @@ window.addEventListener("resize",
                                        isRunning = true;
 
                     trajComp.signals.frameChanged.add(function(){
-                      var fnum=trajComp.trajectory.currentFrame;                   
+                      var fnum=trajComp.trajectory.currentFrame+1;                   
                       clipRange.value = fnum;
                       clipRange_val.innerHTML = numberWithCommas(parseInt(clipRange.value*1));
                     });
@@ -1212,7 +1137,7 @@ window.addEventListener("resize",
       var clipRange_val = document.getElementById( "clipRange_val" );
       clipRange.oninput = function( e ){
                 var trajComp = stage.getComponentsByName("unres_md").list[0].trajList[0];
-                trajComp.setFrame(e.target.value)
+                trajComp.setFrame(e.target.value-1)
                 clipRange_val.innerHTML = numberWithCommas(parseInt(e.target.value*1));
       };