index.html 12.3 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
<!doctype html>

<!-- 
  This file is part of "Vidjil" <http://bioinfo.lifl.fr/vidjil>, V(D)J repertoire browsing and analysis
  Copyright (C) 2013, 2014 by Marc Duez <marc.duez@lifl.fr> and the Vidjil Team
  Bonsai bioinformatics at LIFL (UMR CNRS 8022, Université Lille) and Inria Lille

  "Vidjil" is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  "Vidjil" is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with "Vidjil". If not, see <http://www.gnu.org/licenses/>
-->

<html>
23 24 25 26 27 28 29 30 31
    <head>
        <meta charset="utf-8">
        <title>Vidjil</title>
        <link id="palette" rel="stylesheet" type="text/css" href="css/dark.css" /> 
        <!--[if lte IE 8]><script src="js/r2d3.js" charset="utf-8"></script><![endif]-->
        <!--[if gte IE 9]><!-->
        <script type="text/javascript" src='js/lib/d3.v3.js'></script>
        <!--<![endif]-->
        <script type="text/javascript" src="js/lib/jquery-1.9.1.min.js"></script>
32
        <script type="text/javascript" src="js/lib/jquery.form.js"></script>
33 34 35 36 37 38 39 40 41 42 43
        <script type="text/javascript" src='js/lib/StackBlur.js'></script>
        <script type="text/javascript" src='js/lib/jspdf.js'></script>
        <script type="text/javascript" src='js/lib/jspdf.plugin.addimage.js'></script>
        <script type="text/javascript" src='js/lib/jspdf.plugin.svgToPdf.js'></script>
        <script type="text/javascript" src='js/lib/jspdf.plugin.split_text_to_size.js'></script>
        <script type="text/javascript" src='js/lib/jspdf.plugin.standard_fonts_metrics.js'></script>
        <script type="text/javascript" src='js/lib/underscore.js'></script>
        <script type="text/javascript" src='js/lib/rgbcolor.js'></script>
        <script type="text/javascript" src='js/lib/file.js'></script>
        <script type="text/javascript" src="js/lib/less-1.5.0.min.js"></script>
        <script type="text/javascript" src='js/lib/jquery.zclip.js'></script>
44
	<script type="text/javascript" src='js/compare.js'></script>
45 46 47 48 49 50 51 52 53 54
        <script type="text/javascript" src='js/germline.js'></script>
        <script type="text/javascript" src='js/model.js'></script>
        <script type="text/javascript" src='js/segmenter.js'></script>
        <script type="text/javascript" src='js/list.js'></script>
        <script type="text/javascript" src="js/graph.js"> </script>
        <script type="text/javascript" src="js/scatterPlot.js"> </script>
        <script type="text/javascript" src='js/builder.js'></script>
        <script type="text/javascript" src='js/vidjil-style.js'></script>
        <script type="text/javascript" src='js/crossDomain.js'></script>
        <script type="text/javascript" src='js/pdf.js'></script>
55
        <script type="text/javascript" src='js/database.js'></script>
56
        <script type="text/javascript" src='js/conf.js'></script>
57 58 59 60

    </head>


Marc Duez's avatar
Marc Duez committed
61
    <body>
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

        <div id="file_menu" >
            <span class="closeButton" onclick="cancel();">X</span>

            <h2>Vidjil <span class='logo'>(beta)</span> &ndash; V(D)J repertoire browsing and analysis</h2>

            Data file (.data):<br/>
            <input id="upload_json" type="file" name="json" /></br>
            <p class='help'>The data file stores a set of clones on several points.</p>

            Analysis file (.analysis, optional):<br/>
            <input id="upload_pref" type="file" name="pref" /></br>
            <p class='help'>The analysis file stores all parameters set by the user (tags, colors, manual clusters).</p>

            <button onclick="document.getElementById('file_menu').style.display='none';
Marc Duez's avatar
Marc Duez committed
77
            m.load('upload_json','upload_pref', 200)">start</button> 
78 79 80 81 82 83 84 85 86 87 88 89
        </div>

        <div id="analysis_menu" >
            <span class="closeButton" onclick="cancel();">X</span>
            <h2>analysis menu</h2>

            Analysis file :<br/>
            <input id="upload_analysis" type="file" name="analysis" /></br></br>

            <button onclick="document.getElementById('analysis_menu').style.display='none';
                                    m.loadAnalysis('upload_analysis');">start</button> 
        </div>
Marc Duez's avatar
Marc Duez committed
90
        
91 92 93
        <!-- TOP-CONTAINER -->
        <div id="top-container">

94
            <div class="menu" onmouseover="showSelector('adminSelector');" style="display:none"> admin 
95
                <div id="adminSelector" class="selector"><div>
96 97
                    <a id="test_load_data" class="buttonSelector" onclick="m.parseJsonData(dataTest, 100).loadGermline().initClones()">
                    test load data</a>
98
                </div></div>
99 100
            </div>

101
            <div class="menu" onmouseover="showSelector('loadSelector');"> file 
102
                <div id="loadSelector" class="selector"><div>
103
                    <!-- <a class="buttonSelector" onclick="javascript:loadData()">load data/analysis</a> -->
Marc Duez's avatar
merge  
Marc Duez committed
104
                    <!--<a class="buttonSelector" onclick="javascript:loadAnalysis()">load analysis</a> -->
105 106 107
                    <a class="buttonSelector" onclick="javascript:m.saveAnalysis()">save analysis</a>
                    <!--<a class="buttonSelector" onclick="javascript:m.resetAnalysis()">reset analysis</a> -->
                    <!--<a class="buttonSelector" onclick="javascript:reset()">reset all</a> -->
Marc Duez's avatar
Marc Duez committed
108
                    <a class="buttonSelector" onclick="javascript:new PDF(m, 'visu2_svg')">export pdf (graph + selected clones)</a>
109
                </div></div>
110 111 112
            </div>

            <div class="menu" onmouseover="showSelector('groupSelector');"> analysis 
113
                <div id="groupSelector" class="selector"><div>
114 115 116 117 118 119
                    <a class="buttonSelector" onclick="sp.changeSplitMethod('gene_v', 'gene_j');">V / J (genes)</a> 
                    <a class="buttonSelector" onclick="sp.changeSplitMethod('allele_v', 'allele_j');">V / J (alleles)</a> 
                    <a class="buttonSelector" onclick="sp.changeSplitMethod('gene_v', 'n');">V / N length</a> 
                    <!--<a class="buttonSelector" onclick="sp.changeSplitMethod('gene_v', 'nSize');">V / N length + VJ deletions</a> -->
                    <a class="buttonSelector" onclick="sp.changeSplitMethod('gene_v', 'Size')">V / abundance at selected timepoint</a> 
                    <a class="buttonSelector" onclick="sp.changeSplitMethod('gene_v', 'bar')">V distribution</a> 
120
                </div></div>
121 122 123
            </div>

            <div class="menu" onmouseover="showSelector('colorSelector');" > color 
124
                <div id="colorSelector" class="selector"><div>
125 126 127 128 129 130
                    <a class="buttonSelector" onclick="m.changeColorMethod('V');">by V</a>
                    <a class="buttonSelector" onclick="m.changeColorMethod('J');">by J</a>
                    <a class="buttonSelector" onclick="m.changeColorMethod('N2');">by N length</a>
                    <!-- <a class="buttonSelector" onclick="m.changeColorMethod('N');">by N length + VJ deletions</a> -->
                    <a class="buttonSelector" onclick="m.changeColorMethod('Tag');">by tag</a>
                    <a class="buttonSelector" onclick="m.changeColorMethod('abundance');">by abundance at selected timepoint</a>
131
                </div></div>
132 133
            </div>

Marc Duez's avatar
Marc Duez committed
134
            <div class="menu" id="display_menu" onmouseover="showSelector('displaySelector');"> display
135
                <div id="displaySelector" class="selector"><div>
136

137 138 139 140 141
                    <div>
                        </br>
                        <input id="top_slider" type="range" min="5" max="100" step="5" value="10" 
                        onchange="m.displayTop(this.value)" />
                    </div>
142

143 144
                    <ul>
                    </ul>
145 146 147 148 149 150 151

                    <div>normalize 
                        <input id="normalize" type="checkbox" name="normalize" onclick="m.normalization_switch(this.checked);">
                    </div>

                    <div>scientific notation 
                        <input id="notation" type="checkbox" name="notation"  onclick="m.notation_switch(this.checked);">
152
                    </div></div>
153

154 155 156 157
                </div>
            </div>

            <div class="menu" onmouseover="showSelector('clusterSelector');" > cluster
158
                <div id="clusterSelector" class="selector"><div>
159 160 161 162 163 164 165
                    <a class="buttonSelector" onclick="m.resetClones();">reset</a>
                    <a class="buttonSelector" onclick="m.clusterBy('_clonotype');">clonotype</a>
                    <a class="buttonSelector" onclick="m.clusterBy('V');">V gene + allele</a>
                    <a class="buttonSelector" onclick="m.clusterBy('J');">J gene + allele</a>
                    <a class="buttonSelector" onclick="m.clusterBy('_target');">target</a>
                    <a class="buttonSelector" onclick="m.clusterBy('_target.V-GENE');">target V</a>
                    <a class="buttonSelector" onclick="m.clusterBy('_target.J-GENE');">target J</a>
166
                </div></div>
167 168
            </div>

Marc Duez's avatar
Marc Duez committed
169
            <div class="menu" id="database_menu" onmouseover="showSelector('dbSelector');" style="display:none"> database 
170
                <div id="dbSelector" class="selector"><div>
Marc Duez's avatar
Marc Duez committed
171 172 173
                    <a class="buttonSelector" onclick="db.call('patient/index');">patient list</a>
                    <a class="buttonSelector" onclick="db.call('standard/index');">standard list</a>
                    <a class="buttonSelector" onclick="db.call('config/index');">config list</a>
Marc Duez's avatar
Marc Duez committed
174 175

                    <div id="upload_list"></div>
176
                </div></div>
177 178
            </div>

Marc Duez's avatar
Marc Duez committed
179
            <div class="menu" id="demo_file_menu" onmouseover="showSelector('demoSelector');" style="display:none"> demo file 
180 181
                <div id="demoSelector" class="selector"><div>
                </div></div>
Marc Duez's avatar
Marc Duez committed
182 183
            </div>

184 185 186
            <div id="logo" style="float: right;" onclick="popupMsg(msg.welcome)">Vidjil <span class='logo'>(beta)</span></div>

            <div style="float: right" class="menu" onmouseover="showSelector('paletteSelector');"> palette 
187
                <div id="paletteSelector" class="selector"><div>
188 189
                    <a class="buttonSelector" onclick="changeStyle(solarizeD)">dark</a>
                    <a class="buttonSelector" onclick="changeStyle(solarizeL)">light</a>
190
                </div></div>
191 192 193 194 195
            </div>

            <div id="fps" style="float: right;"> </div>

        </div>  
Marc Duez's avatar
Marc Duez committed
196
        <!-- fin top-container-->
197 198 199
        
        <!-- MID-CONTAINER -->
        <div id="mid-container" onmouseover="hideSelector()">
Marc Duez's avatar
Marc Duez committed
200

201
        <!-- LEFT-CONTAINER -->
202
            <div id="left-container">
203

204
                <div id="info"> </div>
205

Marc Duez's avatar
Marc Duez committed
206
                <div id="list"> </div>
207

208
            </div>
209 210
        <!-- fin left-container -->

Marc Duez's avatar
Marc Duez committed
211 212 213
            <div id="vertical-separator">
            </div>

214
        <!-- RIGHT-CONTAINER -->
Marc Duez's avatar
Marc Duez committed
215
            <div id="right-container"></div>
216 217

        <!-- VISU-CONTAINER  -->
218
            <div id="visu-container">
Marc Duez's avatar
Marc Duez committed
219 220 221
                <div id="visu2"></div>
                <div id="visu-separator" >...</div>
                <div id="visu" onclick=""></div>
222 223 224 225
            </div>

        </div>
        <!-- fin mid-container -->
Marc Duez's avatar
Marc Duez committed
226
    
227 228

        <!-- BOT-CONTAINER / SEGMENTER-CONTAINER -->
Marc Duez's avatar
Marc Duez committed
229
        <div id="bot-container"> </div>
230 231 232 233

        <div id="tagSelector">
            <span class="closeButton" onclick="$('#tagSelector').hide('fast')">X</span>
            <div>   tag for <span id=tag_name></span><span id=tag_id></span></div>
234
            <ul> </ul>
235 236 237 238 239 240 241 242 243 244 245 246 247 248
        </div>

        <div id="frame-container"></div>

        <div id="popup-container">
            <span class="closeButton" onclick="closePopupMsg()">X</span>
            <div id="popup-msg"></div>
        </div>

        <div id="data-container">
            <span class="closeButton" onclick="closeDataBox()">X</span>
            <div id="data-msg"></div>
        </div>

249 250 251 252 253 254
        <div id="db_div">
            <span class="closeButton" onclick="db.close()">X</span>
                <div id="db_msg">
            </div>
        </div>

255 256 257 258
        <form id="form"></form>

    </body>

259
    <script type="text/javascript" src='test/dataTest.js'></script>
260
    <script type="text/javascript" src="js/main.js"> </script>
261 262 263
</html>