annotate test-data/quast/quast_report.html @ 8:ce112a6105fa draft

planemo upload for repository https://gitlab.com/ifb-elixirfr/abromics/galaxy-tools commit 8623190a78f9aaaf9a8ec4f039af36307af34e3f
author ifb-elixirfr
date Wed, 27 Mar 2024 13:53:04 +0000
parents eb95c9ca5c60
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1 <!DOCTYPE html>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2 <html lang="en">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3 <head>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
5
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
6 <style rel="stylesheet">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
7 /*!
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
8 * Bootstrap v2.0.4
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
9 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
10 * Copyright 2012 Twitter, Inc
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
11 * Licensed under the Apache License v2.0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
12 * http://www.apache.org/licenses/LICENSE-2.0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
13 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
14 * Designed and built with all the love in the world @twitter by @mdo and @fat.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
15 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
16 .clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
17 .clearfix:after{clear:both;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
18 .hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
19 .input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
20 .tooltip{position:absolute;z-index:1020;display:block;visibility:visible;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);}.tooltip.in{opacity:0.8;filter:alpha(opacity=80);}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
21 .tooltip.top{margin-top:-2px;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
22 .tooltip.right{margin-left:2px;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
23 .tooltip.bottom{margin-top:2px;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
24 .tooltip.left{margin-left:-2px;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
25 .tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
26 .tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
27 .tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
28 .tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
29 .tooltip-inner{max-width:200px;padding:3px 8px;color:#ffffff;text-align:center;text-decoration:none;background-color:#000000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
30 .tooltip-arrow{position:absolute;width:0;height:0;}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
31
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
32 </style>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
33
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
34 <style rel="stylesheet">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
35 /* Main things */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
36 html, body, div, span, h1, h3, h4, h5, h6, blockquote, pre,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
37 em, sub, sup, dl, dt, dd, ol, ul, li,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
38 fieldset, form, label,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
39 table, caption, tbody, tfoot, thead,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
40 article, aside, canvas, details, figure, figcaption, footer, header, hgroup,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
41 menu, nav, output, section, time {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
42 margin: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
43 padding: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
44 border: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
45 font-size: 100%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
46 font: inherit;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
47 vertical-align: baseline;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
48 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
49 body {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
50 margin: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
51 font-family: Lucida Grande, Verdana, Arial, sans-serif;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
52 font-size: 12px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
53 color: black;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
54 padding-bottom: 30px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
55 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
56 a {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
57 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
58 /*color: #0c4f72;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
59 color: #0077B5;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
60 border-bottom: 1px solid #487b95;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
61 border-color: #487b95; /* #487b95 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
62 border-color: rgba(12, 79, 114, 0.2); /* #0c4f72; */ /* #a0d2eb; */ /*rgba(0, 88, cc, 0.3);*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
63 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
64 a:visited {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
65 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
66 color: #8C66B2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
67 border-bottom: 1px solid #8c66b2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
68 border-color: #8c66b2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
69 border-color: rgba(102, 51, 153, 0.2);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
70 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
71 a:hover {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
72 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
73 color: #b33; /* #0088cc; */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
74 border-bottom: 1px solid #ffcccc;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
75 border-color: #ffcccc;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
76 border-color: rgba(255, 0, 0, 0.2); /* #55b2e0; */ /*#005580;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
77 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
78 a.dark_bg_link {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
79 color: white; /* #0088cc; */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
80 border-bottom: 1px solid #cccccc;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
81 border-color: #cccccc;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
82 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
83 a.dark_bg_link:hover {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
84 color: white; /* #0088cc; */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
85 border-bottom: 1px solid white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
86 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
87
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
88 .leading_link_dot {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
89 border-bottom: white solid 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
90 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
91
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
92 a.header_link, a.header_link:hover, a.header_link:visited {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
93 color: black;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
94 border-bottom: 1px solid #bbb;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
95 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
96
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
97
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
98 .dotted-link {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
99 cursor: pointer;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
100 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
101 /*color: #0c4f72;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
102 color: #0077B5;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
103 border-bottom: 1px dashed #487b95;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
104 border-color: #487b95; /* #487b95 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
105 border-color: rgba(12, 79, 114, 0.2);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
106 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
107 .dotted-link:hover {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
108 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
109 color: #b33 !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
110 border-bottom: 1px dashed #b33 !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
111 border-color: rgba(255, 0, 0, 0.2) !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
112 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
113 .js:visited {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
114 color: #0077B5;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
115 border-bottom: 1px dashed #487b95;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
116 border-color: #487b95;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
117 border-color: rgba(12, 79, 114, 0.2);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
118 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
119
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
120 .selected-switch {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
121 background-color: #fafad2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
122 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
123
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
124 .json-code {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
125 display: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
126 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
127 .smallcapitals {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
128 font-size: .875em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
129 letter-spacing: .15em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
130 margin-right: -.15em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
131 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
132 .highlight {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
133 background-color:#FFF9B5;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
134 padding: 0 3px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
135 margin-left: -3px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
136 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
137
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
138 ul.list {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
139 list-style-type: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
140 padding: 0 0 0 2em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
141 margin: -0.5em 0 0 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
142 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
143 ul.list li {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
144 margin-bottom: 0.7em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
145 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
146
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
147 ul.mdash {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
148 margin: -1em 0 0 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
149 padding: 0 0 0 2em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
150 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
151 ul.mdash li {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
152 margin-bottom: 0.7em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
153 list-style-type: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
154 text-indent: -1.3em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
155 behavior: expression(!this.before ? this.before = this.innerHTML = '&mdash;&nbsp;' + this.innerHTML : '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
156 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
157 ul.mdash li:before {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
158 content: '\2014\a0';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
159 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
160
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
161 .small_line_indent {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
162 height: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
163 margin-top: -7px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
164 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
165 /************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
166
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
167 /* Tooltips */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
168 .tooltip {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
169 font-size: 0.9em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
170 margin-bottom: 5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
171 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
172 .tooltip.in {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
173 opacity: 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
174 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
175 .tooltip-inner {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
176 text-align: left;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
177 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
178 .tooltip-link,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
179 .tooltip-link:visited {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
180 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
181 color: #000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
182 border-bottom: 1px dashed #bbb;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
183 cursor: hand;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
184 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
185 .tooltip-link:hover {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
186 text-decoration: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
187 color: #b33;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
188 border-bottom: 1px dashed #b33;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
189 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
190 /************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
191
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
192 /*********/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
193
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
194 .hs {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
195 /* Полупробел для
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
196 разделения разрядов чисел:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
197 10<span class="hs"></span>000 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
198 margin-left: .2em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
199 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
200
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
201 .rhs {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
202 /* Полупробел на случай,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
203 если реальный пробел важен,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
204 например между ценой и валютой:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
205 1<span class="rhs">&nbsp;</span>$ */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
206 font-size: 50%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
207 line-height: 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
208 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
209
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
210 /*9490<span class="rhs"> </span>€<br/>*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
211 /*12<span class="hs"></span>650<span class="rhs"> </span>$<br/>*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
212 /*379<span class="hs"></span>000<span*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
213 /*class="rhs"> </span><span class="b-rub">Р</span><br/>*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
214 /*100<span class="hs"></span>500<span class="rhs"> </span>+*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
215
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
216 /* for wrapping long words with no spaces */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
217 /* http://stackoverflow.com/questions/3247358/css-how-do-i-wrap-text-with-no-whitespace-inside-a-td */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
218 .wrapword {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
219 white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
220 white-space: -pre-wrap; /* Opera 4-6 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
221 white-space: -o-pre-wrap; /* Opera 7 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
222 white-space: pre-wrap; /* css-3 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
223 word-wrap: break-word; /* Internet Explorer 5.5+ */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
224 word-break: break-all;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
225 white-space: normal;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
226 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
227
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
228
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
229 .space_1px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
230 height: 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
231 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
232 .space_2px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
233 height: 2px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
234 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
235 .space_3px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
236 height: 3px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
237 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
238 .space_4px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
239 height: 4px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
240 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
241 .space_5px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
242 height: 5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
243 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
244 .space_6px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
245 height: 6px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
246 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
247 .space_7px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
248 height: 7px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
249 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
250 .space_8px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
251 height: 8px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
252 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
253 .space_9px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
254 height: 9px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
255 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
256 .space_10px {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
257 height: 10px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
258 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
259 .layout-table {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
260 width: 99%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
261 border-spacing: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
262 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
263
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
264 .layout-table td.layout-table-td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
265 vertical-align: top;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
266 padding: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
267 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
268 .layout-table td.layout-table-fst-td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
269 min-width: 400px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
270 padding-right: 50px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
271 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
272 .layout-table td.layout-table-snd-td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
273 min-width: 200px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
274 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
275 .layout-table td.layout-table-trd-td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
276 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
277
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
278 .top-panel {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
279 background-color: #444;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
280 color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
281 min-width: 650px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
282 padding: 8px 10px 0 147px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
283 min-height: 70px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
284 text-shadow: -1px -1px 0 #111;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
285 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
286 .top-panel span {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
287 color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
288 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
289 .top-panel a {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
290 color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
291 border-bottom: 1px solid white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
292 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
293 #to_main_menu_button a {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
294 border-bottom: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
295 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
296 .page_title {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
297 margin-top: -3px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
298 margin-bottom: -3px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
299 color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
300 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
301 .page_subtitle {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
302 line-height: 100%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
303 white-space: nowrap;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
304 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
305 .content {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
306 margin-left: 147px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
307 width: 90%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
308 /*padding-top: 20px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
309 margin-bottom: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
310 /*padding-bottom: 50px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
311 /*{# padding-right: 20px;#}*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
312 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
313 .p_after_content {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
314 margin-left: 147px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
315 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
316 .links_after_content{
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
317 font-size: 14px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
318 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
319
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
320 p {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
321 display: block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
322 font-size: 12px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
323 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
324
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
325 h1 {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
326 display: block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
327 font-size: 26px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
328 padding: 0 -3px 0 5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
329 -webkit-margin-before: 5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
330 -webkit-margin-after: 0px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
331 -webkit-margin-start: 0px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
332 -webkit-margin-end: 0px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
333 font-weight: bold;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
334 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
335
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
336 #header {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
337 display: block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
338 width: 100%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
339 margin-bottom: 10px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
340 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
341
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
342 .logo_img {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
343 height: 40px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
344 margin-bottom: -10px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
345 margin-left: -6px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
346 margin-right: -7px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
347 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
348 </style>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
349
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
350 <style rel="stylesheet">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
351 .report-and-plots {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
352 margin-top: 15px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
353 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
354
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
355 /****************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
356 /* REPORT TABLE */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
357 .report {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
358 margin: 0 100px 50px 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
359 float: left;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
360 font-size: 1em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
361 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
362
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
363 #main_report {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
364 /*min-width: 600px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
365 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
366
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
367 /*#extended_link {*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
368 /*margin-top: 5px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
369 /*}*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
370
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
371 #ref_report {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
372 /*min-width: 300px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
373 margin-right: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
374 margin-bottom: 20px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
375 /*margin-right: 200px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
376 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
377
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
378 .report td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
379 margin: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
380 padding: 2px 0.6em 0 14px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
381 /*min-width: 100px;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
382 max-width: 400px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
383 white-space: nowrap;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
384 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
385 .report td.number {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
386 text-align: right;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
387 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
388
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
389 .report tr.top_row_tr td,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
390 .report tr.group_header td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
391 font-weight: bold;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
392 border-bottom: 1px solid #ddd;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
393 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
394 .report tr.group_header td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
395 height: 20px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
396 vertical-align: bottom;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
397 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
398
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
399 #ref_report tr.top_row_tr td,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
400 #ref_report tr.group_header td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
401 font-weight: normal;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
402 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
403
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
404 .report tr td:first-child {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
405 padding-left: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
406 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
407 .report tr td:last-child {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
408 padding-right: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
409 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
410
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
411 .report tr.row_hidden, tr.group_empty {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
412 display: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
413 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
414
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
415 .report tr.secondary_hidden {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
416 display: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
417 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
418
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
419 /*.report td.secondary_td {*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
420 /*padding-left: 10px !important;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
421 /*}*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
422
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
423 span.heatmap_legend {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
424 font-size: 11px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
425 display: inline-block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
426 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
427
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
428 #heatmap_header {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
429 margin-right: 30px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
430 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
431
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
432 #combined_reference_length {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
433 padding-top: 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
434 padding-bottom: 15px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
435 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
436
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
437 span.metric-name.expandable {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
438 margin-left: -13px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
439 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
440
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
441 span.metric-name.secondary {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
442 margin-left: 13px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
443 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
444
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
445 span.metric-name.expandable.collapsed::before {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
446 content: '+ ';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
447 color: #CCC;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
448 cursor: pointer;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
449 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
450
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
451 span.metric-name.expandable.expanded::before {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
452 content: '\2212\a0'; /* &minus&nbsp */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
453 color: #CCC;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
454 cursor: pointer;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
455 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
456
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
457 .report_legend {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
458 padding-left: 15px; /* compensate drag handles */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
459 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
460
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
461 #contigs_are_ordered {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
462 z-index: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
463 position: relative;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
464 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
465
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
466
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
467 /*.report .report-table-header {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
468 font-weight: bold;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
469 }*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
470
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
471 /*.report thead td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
472 border-bottom: 1px solid #bbb;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
473 }*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
474
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
475
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
476 /*************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
477 /* Draggable */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
478 table.moving_table {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
479 box-shadow: -0px 0px 5px 1px #888888;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
480 -moz-box-shadow: -0px 0px 5px 1px #888888;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
481 -webkit-box-shadow: -0px 0px 5px 1px #888888;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
482 /*outline: 1px solid #888888;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
483 background-color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
484 z-index: 3 !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
485 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
486
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
487 table.draggable .drag_handle {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
488 padding: 2px 1px 0 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
489 margin: 0 2px 0 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
490
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
491 cursor: grab;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
492 cursor: -moz-grab;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
493 cursor: -webkit-grab;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
494 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
495
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
496 table.draggable .drag_handle .drag_image {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
497 height: 9px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
498 width: 9px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
499 display: inline-block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
500 background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAIAAABv85FHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAiElEQVQImV2OsQ3FIAxEz2AhCAukyATZf5ZMQI8okZUjhfWj6F/pd09n6b1f1wUgxkgSAACS53lqSmnfdxHBLyJCMucsc877vv201nobKSUl2VoLIeATksdxKEmf+UqOxczGGDHGP7Ztm5qZmfmkYx8upehaq/fu4P2WZK1VAdRaAbjqXghBVR9BvlQcgtQsKgAAAABJRU5ErkJggg==") no-repeat;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
501 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
502
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
503 table.draggable .drag_handle:active,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
504 table.draggable td.cell_of_moving_table .drag_handle {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
505 cursor: grabbing !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
506 cursor: -moz-grabbing !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
507 cursor: -webkit-grabbing !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
508 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
509
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
510 /* Override the styles for the first and the last columns of the table.report.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
511 The cloned table contains a single column which is both first and last,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
512 and we don't need it to inherit those styles. */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
513 table.draggable td.cell_of_moving_table {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
514 padding-left: 14px !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
515 padding-right: 0.6em !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
516 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
517
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
518 table.draggable td.hovered_column_td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
519 background-color: #cccccc;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
520 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
521
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
522 table.draggable td.second_through_last_col_headers_td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
523 padding-left: 0 !important; /* compensate handle images */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
524 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
525
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
526 table.draggable td.cell_of_empty_space * {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
527 visibility: hidden;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
528 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
529
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
530 table.draggable td.cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
531 border: none !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
532 /*border-left: 1px solid #888888;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
533 border-right: 1px solid #888888;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
534 margin-right: -1px !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
535 margin-left: -1px !important; */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
536 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
537
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
538 /*table.draggable td.bottom_cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
539 border-bottom: 1px solid #888888 !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
540 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
541
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
542 table.draggable td.top_cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
543 border-top: 1px solid #888888 !important;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
544 /*margin-top: -1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
545 }*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
546
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
547 table.draggable td.top_cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
548 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
549
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
550 table.draggable td.left_to_cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
551 /*outline-left: 1px solid #888888;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
552 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
553
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
554 table.draggable td.right_to_cell_of_empty_space {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
555 /*outline-right: 1px solid #888888;*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
556 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
557
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
558 /********/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
559 /* META */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
560 #main_ref_genome {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
561
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
562 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
563
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
564 table#refgenome td.last_row {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
565 border-top: 1px solid #ddd;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
566 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
567
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
568 /************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
569 /* PLOTTING */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
570 .plot-switch {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
571 margin-left: 10px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
572 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
573
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
574 .plot-mis-type-switch {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
575 margin-left: 23px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
576 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
577
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
578 .plot-wrapper {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
579 padding-right: 80px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
580 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
581
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
582 .plot-header {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
583 margin-left: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
584 font-weight: bold;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
585 height: 1.5em;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
586 display: block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
587 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
588
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
589 .plots {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
590 margin-left: -30px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
591 margin-right: 70px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
592 margin-top: 2px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
593 margin-bottom: 50px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
594 float: left;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
595 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
596 .plots td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
597 vertical-align: top;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
598 white-space: nowrap;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
599 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
600
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
601 .plots div#plots-switches, tr#plots-into-tr p {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
602 padding-left: 30px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
603 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
604
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
605 #legend-placeholder {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
606 min-width: 80px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
607 margin-top: -2px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
608 margin-left: -5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
609 position: relative;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
610 z-index: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
611 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
612
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
613 .legendColorBox div {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
614 display: none;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
615 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
616
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
617 #legend-placeholder td {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
618 vertical-align: top;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
619 white-space: nowrap;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
620 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
621
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
622 #plot-placeholder {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
623 width: 986px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
624 height: 600px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
625
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
626 /* for auto sizing plots when resizing the page
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
627 min-width: 500px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
628 min-height: 500px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
629 width: 100%;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
630 min-height: 400px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
631 height: 50%; */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
632
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
633 margin-left: -55px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
634 margin-right: 20px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
635 float: left;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
636
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
637 z-index: 2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
638 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
639
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
640 #change-assembly {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
641 white-space: nowrap;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
642 width: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
643 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
644
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
645 /*************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
646 /* Plot tips */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
647 #plot_tip {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
648 position: absolute;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
649 opacity: 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
650 padding: 2px 5px 2px 5px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
651
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
652 z-index: 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
653 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
654
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
655 #plot_tip_vertical_rule, #plot_tip_horizontal_rule {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
656 position: absolute;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
657 border: 1px solid #BBB;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
658 z-index: -2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
659 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
660
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
661 #plot_tip_vertical_rule {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
662 border-left: 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
663 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
664
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
665 #plot_tip_horizontal_rule {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
666 border-top: 1px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
667 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
668
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
669 .white_stroked {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
670 color: black;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
671 background-color: white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
672 text-shadow:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
673 -3px -3px 0 white,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
674 3px -3px 0 white,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
675 -3px 3px 0 white,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
676 3px 3px 0 white;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
677 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
678
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
679 img.icon_plot {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
680 width: 14px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
681 height: 12px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
682 display: inline-block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
683 content: '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
684 background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAANCAYAAACZ3F9/AAAACXBIWXMAAAsTAAALEwEAmpwYAAA7oGlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS41LWMwMjEgNzkuMTU1NzcyLCAyMDE0LzAxLzEzLTE5OjQ0OjAwICAgICAgICAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxNCAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxNS0wOC0wN1QxNjowMzowNCswMzowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE1LTA4LTA3VDIxOjE2OjMyKzAzOjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNS0wOC0wN1QyMToxNjozMiswMzowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPGRjOmZvcm1hdD5pbWFnZS9wbmc8L2RjOmZvcm1hdD4KICAgICAgICAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9wOkNvbG9yTW9kZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDphYjJhNzRkZi04MjcxLTQ1NjctOTgxNy0zNTVkNTAwNmQ5OTk8L3htcE1NOkluc3RhbmNlSUQ+CiAgICAgICAgIDx4bXBNTTpEb2N1bWVudElEPnhtcC5kaWQ6ZWUxMmZkZGQtZWQ3OC00MTliLTk5MDctZTQ5OTkyZDUyNjRiPC94bXBNTTpEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06T3JpZ2luYWxEb2N1bWVudElEPnhtcC5kaWQ6ZWUxMmZkZGQtZWQ3OC00MTliLTk5MDctZTQ5OTkyZDUyNjRiPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmVlMTJmZGRkLWVkNzgtNDE5Yi05OTA3LWU0OTk5MmQ1MjY0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNS0wOC0wN1QxNjowMzowNCswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjQzY2E0MmJhLWQ2YmItNGQ5MC05MDQ0LTc2NDJiMjgxNGVjZTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNS0wOC0wN1QyMTowMjo1NSswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmFiMmE3NGRmLTgyNzEtNDU2Ny05ODE3LTM1NWQ1MDA2ZDk5OTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNS0wOC0wN1QyMToxNjozMiswMzowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICA8L3JkZjpTZXE+CiAgICAgICAgIDwveG1wTU06SGlzdG9yeT4KICAgICAgICAgPHRpZmY6T3JpZW50YXRpb24+MTwvdGlmZjpPcmllbnRhdGlvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDxleGlmOkNvbG9yU3BhY2U+NjU1MzU8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjE0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjEzPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6T8SobAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAD7SURBVHjaYvz//z8DOYCJgUxAHY393d3PGRgYPqDjG4sWfnh348ZzZLUsyJz///5JwNjPP/1guPbuG4MJ63cGtn9/GQSlpfhx2sjCx/ft8apVDF/OnmF4zcjG8OL7H4YDxy8wfPcMYnjNyv0Np8bf378xiGqpMzz9/Z/h7c6dDKab5jA4mOsyPPr+n+Hhq/cMOJ3K9OMbw0cdfYY3nxkYDPlvMHxh/MbALyvH4IklcFA0sjAzc737ysAg9vc3g4CmBoOApgayNBcyhxE5ASRERDwX4OXk5GDnYPjy8xcDAyMjA8P//wy/f/1mUFRW/l5RVy+JVePgTjmAAQCr211NDit/xwAAAABJRU5ErkJggg==");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
685 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
686
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
687 #sortRefsBtn label {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
688 display: block;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
689 margin-left: 20px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
690 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
691 #sortRefsBtn input {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
692 float: left;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
693 margin-left: -20px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
694 margin-right: 7px;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
695 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
696
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
697 #mincontig {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
698 margin-bottom: 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
699 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
700 </style>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
701
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
702
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
703 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
704 /*! jQuery v1.8.2 jquery.com | jquery.org/license */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
705 (function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function ba(){return!1}function bb(){return!0}function bh(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function bi(a,b){do a=a[b];while(a&&a.nodeType!==1);return a}function bj(a,b,c){b=b||0;if(p.isFunction(b))return p.grep(a,function(a,d){var e=!!b.call(a,d,a);return e===c});if(b.nodeType)return p.grep(a,function(a,d){return a===b===c});if(typeof b=="string"){var d=p.grep(a,function(a){return a.nodeType===1});if(be.test(b))return p.filter(b,d,!c);b=p.filter(b,d)}return p.grep(a,function(a,d){return p.inArray(a,b)>=0===c})}function bk(a){var b=bl.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}function bC(a,b){return a.getElementsByTagName(b)[0]||a.appendChild(a.ownerDocument.createElement(b))}function bD(a,b){if(b.nodeType!==1||!p.hasData(a))return;var c,d,e,f=p._data(a),g=p._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;d<e;d++)p.event.add(b,c,h[c][d])}g.data&&(g.data=p.extend({},g.data))}function bE(a,b){var c;if(b.nodeType!==1)return;b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase(),c==="object"?(b.parentNode&&(b.outerHTML=a.outerHTML),p.support.html5Clone&&a.innerHTML&&!p.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):c==="input"&&bv.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):c==="option"?b.selected=a.defaultSelected:c==="input"||c==="textarea"?b.defaultValue=a.defaultValue:c==="script"&&b.text!==a.text&&(b.text=a.text),b.removeAttribute(p.expando)}function bF(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bG(a){bv.test(a.type)&&(a.defaultChecked=a.checked)}function bY(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=bW.length;while(e--){b=bW[e]+c;if(b in a)return b}return d}function bZ(a,b){return a=b||a,p.css(a,"display")==="none"||!p.contains(a.ownerDocument,a)}function b$(a,b){var c,d,e=[],f=0,g=a.length;for(;f<g;f++){c=a[f];if(!c.style)continue;e[f]=p._data(c,"olddisplay"),b?(!e[f]&&c.style.display==="none"&&(c.style.display=""),c.style.display===""&&bZ(c)&&(e[f]=p._data(c,"olddisplay",cc(c.nodeName)))):(d=bH(c,"display"),!e[f]&&d!=="none"&&p._data(c,"olddisplay",d))}for(f=0;f<g;f++){c=a[f];if(!c.style)continue;if(!b||c.style.display==="none"||c.style.display==="")c.style.display=b?e[f]||"":"none"}return a}function b_(a,b,c){var d=bP.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function ca(a,b,c,d){var e=c===(d?"border":"content")?4:b==="width"?1:0,f=0;for(;e<4;e+=2)c==="margin"&&(f+=p.css(a,c+bV[e],!0)),d?(c==="content"&&(f-=parseFloat(bH(a,"padding"+bV[e]))||0),c!=="margin"&&(f-=parseFloat(bH(a,"border"+bV[e]+"Width"))||0)):(f+=parseFloat(bH(a,"padding"+bV[e]))||0,c!=="padding"&&(f+=parseFloat(bH(a,"border"+bV[e]+"Width"))||0));return f}function cb(a,b,c){var d=b==="width"?a.offsetWidth:a.offsetHeight,e=!0,f=p.support.boxSizing&&p.css(a,"boxSizing")==="border-box";if(d<=0||d==null){d=bH(a,b);if(d<0||d==null)d=a.style[b];if(bQ.test(d))return d;e=f&&(p.support.boxSizingReliable||d===a.style[b]),d=parseFloat(d)||0}return d+ca(a,b,c||(f?"border":"content"),e)+"px"}function cc(a){if(bS[a])return bS[a];var b=p("<"+a+">").appendTo(e.body),c=b.css("display");b.remove();if(c==="none"||c===""){bI=e.body.appendChild(bI||p.extend(e.createElement("iframe"),{frameBorder:0,width:0,height:0}));if(!bJ||!bI.createElement)bJ=(bI.contentWindow||bI.contentDocument).document,bJ.write("<!doctype html><html><body>"),bJ.close();b=bJ.body.appendChild(bJ.createElement(a)),c=bH(b,"display"),e.body.removeChild(bI)}return bS[a]=c,c}function ci(a,b,c,d){var e;if(p.isArray(b))p.each(b,function(b,e){c||ce.test(a)?d(a,e):ci(a+"["+(typeof e=="object"?b:"")+"]",e,c,d)});else if(!c&&p.type(b)==="object")for(e in b)ci(a+"["+e+"]",b[e],c,d);else d(a,b)}function cz(a){return function(b,c){typeof b!="string"&&(c=b,b="*");var d,e,f,g=b.toLowerCase().split(s),h=0,i=g.length;if(p.isFunction(c))for(;h<i;h++)d=g[h],f=/^\+/.test(d),f&&(d=d.substr(1)||"*"),e=a[d]=a[d]||[],e[f?"unshift":"push"](c)}}function cA(a,c,d,e,f,g){f=f||c.dataTypes[0],g=g||{},g[f]=!0;var h,i=a[f],j=0,k=i?i.length:0,l=a===cv;for(;j<k&&(l||!h);j++)h=i[j](c,d,e),typeof h=="string"&&(!l||g[h]?h=b:(c.dataTypes.unshift(h),h=cA(a,c,d,e,h,g)));return(l||!h)&&!g["*"]&&(h=cA(a,c,d,e,"*",g)),h}function cB(a,c){var d,e,f=p.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&p.extend(!0,a,e)}function cC(a,c,d){var e,f,g,h,i=a.contents,j=a.dataTypes,k=a.responseFields;for(f in k)f in d&&(c[k[f]]=d[f]);while(j[0]==="*")j.shift(),e===b&&(e=a.mimeType||c.getResponseHeader("content-type"));if(e)for(f in i)if(i[f]&&i[f].test(e)){j.unshift(f);break}if(j[0]in d)g=j[0];else{for(f in d){if(!j[0]||a.converters[f+" "+j[0]]){g=f;break}h||(h=f)}g=g||h}if(g)return g!==j[0]&&j.unshift(g),d[g]}function cD(a,b){var c,d,e,f,g=a.dataTypes.slice(),h=g[0],i={},j=0;a.dataFilter&&(b=a.dataFilter(b,a.dataType));if(g[1])for(c in a.converters)i[c.toLowerCase()]=a.converters[c];for(;e=g[++j];)if(e!=="*"){if(h!=="*"&&h!==e){c=i[h+" "+e]||i["* "+e];if(!c)for(d in i){f=d.split(" ");if(f[1]===e){c=i[h+" "+f[0]]||i["* "+f[0]];if(c){c===!0?c=i[d]:i[d]!==!0&&(e=f[0],g.splice(j--,0,e));break}}}if(c!==!0)if(c&&a["throws"])b=c(b);else try{b=c(b)}catch(k){return{state:"parsererror",error:c?k:"No conversion from "+h+" to "+e}}}h=e}return{state:"success",data:b}}function cL(){try{return new a.XMLHttpRequest}catch(b){}}function cM(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function cU(){return setTimeout(function(){cN=b},0),cN=p.now()}function cV(a,b){p.each(b,function(b,c){var d=(cT[b]||[]).concat(cT["*"]),e=0,f=d.length;for(;e<f;e++)if(d[e].call(a,b,c))return})}function cW(a,b,c){var d,e=0,f=0,g=cS.length,h=p.Deferred().always(function(){delete i.elem}),i=function(){var b=cN||cU(),c=Math.max(0,j.startTime+j.duration-b),d=1-(c/j.duration||0),e=0,f=j.tweens.length;for(;e<f;e++)j.tweens[e].run(d);return h.notifyWith(a,[j,d,c]),d<1&&f?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:p.extend({},b),opts:p.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:cN||cU(),duration:c.duration,tweens:[],createTween:function(b,c,d){var e=p.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(e),e},stop:function(b){var c=0,d=b?j.tweens.length:0;for(;c<d;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;cX(k,j.opts.specialEasing);for(;e<g;e++){d=cS[e].call(j,a,k,j.opts);if(d)return d}return cV(j,k),p.isFunction(j.opts.start)&&j.opts.start.call(a,j),p.fx.timer(p.extend(i,{anim:j,queue:j.opts.queue,elem:a})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}function cX(a,b){var c,d,e,f,g;for(c in a){d=p.camelCase(c),e=b[d],f=a[c],p.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=p.cssHooks[d];if(g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}}function cY(a,b,c){var d,e,f,g,h,i,j,k,l=this,m=a.style,n={},o=[],q=a.nodeType&&bZ(a);c.queue||(j=p._queueHooks(a,"fx"),j.unqueued==null&&(j.unqueued=0,k=j.empty.fire,j.empty.fire=function(){j.unqueued||k()}),j.unqueued++,l.always(function(){l.always(function(){j.unqueued--,p.queue(a,"fx").length||j.empty.fire()})})),a.nodeType===1&&("height"in b||"width"in b)&&(c.overflow=[m.overflow,m.overflowX,m.overflowY],p.css(a,"display")==="inline"&&p.css(a,"float")==="none"&&(!p.support.inlineBlockNeedsLayout||cc(a.nodeName)==="inline"?m.display="inline-block":m.zoom=1)),c.overflow&&(m.overflow="hidden",p.support.shrinkWrapBlocks||l.done(function(){m.overflow=c.overflow[0],m.overflowX=c.overflow[1],m.overflowY=c.overflow[2]}));for(d in b){f=b[d];if(cP.exec(f)){delete b[d];if(f===(q?"hide":"show"))continue;o.push(d)}}g=o.length;if(g){h=p._data(a,"fxshow")||p._data(a,"fxshow",{}),q?p(a).show():l.done(function(){p(a).hide()}),l.done(function(){var b;p.removeData(a,"fxshow",!0);for(b in n)p.style(a,b,n[b])});for(d=0;d<g;d++)e=o[d],i=l.createTween(e,q?h[e]:0),n[e]=h[e]||p.style(a,e),e in h||(h[e]=i.start,q&&(i.end=i.start,i.start=e==="width"||e==="height"?1:0))}}function cZ(a,b,c,d,e){return new cZ.prototype.init(a,b,c,d,e)}function c$(a,b){var c,d={height:a},e=0;b=b?1:0;for(;e<4;e+=2-b)c=bV[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function da(a){return p.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}var c,d,e=a.document,f=a.location,g=a.navigator,h=a.jQuery,i=a.$,j=Array.prototype.push,k=Array.prototype.slice,l=Array.prototype.indexOf,m=Object.prototype.toString,n=Object.prototype.hasOwnProperty,o=String.prototype.trim,p=function(a,b){return new p.fn.init(a,b,c)},q=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,r=/\S/,s=/\s+/,t=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,u=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,v=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,w=/^[\],:{}\s]*$/,x=/(?:^|:|,)(?:\s*\[)+/g,y=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,z=/"[^"\\\r\n]*"|true|false|null|-?(?:\d\d*\.|)\d+(?:[eE][\-+]?\d+|)/g,A=/^-ms-/,B=/-([\da-z])/gi,C=function(a,b){return(b+"").toUpperCase()},D=function(){e.addEventListener?(e.removeEventListener("DOMContentLoaded",D,!1),p.ready()):e.readyState==="complete"&&(e.detachEvent("onreadystatechange",D),p.ready())},E={};p.fn=p.prototype={constructor:p,init:function(a,c,d){var f,g,h,i;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if(typeof a=="string"){a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3?f=[null,a,null]:f=u.exec(a);if(f&&(f[1]||!c)){if(f[1])return c=c instanceof p?c[0]:c,i=c&&c.nodeType?c.ownerDocument||c:e,a=p.parseHTML(f[1],i,!0),v.test(f[1])&&p.isPlainObject(c)&&this.attr.call(a,c,!0),p.merge(this,a);g=e.getElementById(f[2]);if(g&&g.parentNode){if(g.id!==f[2])return d.find(a);this.length=1,this[0]=g}return this.context=e,this.selector=a,this}return!c||c.jquery?(c||d).find(a):this.constructor(c).find(a)}return p.isFunction(a)?d.ready(a):(a.selector!==b&&(this.selector=a.selector,this.context=a.context),p.makeArray(a,this))},selector:"",jquery:"1.8.2",length:0,size:function(){return this.length},toArray:function(){return k.call(this)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=p.merge(this.constructor(),a);return d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")"),d},each:function(a,b){return p.each(this,a,b)},ready:function(a){return p.ready.promise().done(a),this},eq:function(a){return a=+a,a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(k.apply(this,arguments),"slice",k.call(arguments).join(","))},map:function(a){return this.pushStack(p.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:j,sort:[].sort,splice:[].splice},p.fn.init.prototype=p.fn,p.extend=p.fn.extend=function(){var a,c,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;typeof h=="boolean"&&(k=h,h=arguments[1]||{},i=2),typeof h!="object"&&!p.isFunction(h)&&(h={}),j===i&&(h=this,--i);for(;i<j;i++)if((a=arguments[i])!=null)for(c in a){d=h[c],e=a[c];if(h===e)continue;k&&e&&(p.isPlainObject(e)||(f=p.isArray(e)))?(f?(f=!1,g=d&&p.isArray(d)?d:[]):g=d&&p.isPlainObject(d)?d:{},h[c]=p.extend(k,g,e)):e!==b&&(h[c]=e)}return h},p.extend({noConflict:function(b){return a.$===p&&(a.$=i),b&&a.jQuery===p&&(a.jQuery=h),p},isReady:!1,readyWait:1,holdReady:function(a){a?p.readyWait++:p.ready(!0)},ready:function(a){if(a===!0?--p.readyWait:p.isReady)return;if(!e.body)return setTimeout(p.ready,1);p.isReady=!0;if(a!==!0&&--p.readyWait>0)return;d.resolveWith(e,[p]),p.fn.trigger&&p(e).trigger("ready").off("ready")},isFunction:function(a){return p.type(a)==="function"},isArray:Array.isArray||function(a){return p.type(a)==="array"},isWindow:function(a){return a!=null&&a==a.window},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):E[m.call(a)]||"object"},isPlainObject:function(a){if(!a||p.type(a)!=="object"||a.nodeType||p.isWindow(a))return!1;try{if(a.constructor&&!n.call(a,"constructor")&&!n.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||n.call(a,d)},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},error:function(a){throw new Error(a)},parseHTML:function(a,b,c){var d;return!a||typeof a!="string"?null:(typeof b=="boolean"&&(c=b,b=0),b=b||e,(d=v.exec(a))?[b.createElement(d[1])]:(d=p.buildFragment([a],b,c?null:[]),p.merge([],(d.cacheable?p.clone(d.fragment):d.fragment).childNodes)))},parseJSON:function(b){if(!b||typeof b!="string")return null;b=p.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(w.test(b.replace(y,"@").replace(z,"]").replace(x,"")))return(new Function("return "+b))();p.error("Invalid JSON: "+b)},parseXML:function(c){var d,e;if(!c||typeof c!="string")return null;try{a.DOMParser?(e=new DOMParser,d=e.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(f){d=b}return(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&p.error("Invalid XML: "+c),d},noop:function(){},globalEval:function(b){b&&r.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(A,"ms-").replace(B,C)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,c,d){var e,f=0,g=a.length,h=g===b||p.isFunction(a);if(d){if(h){for(e in a)if(c.apply(a[e],d)===!1)break}else for(;f<g;)if(c.apply(a[f++],d)===!1)break}else if(h){for(e in a)if(c.call(a[e],e,a[e])===!1)break}else for(;f<g;)if(c.call(a[f],f,a[f++])===!1)break;return a},trim:o&&!o.call(" ")?function(a){return a==null?"":o.call(a)}:function(a){return a==null?"":(a+"").replace(t,"")},makeArray:function(a,b){var c,d=b||[];return a!=null&&(c=p.type(a),a.length==null||c==="string"||c==="function"||c==="regexp"||p.isWindow(a)?j.call(d,a):p.merge(d,a)),d},inArray:function(a,b,c){var d;if(b){if(l)return l.call(b,a,c);d=b.length,c=c?c<0?Math.max(0,d+c):c:0;for(;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=c.length,e=a.length,f=0;if(typeof d=="number")for(;f<d;f++)a[e++]=c[f];else while(c[f]!==b)a[e++]=c[f++];return a.length=e,a},grep:function(a,b,c){var d,e=[],f=0,g=a.length;c=!!c;for(;f<g;f++)d=!!b(a[f],f),c!==d&&e.push(a[f]);return e},map:function(a,c,d){var e,f,g=[],h=0,i=a.length,j=a instanceof p||i!==b&&typeof i=="number"&&(i>0&&a[0]&&a[i-1]||i===0||p.isArray(a));if(j)for(;h<i;h++)e=c(a[h],h,d),e!=null&&(g[g.length]=e);else for(f in a)e=c(a[f],f,d),e!=null&&(g[g.length]=e);return g.concat.apply([],g)},guid:1,proxy:function(a,c){var d,e,f;return typeof c=="string"&&(d=a[c],c=a,a=d),p.isFunction(a)?(e=k.call(arguments,2),f=function(){return a.apply(c,e.concat(k.call(arguments)))},f.guid=a.guid=a.guid||p.guid++,f):b},access:function(a,c,d,e,f,g,h){var i,j=d==null,k=0,l=a.length;if(d&&typeof d=="object"){for(k in d)p.access(a,c,k,d[k],1,g,e);f=1}else if(e!==b){i=h===b&&p.isFunction(e),j&&(i?(i=c,c=function(a,b,c){return i.call(p(a),c)}):(c.call(a,e),c=null));if(c)for(;k<l;k++)c(a[k],d,i?e.call(a[k],k,c(a[k],d)):e,h);f=1}return f?a:j?c.call(a):l?c(a[0],d):g},now:function(){return(new Date).getTime()}}),p.ready.promise=function(b){if(!d){d=p.Deferred();if(e.readyState==="complete")setTimeout(p.ready,1);else if(e.addEventListener)e.addEventListener("DOMContentLoaded",D,!1),a.addEventListener("load",p.ready,!1);else{e.attachEvent("onreadystatechange",D),a.attachEvent("onload",p.ready);var c=!1;try{c=a.frameElement==null&&e.documentElement}catch(f){}c&&c.doScroll&&function g(){if(!p.isReady){try{c.doScroll("left")}catch(a){return setTimeout(g,50)}p.ready()}}()}}return d.promise(b)},p.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){E["[object "+b+"]"]=b.toLowerCase()}),c=p(e);var F={};p.Callbacks=function(a){a=typeof a=="string"?F[a]||G(a):p.extend({},a);var c,d,e,f,g,h,i=[],j=!a.once&&[],k=function(b){c=a.memory&&b,d=!0,h=f||0,f=0,g=i.length,e=!0;for(;i&&h<g;h++)if(i[h].apply(b[0],b[1])===!1&&a.stopOnFalse){c=!1;break}e=!1,i&&(j?j.length&&k(j.shift()):c?i=[]:l.disable())},l={add:function(){if(i){var b=i.length;(function d(b){p.each(b,function(b,c){var e=p.type(c);e==="function"&&(!a.unique||!l.has(c))?i.push(c):c&&c.length&&e!=="string"&&d(c)})})(arguments),e?g=i.length:c&&(f=b,k(c))}return this},remove:function(){return i&&p.each(arguments,function(a,b){var c;while((c=p.inArray(b,i,c))>-1)i.splice(c,1),e&&(c<=g&&g--,c<=h&&h--)}),this},has:function(a){return p.inArray(a,i)>-1},empty:function(){return i=[],this},disable:function(){return i=j=c=b,this},disabled:function(){return!i},lock:function(){return j=b,c||l.disable(),this},locked:function(){return!j},fireWith:function(a,b){return b=b||[],b=[a,b.slice?b.slice():b],i&&(!d||j)&&(e?j.push(b):k(b)),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!d}};return l},p.extend({Deferred:function(a){var b=[["resolve","done",p.Callbacks("once memory"),"resolved"],["reject","fail",p.Callbacks("once memory"),"rejected"],["notify","progress",p.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return p.Deferred(function(c){p.each(b,function(b,d){var f=d[0],g=a[b];e[d[1]](p.isFunction(g)?function(){var a=g.apply(this,arguments);a&&p.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f+"With"](this===e?c:this,[a])}:c[f])}),a=null}).promise()},promise:function(a){return a!=null?p.extend(a,d):d}},e={};return d.pipe=d.then,p.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[a^1][2].disable,b[2][2].lock),e[f[0]]=g.fire,e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=k.call(arguments),d=c.length,e=d!==1||a&&p.isFunction(a.promise)?d:0,f=e===1?a:p.Deferred(),g=function(a,b,c){return function(d){b[a]=this,c[a]=arguments.length>1?k.call(arguments):d,c===h?f.notifyWith(b,c):--e||f.resolveWith(b,c)}},h,i,j;if(d>1){h=new Array(d),i=new Array(d),j=new Array(d);for(;b<d;b++)c[b]&&p.isFunction(c[b].promise)?c[b].promise().done(g(b,j,c)).fail(f.reject).progress(g(b,i,h)):--e}return e||f.resolveWith(j,c),f.promise()}}),p.support=function(){var b,c,d,f,g,h,i,j,k,l,m,n=e.createElement("div");n.setAttribute("className","t"),n.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",c=n.getElementsByTagName("*"),d=n.getElementsByTagName("a")[0],d.style.cssText="top:1px;float:left;opacity:.5";if(!c||!c.length)return{};f=e.createElement("select"),g=f.appendChild(e.createElement("option")),h=n.getElementsByTagName("input")[0],b={leadingWhitespace:n.firstChild.nodeType===3,tbody:!n.getElementsByTagName("tbody").length,htmlSerialize:!!n.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:d.getAttribute("href")==="/a",opacity:/^0.5/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:h.value==="on",optSelected:g.selected,getSetAttribute:n.className!=="t",enctype:!!e.createElement("form").enctype,html5Clone:e.createElement("nav").cloneNode(!0).outerHTML!=="<:nav></:nav>",boxModel:e.compatMode==="CSS1Compat",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0,boxSizingReliable:!0,pixelPosition:!1},h.checked=!0,b.noCloneChecked=h.cloneNode(!0).checked,f.disabled=!0,b.optDisabled=!g.disabled;try{delete n.test}catch(o){b.deleteExpando=!1}!n.addEventListener&&n.attachEvent&&n.fireEvent&&(n.attachEvent("onclick",m=function(){b.noCloneEvent=!1}),n.cloneNode(!0).fireEvent("onclick"),n.detachEvent("onclick",m)),h=e.createElement("input"),h.value="t",h.setAttribute("type","radio"),b.radioValue=h.value==="t",h.setAttribute("checked","checked"),h.setAttribute("name","t"),n.appendChild(h),i=e.createDocumentFragment(),i.appendChild(n.lastChild),b.checkClone=i.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=h.checked,i.removeChild(h),i.appendChild(n);if(n.attachEvent)for(k in{submit:!0,change:!0,focusin:!0})j="on"+k,l=j in n,l||(n.setAttribute(j,"return;"),l=typeof n[j]=="function"),b[k+"Bubbles"]=l;return p(function(){var c,d,f,g,h="padding:0;margin:0;border:0;display:block;overflow:hidden;",i=e.getElementsByTagName("body")[0];if(!i)return;c=e.createElement("div"),c.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",i.insertBefore(c,i.firstChild),d=e.createElement("div"),c.appendChild(d),d.innerHTML="<table><tr><td></td><td>t</td></tr></table>",f=d.getElementsByTagName("td"),f[0].style.cssText="padding:0;margin:0;border:0;display:none",l=f[0].offsetHeight===0,f[0].style.display="",f[1].style.display="none",b.reliableHiddenOffsets=l&&f[0].offsetHeight===0,d.innerHTML="",d.style.cssText="box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;padding:1px;border:1px;display:block;width:4px;margin-top:1%;position:absolute;top:1%;",b.boxSizing=d.offsetWidth===4,b.doesNotIncludeMarginInBodyOffset=i.offsetTop!==1,a.getComputedStyle&&(b.pixelPosition=(a.getComputedStyle(d,null)||{}).top!=="1%",b.boxSizingReliable=(a.getComputedStyle(d,null)||{width:"4px"}).width==="4px",g=e.createElement("div"),g.style.cssText=d.style.cssText=h,g.style.marginRight=g.style.width="0",d.style.width="1px",d.appendChild(g),b.reliableMarginRight=!parseFloat((a.getComputedStyle(g,null)||{}).marginRight)),typeof d.style.zoom!="undefined"&&(d.innerHTML="",d.style.cssText=h+"width:1px;padding:1px;display:inline;zoom:1",b.inlineBlockNeedsLayout=d.offsetWidth===3,d.style.display="block",d.style.overflow="visible",d.innerHTML="<div></div>",d.firstChild.style.width="5px",b.shrinkWrapBlocks=d.offsetWidth!==3,c.style.zoom=1),i.removeChild(c),c=d=f=g=null}),i.removeChild(n),c=d=f=g=h=i=n=null,b}();var H=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,I=/([A-Z])/g;p.extend({cache:{},deletedIds:[],uuid:0,expando:"jQuery"+(p.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){return a=a.nodeType?p.cache[a[p.expando]]:a[p.expando],!!a&&!K(a)},data:function(a,c,d,e){if(!p.acceptData(a))return;var f,g,h=p.expando,i=typeof c=="string",j=a.nodeType,k=j?p.cache:a,l=j?a[h]:a[h]&&h;if((!l||!k[l]||!e&&!k[l].data)&&i&&d===b)return;l||(j?a[h]=l=p.deletedIds.pop()||p.guid++:l=h),k[l]||(k[l]={},j||(k[l].toJSON=p.noop));if(typeof c=="object"||typeof c=="function")e?k[l]=p.extend(k[l],c):k[l].data=p.extend(k[l].data,c);return f=k[l],e||(f.data||(f.data={}),f=f.data),d!==b&&(f[p.camelCase(c)]=d),i?(g=f[c],g==null&&(g=f[p.camelCase(c)])):g=f,g},removeData:function(a,b,c){if(!p.acceptData(a))return;var d,e,f,g=a.nodeType,h=g?p.cache:a,i=g?a[p.expando]:p.expando;if(!h[i])return;if(b){d=c?h[i]:h[i].data;if(d){p.isArray(b)||(b in d?b=[b]:(b=p.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:p.isEmptyObject)(d))return}}if(!c){delete h[i].data;if(!K(h[i]))return}g?p.cleanData([a],!0):p.support.deleteExpando||h!=h.window?delete h[i]:h[i]=null},_data:function(a,b,c){return p.data(a,b,c,!0)},acceptData:function(a){var b=a.nodeName&&p.noData[a.nodeName.toLowerCase()];return!b||b!==!0&&a.getAttribute("classid")===b}}),p.fn.extend({data:function(a,c){var d,e,f,g,h,i=this[0],j=0,k=null;if(a===b){if(this.length){k=p.data(i);if(i.nodeType===1&&!p._data(i,"parsedAttrs")){f=i.attributes;for(h=f.length;j<h;j++)g=f[j].name,g.indexOf("data-")||(g=p.camelCase(g.substring(5)),J(i,g,k[g]));p._data(i,"parsedAttrs",!0)}}return k}return typeof a=="object"?this.each(function(){p.data(this,a)}):(d=a.split(".",2),d[1]=d[1]?"."+d[1]:"",e=d[1]+"!",p.access(this,function(c){if(c===b)return k=this.triggerHandler("getData"+e,[d[0]]),k===b&&i&&(k=p.data(i,a),k=J(i,a,k)),k===b&&d[1]?this.data(d[0]):k;d[1]=c,this.each(function(){var b=p(this);b.triggerHandler("setData"+e,d),p.data(this,a,c),b.triggerHandler("changeData"+e,d)})},null,c,arguments.length>1,null,!1))},removeData:function(a){return this.each(function(){p.removeData(this,a)})}}),p.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=p._data(a,b),c&&(!d||p.isArray(c)?d=p._data(a,b,p.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=p.queue(a,b),d=c.length,e=c.shift(),f=p._queueHooks(a,b),g=function(){p.dequeue(a,b)};e==="inprogress"&&(e=c.shift(),d--),e&&(b==="fx"&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return p._data(a,c)||p._data(a,c,{empty:p.Callbacks("once memory").add(function(){p.removeData(a,b+"queue",!0),p.removeData(a,c,!0)})})}}),p.fn.extend({queue:function(a,c){var d=2;return typeof a!="string"&&(c=a,a="fx",d--),arguments.length<d?p.queue(this[0],a):c===b?this:this.each(function(){var b=p.queue(this,a,c);p._queueHooks(this,a),a==="fx"&&b[0]!=="inprogress"&&p.dequeue(this,a)})},dequeue:function(a){return this.each(function(){p.dequeue(this,a)})},delay:function(a,b){return a=p.fx?p.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,c){var d,e=1,f=p.Deferred(),g=this,h=this.length,i=function(){--e||f.resolveWith(g,[g])};typeof a!="string"&&(c=a,a=b),a=a||"fx";while(h--)d=p._data(g[h],a+"queueHooks"),d&&d.empty&&(e++,d.empty.add(i));return i(),f.promise(c)}});var L,M,N,O=/[\t\r\n]/g,P=/\r/g,Q=/^(?:button|input)$/i,R=/^(?:button|input|object|select|textarea)$/i,S=/^a(?:rea|)$/i,T=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,U=p.support.getSetAttribute;p.fn.extend({attr:function(a,b){return p.access(this,p.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){p.removeAttr(this,a)})},prop:function(a,b){return p.access(this,p.prop,a,b,arguments.length>1)},removeProp:function(a){return a=p.propFix[a]||a,this.each(function(){try{this[a]=b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,h;if(p.isFunction(a))return this.each(function(b){p(this).addClass(a.call(this,b,this.className))});if(a&&typeof a=="string"){b=a.split(s);for(c=0,d=this.length;c<d;c++){e=this[c];if(e.nodeType===1)if(!e.className&&b.length===1)e.className=a;else{f=" "+e.className+" ";for(g=0,h=b.length;g<h;g++)f.indexOf(" "+b[g]+" ")<0&&(f+=b[g]+" ");e.className=p.trim(f)}}}return this},removeClass:function(a){var c,d,e,f,g,h,i;if(p.isFunction(a))return this.each(function(b){p(this).removeClass(a.call(this,b,this.className))});if(a&&typeof a=="string"||a===b){c=(a||"").split(s);for(h=0,i=this.length;h<i;h++){e=this[h];if(e.nodeType===1&&e.className){d=(" "+e.className+" ").replace(O," ");for(f=0,g=c.length;f<g;f++)while(d.indexOf(" "+c[f]+" ")>=0)d=d.replace(" "+c[f]+" "," ");e.className=a?p.trim(d):""}}}return this},toggleClass:function(a,b){var c=typeof a,d=typeof b=="boolean";return p.isFunction(a)?this.each(function(c){p(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if(c==="string"){var e,f=0,g=p(this),h=b,i=a.split(s);while(e=i[f++])h=d?h:!g.hasClass(e),g[h?"addClass":"removeClass"](e)}else if(c==="undefined"||c==="boolean")this.className&&p._data(this,"__className__",this.className),this.className=this.className||a===!1?"":p._data(this,"__className__")||""})},hasClass:function(a){var b=" "+a+" ",c=0,d=this.length;for(;c<d;c++)if(this[c].nodeType===1&&(" "+this[c].className+" ").replace(O," ").indexOf(b)>=0)return!0;return!1},val:function(a){var c,d,e,f=this[0];if(!arguments.length){if(f)return c=p.valHooks[f.type]||p.valHooks[f.nodeName.toLowerCase()],c&&"get"in c&&(d=c.get(f,"value"))!==b?d:(d=f.value,typeof d=="string"?d.replace(P,""):d==null?"":d);return}return e=p.isFunction(a),this.each(function(d){var f,g=p(this);if(this.nodeType!==1)return;e?f=a.call(this,d,g.val()):f=a,f==null?f="":typeof f=="number"?f+="":p.isArray(f)&&(f=p.map(f,function(a){return a==null?"":a+""})),c=p.valHooks[this.type]||p.valHooks[this.nodeName.toLowerCase()];if(!c||!("set"in c)||c.set(this,f,"value")===b)this.value=f})}}),p.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,f=a.selectedIndex,g=[],h=a.options,i=a.type==="select-one";if(f<0)return null;c=i?f:0,d=i?f+1:h.length;for(;c<d;c++){e=h[c];if(e.selected&&(p.support.optDisabled?!e.disabled:e.getAttribute("disabled")===null)&&(!e.parentNode.disabled||!p.nodeName(e.parentNode,"optgroup"))){b=p(e).val();if(i)return b;g.push(b)}}return i&&!g.length&&h.length?p(h[f]).val():g},set:function(a,b){var c=p.makeArray(b);return p(a).find("option").each(function(){this.selected=p.inArray(p(this).val(),c)>=0}),c.length||(a.selectedIndex=-1),c}}},attrFn:{},attr:function(a,c,d,e){var f,g,h,i=a.nodeType;if(!a||i===3||i===8||i===2)return;if(e&&p.isFunction(p.fn[c]))return p(a)[c](d);if(typeof a.getAttribute=="undefined")return p.prop(a,c,d);h=i!==1||!p.isXMLDoc(a),h&&(c=c.toLowerCase(),g=p.attrHooks[c]||(T.test(c)?M:L));if(d!==b){if(d===null){p.removeAttr(a,c);return}return g&&"set"in g&&h&&(f=g.set(a,d,c))!==b?f:(a.setAttribute(c,d+""),d)}return g&&"get"in g&&h&&(f=g.get(a,c))!==null?f:(f=a.getAttribute(c),f===null?b:f)},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&a.nodeType===1){d=b.split(s);for(;g<d.length;g++)e=d[g],e&&(c=p.propFix[e]||e,f=T.test(e),f||p.attr(a,e,""),a.removeAttribute(U?e:c),f&&c in a&&(a[c]=!1))}},attrHooks:{type:{set:function(a,b){if(Q.test(a.nodeName)&&a.parentNode)p.error("type property can't be changed");else if(!p.support.radioValue&&b==="radio"&&p.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}},value:{get:function(a,b){return L&&p.nodeName(a,"button")?L.get(a,b):b in a?a.value:null},set:function(a,b,c){if(L&&p.nodeName(a,"button"))return L.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,h=a.nodeType;if(!a||h===3||h===8||h===2)return;return g=h!==1||!p.isXMLDoc(a),g&&(c=p.propFix[c]||c,f=p.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&(e=f.get(a,c))!==null?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):R.test(a.nodeName)||S.test(a.nodeName)&&a.href?0:b}}}}),M={get:function(a,c){var d,e=p.prop(a,c);return e===!0||typeof e!="boolean"&&(d=a.getAttributeNode(c))&&d.nodeValue!==!1?c.toLowerCase():b},set:function(a,b,c){var d;return b===!1?p.removeAttr(a,c):(d=p.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase())),c}},U||(N={name:!0,id:!0,coords:!0},L=p.valHooks.button={get:function(a,c){var d;return d=a.getAttributeNode(c),d&&(N[c]?d.value!=="":d.specified)?d.value:b},set:function(a,b,c){var d=a.getAttributeNode(c);return d||(d=e.createAttribute(c),a.setAttributeNode(d)),d.value=b+""}},p.each(["width","height"],function(a,b){p.attrHooks[b]=p.extend(p.attrHooks[b],{set:function(a,c){if(c==="")return a.setAttribute(b,"auto"),c}})}),p.attrHooks.contenteditable={get:L.get,set:function(a,b,c){b===""&&(b="false"),L.set(a,b,c)}}),p.support.hrefNormalized||p.each(["href","src","width","height"],function(a,c){p.attrHooks[c]=p.extend(p.attrHooks[c],{get:function(a){var d=a.getAttribute(c,2);return d===null?b:d}})}),p.support.style||(p.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=b+""}}),p.support.optSelected||(p.propHooks.selected=p.extend(p.propHooks.selected,{get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}})),p.support.enctype||(p.propFix.enctype="encoding"),p.support.checkOn||p.each(["radio","checkbox"],function(){p.valHooks[this]={get:function(a){return a.getAttribute("value")===null?"on":a.value}}}),p.each(["radio","checkbox"],function(){p.valHooks[this]=p.extend(p.valHooks[this],{set:function(a,b){if(p.isArray(b))return a.checked=p.inArray(p(a).val(),b)>=0}})});var V=/^(?:textarea|input|select)$/i,W=/^([^\.]*|)(?:\.(.+)|)$/,X=/(?:^|\s)hover(\.\S+|)\b/,Y=/^key/,Z=/^(?:mouse|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=function(a){return p.event.special.hover?a:a.replace(X,"mouseenter$1 mouseleave$1")};p.event={add:function(a,c,d,e,f){var g,h,i,j,k,l,m,n,o,q,r;if(a.nodeType===3||a.nodeType===8||!c||!d||!(g=p._data(a)))return;d.handler&&(o=d,d=o.handler,f=o.selector),d.guid||(d.guid=p.guid++),i=g.events,i||(g.events=i={}),h=g.handle,h||(g.handle=h=function(a){return typeof p!="undefined"&&(!a||p.event.triggered!==a.type)?p.event.dispatch.apply(h.elem,arguments):b},h.elem=a),c=p.trim(_(c)).split(" ");for(j=0;j<c.length;j++){k=W.exec(c[j])||[],l=k[1],m=(k[2]||"").split(".").sort(),r=p.event.special[l]||{},l=(f?r.delegateType:r.bindType)||l,r=p.event.special[l]||{},n=p.extend({type:l,origType:k[1],data:e,handler:d,guid:d.guid,selector:f,needsContext:f&&p.expr.match.needsContext.test(f),namespace:m.join(".")},o),q=i[l];if(!q){q=i[l]=[],q.delegateCount=0;if(!r.setup||r.setup.call(a,e,m,h)===!1)a.addEventListener?a.addEventListener(l,h,!1):a.attachEvent&&a.attachEvent("on"+l,h)}r.add&&(r.add.call(a,n),n.handler.guid||(n.handler.guid=d.guid)),f?q.splice(q.delegateCount++,0,n):q.push(n),p.event.global[l]=!0}a=null},global:{},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,q,r=p.hasData(a)&&p._data(a);if(!r||!(m=r.events))return;b=p.trim(_(b||"")).split(" ");for(f=0;f<b.length;f++){g=W.exec(b[f])||[],h=i=g[1],j=g[2];if(!h){for(h in m)p.event.remove(a,h+b[f],c,d,!0);continue}n=p.event.special[h]||{},h=(d?n.delegateType:n.bindType)||h,o=m[h]||[],k=o.length,j=j?new RegExp("(^|\\.)"+j.split(".").sort().join("\\.(?:.*\\.|)")+"(\\.|$)"):null;for(l=0;l<o.length;l++)q=o[l],(e||i===q.origType)&&(!c||c.guid===q.guid)&&(!j||j.test(q.namespace))&&(!d||d===q.selector||d==="**"&&q.selector)&&(o.splice(l--,1),q.selector&&o.delegateCount--,n.remove&&n.remove.call(a,q));o.length===0&&k!==o.length&&((!n.teardown||n.teardown.call(a,j,r.handle)===!1)&&p.removeEvent(a,h,r.handle),delete m[h])}p.isEmptyObject(m)&&(delete r.handle,p.removeData(a,"events",!0))},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,f,g){if(!f||f.nodeType!==3&&f.nodeType!==8){var h,i,j,k,l,m,n,o,q,r,s=c.type||c,t=[];if($.test(s+p.event.triggered))return;s.indexOf("!")>=0&&(s=s.slice(0,-1),i=!0),s.indexOf(".")>=0&&(t=s.split("."),s=t.shift(),t.sort());if((!f||p.event.customEvent[s])&&!p.event.global[s])return;c=typeof c=="object"?c[p.expando]?c:new p.Event(s,c):new p.Event(s),c.type=s,c.isTrigger=!0,c.exclusive=i,c.namespace=t.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+t.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,m=s.indexOf(":")<0?"on"+s:"";if(!f){h=p.cache;for(j in h)h[j].events&&h[j].events[s]&&p.event.trigger(c,d,h[j].handle.elem,!0);return}c.result=b,c.target||(c.target=f),d=d!=null?p.makeArray(d):[],d.unshift(c),n=p.event.special[s]||{};if(n.trigger&&n.trigger.apply(f,d)===!1)return;q=[[f,n.bindType||s]];if(!g&&!n.noBubble&&!p.isWindow(f)){r=n.delegateType||s,k=$.test(r+s)?f:f.parentNode;for(l=f;k;k=k.parentNode)q.push([k,r]),l=k;l===(f.ownerDocument||e)&&q.push([l.defaultView||l.parentWindow||a,r])}for(j=0;j<q.length&&!c.isPropagationStopped();j++)k=q[j][0],c.type=q[j][1],o=(p._data(k,"events")||{})[c.type]&&p._data(k,"handle"),o&&o.apply(k,d),o=m&&k[m],o&&p.acceptData(k)&&o.apply&&o.apply(k,d)===!1&&c.preventDefault();return c.type=s,!g&&!c.isDefaultPrevented()&&(!n._default||n._default.apply(f.ownerDocument,d)===!1)&&(s!=="click"||!p.nodeName(f,"a"))&&p.acceptData(f)&&m&&f[s]&&(s!=="focus"&&s!=="blur"||c.target.offsetWidth!==0)&&!p.isWindow(f)&&(l=f[m],l&&(f[m]=null),p.event.triggered=s,f[s](),p.event.triggered=b,l&&(f[m]=l)),c.result}return},dispatch:function(c){c=p.event.fix(c||a.event);var d,e,f,g,h,i,j,l,m,n,o=(p._data(this,"events")||{})[c.type]||[],q=o.delegateCount,r=k.call(arguments),s=!c.exclusive&&!c.namespace,t=p.event.special[c.type]||{},u=[];r[0]=c,c.delegateTarget=this;if(t.preDispatch&&t.preDispatch.call(this,c)===!1)return;if(q&&(!c.button||c.type!=="click"))for(f=c.target;f!=this;f=f.parentNode||this)if(f.disabled!==!0||c.type!=="click"){h={},j=[];for(d=0;d<q;d++)l=o[d],m=l.selector,h[m]===b&&(h[m]=l.needsContext?p(m,this).index(f)>=0:p.find(m,this,null,[f]).length),h[m]&&j.push(l);j.length&&u.push({elem:f,matches:j})}o.length>q&&u.push({elem:this,matches:o.slice(q)});for(d=0;d<u.length&&!c.isPropagationStopped();d++){i=u[d],c.currentTarget=i.elem;for(e=0;e<i.matches.length&&!c.isImmediatePropagationStopped();e++){l=i.matches[e];if(s||!c.namespace&&!l.namespace||c.namespace_re&&c.namespace_re.test(l.namespace))c.data=l.data,c.handleObj=l,g=((p.event.special[l.origType]||{}).handle||l.handler).apply(i.elem,r),g!==b&&(c.result=g,g===!1&&(c.preventDefault(),c.stopPropagation()))}}return t.postDispatch&&t.postDispatch.call(this,c),c.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return a.which==null&&(a.which=b.charCode!=null?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,f,g,h=c.button,i=c.fromElement;return a.pageX==null&&c.clientX!=null&&(d=a.target.ownerDocument||e,f=d.documentElement,g=d.body,a.pageX=c.clientX+(f&&f.scrollLeft||g&&g.scrollLeft||0)-(f&&f.clientLeft||g&&g.clientLeft||0),a.pageY=c.clientY+(f&&f.scrollTop||g&&g.scrollTop||0)-(f&&f.clientTop||g&&g.clientTop||0)),!a.relatedTarget&&i&&(a.relatedTarget=i===a.target?c.toElement:i),!a.which&&h!==b&&(a.which=h&1?1:h&2?3:h&4?2:0),a}},fix:function(a){if(a[p.expando])return a;var b,c,d=a,f=p.event.fixHooks[a.type]||{},g=f.props?this.props.concat(f.props):this.props;a=p.Event(d);for(b=g.length;b;)c=g[--b],a[c]=d[c];return a.target||(a.target=d.srcElement||e),a.target.nodeType===3&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,f.filter?f.filter(a,d):a},special:{load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){p.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){var e=p.extend(new p.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?p.event.trigger(e,null,b):p.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},p.event.handle=p.event.dispatch,p.removeEvent=e.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]=="undefined"&&(a[d]=null),a.detachEvent(d,c))},p.Event=function(a,b){if(this instanceof p.Event)a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||a.returnValue===!1||a.getPreventDefault&&a.getPreventDefault()?bb:ba):this.type=a,b&&p.extend(this,b),this.timeStamp=a&&a.timeStamp||p.now(),this[p.expando]=!0;else return new p.Event(a,b)},p.Event.prototype={preventDefault:function(){this.isDefaultPrevented=bb;var a=this.originalEvent;if(!a)return;a.preventDefault?a.preventDefault():a.returnValue=!1},stopPropagation:function(){this.isPropagationStopped=bb;var a=this.originalEvent;if(!a)return;a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=bb,this.stopPropagation()},isDefaultPrevented:ba,isPropagationStopped:ba,isImmediatePropagationStopped:ba},p.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){p.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj,g=f.selector;if(!e||e!==d&&!p.contains(d,e))a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b;return c}}}),p.support.submitBubbles||(p.event.special.submit={setup:function(){if(p.nodeName(this,"form"))return!1;p.event.add(this,"click._submit keypress._submit",function(a){var c=a.target,d=p.nodeName(c,"input")||p.nodeName(c,"button")?c.form:b;d&&!p._data(d,"_submit_attached")&&(p.event.add(d,"submit._submit",function(a){a._submit_bubble=!0}),p._data(d,"_submit_attached",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&p.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){if(p.nodeName(this,"form"))return!1;p.event.remove(this,"._submit")}}),p.support.changeBubbles||(p.event.special.change={setup:function(){if(V.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio")p.event.add(this,"propertychange._change",function(a){a.originalEvent.propertyName==="checked"&&(this._just_changed=!0)}),p.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),p.event.simulate("change",this,a,!0)});return!1}p.event.add(this,"beforeactivate._change",function(a){var b=a.target;V.test(b.nodeName)&&!p._data(b,"_change_attached")&&(p.event.add(b,"change._change",function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&p.event.simulate("change",this.parentNode,a,!0)}),p._data(b,"_change_attached",!0))})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||b.type!=="radio"&&b.type!=="checkbox")return a.handleObj.handler.apply(this,arguments)},teardown:function(){return p.event.remove(this,"._change"),!V.test(this.nodeName)}}),p.support.focusinBubbles||p.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){p.event.simulate(b,a.target,p.event.fix(a),!0)};p.event.special[b]={setup:function(){c++===0&&e.addEventListener(a,d,!0)},teardown:function(){--c===0&&e.removeEventListener(a,d,!0)}}}),p.fn.extend({on:function(a,c,d,e,f){var g,h;if(typeof a=="object"){typeof c!="string"&&(d=d||c,c=b);for(h in a)this.on(h,c,d,a[h],f);return this}d==null&&e==null?(e=c,d=c=b):e==null&&(typeof c=="string"?(e=d,d=b):(e=d,d=c,c=b));if(e===!1)e=ba;else if(!e)return this;return f===1&&(g=e,e=function(a){return p().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=p.guid++)),this.each(function(){p.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,c,d){var e,f;if(a&&a.preventDefault&&a.handleObj)return e=a.handleObj,p(a.delegateTarget).off(e.namespace?e.origType+"."+e.namespace:e.origType,e.selector,e.handler),this;if(typeof a=="object"){for(f in a)this.off(f,c,a[f]);return this}if(c===!1||typeof c=="function")d=c,c=b;return d===!1&&(d=ba),this.each(function(){p.event.remove(this,a,d,c)})},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){return p(this.context).on(a,this.selector,b,c),this},die:function(a,b){return p(this.context).off(a,this.selector||"**",b),this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return arguments.length===1?this.off(a,"**"):this.off(b,a||"**",c)},trigger:function(a,b){return this.each(function(){p.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return p.event.trigger(a,b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||p.guid++,d=0,e=function(c){var e=(p._data(this,"lastToggle"+a.guid)||0)%d;return p._data(this,"lastToggle"+a.guid,e+1),c.preventDefault(),b[e].apply(this,arguments)||!1};e.guid=c;while(d<b.length)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),p.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){p.fn[b]=function(a,c){return c==null&&(c=a,a=null),arguments.length>0?this.on(b,null,a,c):this.trigger(b)},Y.test(b)&&(p.event.fixHooks[b]=p.event.keyHooks),Z.test(b)&&(p.event.fixHooks[b]=p.event.mouseHooks)}),function(a,b){function bc(a,b,c,d){c=c||[],b=b||r;var e,f,i,j,k=b.nodeType;if(!a||typeof a!="string")return c;if(k!==1&&k!==9)return[];i=g(b);if(!i&&!d)if(e=P.exec(a))if(j=e[1]){if(k===9){f=b.getElementById(j);if(!f||!f.parentNode)return c;if(f.id===j)return c.push(f),c}else if(b.ownerDocument&&(f=b.ownerDocument.getElementById(j))&&h(b,f)&&f.id===j)return c.push(f),c}else{if(e[2])return w.apply(c,x.call(b.getElementsByTagName(a),0)),c;if((j=e[3])&&_&&b.getElementsByClassName)return w.apply(c,x.call(b.getElementsByClassName(j),0)),c}return bp(a.replace(L,"$1"),b,c,d,i)}function bd(a){return function(b){var c=b.nodeName.toLowerCase();return c==="input"&&b.type===a}}function be(a){return function(b){var c=b.nodeName.toLowerCase();return(c==="input"||c==="button")&&b.type===a}}function bf(a){return z(function(b){return b=+b,z(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function bg(a,b,c){if(a===b)return c;var d=a.nextSibling;while(d){if(d===b)return-1;d=d.nextSibling}return 1}function bh(a,b){var c,d,f,g,h,i,j,k=C[o][a];if(k)return b?0:k.slice(0);h=a,i=[],j=e.preFilter;while(h){if(!c||(d=M.exec(h)))d&&(h=h.slice(d[0].length)),i.push(f=[]);c=!1;if(d=N.exec(h))f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=d[0].replace(L," ");for(g in e.filter)(d=W[g].exec(h))&&(!j[g]||(d=j[g](d,r,!0)))&&(f.push(c=new q(d.shift())),h=h.slice(c.length),c.type=g,c.matches=d);if(!c)break}return b?h.length:h?bc.error(a):C(a,i).slice(0)}function bi(a,b,d){var e=b.dir,f=d&&b.dir==="parentNode",g=u++;return b.first?function(b,c,d){while(b=b[e])if(f||b.nodeType===1)return a(b,c,d)}:function(b,d,h){if(!h){var i,j=t+" "+g+" ",k=j+c;while(b=b[e])if(f||b.nodeType===1){if((i=b[o])===k)return b.sizset;if(typeof i=="string"&&i.indexOf(j)===0){if(b.sizset)return b}else{b[o]=k;if(a(b,d,h))return b.sizset=!0,b;b.sizset=!1}}}else while(b=b[e])if(f||b.nodeType===1)if(a(b,d,h))return b}}function bj(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function bk(a,b,c,d,e){var f,g=[],h=0,i=a.length,j=b!=null;for(;h<i;h++)if(f=a[h])if(!c||c(f,d,e))g.push(f),j&&b.push(h);return g}function bl(a,b,c,d,e,f){return d&&!d[o]&&(d=bl(d)),e&&!e[o]&&(e=bl(e,f)),z(function(f,g,h,i){if(f&&e)return;var j,k,l,m=[],n=[],o=g.length,p=f||bo(b||"*",h.nodeType?[h]:h,[],f),q=a&&(f||!b)?bk(p,m,a,h,i):p,r=c?e||(f?a:o||d)?[]:g:q;c&&c(q,r,h,i);if(d){l=bk(r,n),d(l,[],h,i),j=l.length;while(j--)if(k=l[j])r[n[j]]=!(q[n[j]]=k)}if(f){j=a&&r.length;while(j--)if(k=r[j])f[m[j]]=!(g[m[j]]=k)}else r=bk(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):w.apply(g,r)})}function bm(a){var b,c,d,f=a.length,g=e.relative[a[0].type],h=g||e.relative[" "],i=g?1:0,j=bi(function(a){return a===b},h,!0),k=bi(function(a){return y.call(b,a)>-1},h,!0),m=[function(a,c,d){return!g&&(d||c!==l)||((b=c).nodeType?j(a,c,d):k(a,c,d))}];for(;i<f;i++)if(c=e.relative[a[i].type])m=[bi(bj(m),c)];else{c=e.filter[a[i].type].apply(null,a[i].matches);if(c[o]){d=++i;for(;d<f;d++)if(e.relative[a[d].type])break;return bl(i>1&&bj(m),i>1&&a.slice(0,i-1).join("").replace(L,"$1"),c,i<d&&bm(a.slice(i,d)),d<f&&bm(a=a.slice(d)),d<f&&a.join(""))}m.push(c)}return bj(m)}function bn(a,b){var d=b.length>0,f=a.length>0,g=function(h,i,j,k,m){var n,o,p,q=[],s=0,u="0",x=h&&[],y=m!=null,z=l,A=h||f&&e.find.TAG("*",m&&i.parentNode||i),B=t+=z==null?1:Math.E;y&&(l=i!==r&&i,c=g.el);for(;(n=A[u])!=null;u++){if(f&&n){for(o=0;p=a[o];o++)if(p(n,i,j)){k.push(n);break}y&&(t=B,c=++g.el)}d&&((n=!p&&n)&&s--,h&&x.push(n))}s+=u;if(d&&u!==s){for(o=0;p=b[o];o++)p(x,q,i,j);if(h){if(s>0)while(u--)!x[u]&&!q[u]&&(q[u]=v.call(k));q=bk(q)}w.apply(k,q),y&&!h&&q.length>0&&s+b.length>1&&bc.uniqueSort(k)}return y&&(t=B,l=z),x};return g.el=0,d?z(g):g}function bo(a,b,c,d){var e=0,f=b.length;for(;e<f;e++)bc(a,b[e],c,d);return c}function bp(a,b,c,d,f){var g,h,j,k,l,m=bh(a),n=m.length;if(!d&&m.length===1){h=m[0]=m[0].slice(0);if(h.length>2&&(j=h[0]).type==="ID"&&b.nodeType===9&&!f&&e.relative[h[1].type]){b=e.find.ID(j.matches[0].replace(V,""),b,f)[0];if(!b)return c;a=a.slice(h.shift().length)}for(g=W.POS.test(a)?-1:h.length-1;g>=0;g--){j=h[g];if(e.relative[k=j.type])break;if(l=e.find[k])if(d=l(j.matches[0].replace(V,""),R.test(h[0].type)&&b.parentNode||b,f)){h.splice(g,1),a=d.length&&h.join("");if(!a)return w.apply(c,x.call(d,0)),c;break}}}return i(a,m)(d,b,f,c,R.test(a)),c}function bq(){}var c,d,e,f,g,h,i,j,k,l,m=!0,n="undefined",o=("sizcache"+Math.random()).replace(".",""),q=String,r=a.document,s=r.documentElement,t=0,u=0,v=[].pop,w=[].push,x=[].slice,y=[].indexOf||function(a){var b=0,c=this.length;for(;b<c;b++)if(this[b]===a)return b;return-1},z=function(a,b){return a[o]=b==null||b,a},A=function(){var a={},b=[];return z(function(c,d){return b.push(c)>e.cacheLength&&delete a[b.shift()],a[c]=d},a)},B=A(),C=A(),D=A(),E="[\\x20\\t\\r\\n\\f]",F="(?:\\\\.|[-\\w]|[^\\x00-\\xa0])+",G=F.replace("w","w#"),H="([*^$|!~]?=)",I="\\["+E+"*("+F+")"+E+"*(?:"+H+E+"*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|("+G+")|)|)"+E+"*\\]",J=":("+F+")(?:\\((?:(['\"])((?:\\\\.|[^\\\\])*?)\\2|([^()[\\]]*|(?:(?:"+I+")|[^:]|\\\\.)*|.*))\\)|)",K=":(even|odd|eq|gt|lt|nth|first|last)(?:\\("+E+"*((?:-\\d)?\\d*)"+E+"*\\)|)(?=[^-]|$)",L=new RegExp("^"+E+"+|((?:^|[^\\\\])(?:\\\\.)*)"+E+"+$","g"),M=new RegExp("^"+E+"*,"+E+"*"),N=new RegExp("^"+E+"*([\\x20\\t\\r\\n\\f>+~])"+E+"*"),O=new RegExp(J),P=/^(?:#([\w\-]+)|(\w+)|\.([\w\-]+))$/,Q=/^:not/,R=/[\x20\t\r\n\f]*[+~]/,S=/:not\($/,T=/h\d/i,U=/input|select|textarea|button/i,V=/\\(?!\\)/g,W={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),NAME:new RegExp("^\\[name=['\"]?("+F+")['\"]?\\]"),TAG:new RegExp("^("+F.replace("w","w*")+")"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+J),POS:new RegExp(K,"i"),CHILD:new RegExp("^:(only|nth|first|last)-child(?:\\("+E+"*(even|odd|(([+-]|)(\\d*)n|)"+E+"*(?:([+-]|)"+E+"*(\\d+)|))"+E+"*\\)|)","i"),needsContext:new RegExp("^"+E+"*[>+~]|"+K,"i")},X=function(a){var b=r.createElement("div");try{return a(b)}catch(c){return!1}finally{b=null}},Y=X(function(a){return a.appendChild(r.createComment("")),!a.getElementsByTagName("*").length}),Z=X(function(a){return a.innerHTML="<a href='#'></a>",a.firstChild&&typeof a.firstChild.getAttribute!==n&&a.firstChild.getAttribute("href")==="#"}),$=X(function(a){a.innerHTML="<select></select>";var b=typeof a.lastChild.getAttribute("multiple");return b!=="boolean"&&b!=="string"}),_=X(function(a){return a.innerHTML="<div class='hidden e'></div><div class='hidden'></div>",!a.getElementsByClassName||!a.getElementsByClassName("e").length?!1:(a.lastChild.className="e",a.getElementsByClassName("e").length===2)}),ba=X(function(a){a.id=o+0,a.innerHTML="<a name='"+o+"'></a><div name='"+o+"'></div>",s.insertBefore(a,s.firstChild);var b=r.getElementsByName&&r.getElementsByName(o).length===2+r.getElementsByName(o+0).length;return d=!r.getElementById(o),s.removeChild(a),b});try{x.call(s.childNodes,0)[0].nodeType}catch(bb){x=function(a){var b,c=[];for(;b=this[a];a++)c.push(b);return c}}bc.matches=function(a,b){return bc(a,null,null,b)},bc.matchesSelector=function(a,b){return bc(b,null,null,[a]).length>0},f=bc.getText=function(a){var b,c="",d=0,e=a.nodeType;if(e){if(e===1||e===9||e===11){if(typeof a.textContent=="string")return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=f(a)}else if(e===3||e===4)return a.nodeValue}else for(;b=a[d];d++)c+=f(b);return c},g=bc.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?b.nodeName!=="HTML":!1},h=bc.contains=s.contains?function(a,b){var c=a.nodeType===9?a.documentElement:a,d=b&&b.parentNode;return a===d||!!(d&&d.nodeType===1&&c.contains&&c.contains(d))}:s.compareDocumentPosition?function(a,b){return b&&!!(a.compareDocumentPosition(b)&16)}:function(a,b){while(b=b.parentNode)if(b===a)return!0;return!1},bc.attr=function(a,b){var c,d=g(a);return d||(b=b.toLowerCase()),(c=e.attrHandle[b])?c(a):d||$?a.getAttribute(b):(c=a.getAttributeNode(b),c?typeof a[b]=="boolean"?a[b]?b:null:c.specified?c.value:null:null)},e=bc.selectors={cacheLength:50,createPseudo:z,match:W,attrHandle:Z?{}:{href:function(a){return a.getAttribute("href",2)},type:function(a){return a.getAttribute("type")}},find:{ID:d?function(a,b,c){if(typeof b.getElementById!==n&&!c){var d=b.getElementById(a);return d&&d.parentNode?[d]:[]}}:function(a,c,d){if(typeof c.getElementById!==n&&!d){var e=c.getElementById(a);return e?e.id===a||typeof e.getAttributeNode!==n&&e.getAttributeNode("id").value===a?[e]:b:[]}},TAG:Y?function(a,b){if(typeof b.getElementsByTagName!==n)return b.getElementsByTagName(a)}:function(a,b){var c=b.getElementsByTagName(a);if(a==="*"){var d,e=[],f=0;for(;d=c[f];f++)d.nodeType===1&&e.push(d);return e}return c},NAME:ba&&function(a,b){if(typeof b.getElementsByName!==n)return b.getElementsByName(name)},CLASS:_&&function(a,b,c){if(typeof b.getElementsByClassName!==n&&!c)return b.getElementsByClassName(a)}},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(V,""),a[3]=(a[4]||a[5]||"").replace(V,""),a[2]==="~="&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),a[1]==="nth"?(a[2]||bc.error(a[0]),a[3]=+(a[3]?a[4]+(a[5]||1):2*(a[2]==="even"||a[2]==="odd")),a[4]=+(a[6]+a[7]||a[2]==="odd")):a[2]&&bc.error(a[0]),a},PSEUDO:function(a){var b,c;if(W.CHILD.test(a[0]))return null;if(a[3])a[2]=a[3];else if(b=a[4])O.test(b)&&(c=bh(b,!0))&&(c=b.indexOf(")",b.length-c)-b.length)&&(b=b.slice(0,c),a[0]=a[0].slice(0,c)),a[2]=b;return a.slice(0,3)}},filter:{ID:d?function(a){return a=a.replace(V,""),function(b){return b.getAttribute("id")===a}}:function(a){return a=a.replace(V,""),function(b){var c=typeof b.getAttributeNode!==n&&b.getAttributeNode("id");return c&&c.value===a}},TAG:function(a){return a==="*"?function(){return!0}:(a=a.replace(V,"").toLowerCase(),function(b){return b.nodeName&&b.nodeName.toLowerCase()===a})},CLASS:function(a){var b=B[o][a];return b||(b=B(a,new RegExp("(^|"+E+")"+a+"("+E+"|$)"))),function(a){return b.test(a.className||typeof a.getAttribute!==n&&a.getAttribute("class")||"")}},ATTR:function(a,b,c){return function(d,e){var f=bc.attr(d,a);return f==null?b==="!=":b?(f+="",b==="="?f===c:b==="!="?f!==c:b==="^="?c&&f.indexOf(c)===0:b==="*="?c&&f.indexOf(c)>-1:b==="$="?c&&f.substr(f.length-c.length)===c:b==="~="?(" "+f+" ").indexOf(c)>-1:b==="|="?f===c||f.substr(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d){return a==="nth"?function(a){var b,e,f=a.parentNode;if(c===1&&d===0)return!0;if(f){e=0;for(b=f.firstChild;b;b=b.nextSibling)if(b.nodeType===1){e++;if(a===b)break}}return e-=d,e===c||e%c===0&&e/c>=0}:function(b){var c=b;switch(a){case"only":case"first":while(c=c.previousSibling)if(c.nodeType===1)return!1;if(a==="first")return!0;c=b;case"last":while(c=c.nextSibling)if(c.nodeType===1)return!1;return!0}}},PSEUDO:function(a,b){var c,d=e.pseudos[a]||e.setFilters[a.toLowerCase()]||bc.error("unsupported pseudo: "+a);return d[o]?d(b):d.length>1?(c=[a,a,"",b],e.setFilters.hasOwnProperty(a.toLowerCase())?z(function(a,c){var e,f=d(a,b),g=f.length;while(g--)e=y.call(a,f[g]),a[e]=!(c[e]=f[g])}):function(a){return d(a,0,c)}):d}},pseudos:{not:z(function(a){var b=[],c=[],d=i(a.replace(L,"$1"));return d[o]?z(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)if(f=g[h])a[h]=!(b[h]=f)}):function(a,e,f){return b[0]=a,d(b,null,f,c),!c.pop()}}),has:z(function(a){return function(b){return bc(a,b).length>0}}),contains:z(function(a){return function(b){return(b.textContent||b.innerText||f(b)).indexOf(a)>-1}}),enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&!!a.checked||b==="option"&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},parent:function(a){return!e.pseudos.empty(a)},empty:function(a){var b;a=a.firstChild;while(a){if(a.nodeName>"@"||(b=a.nodeType)===3||b===4)return!1;a=a.nextSibling}return!0},header:function(a){return T.test(a.nodeName)},text:function(a){var b,c;return a.nodeName.toLowerCase()==="input"&&(b=a.type)==="text"&&((c=a.getAttribute("type"))==null||c.toLowerCase()===b)},radio:bd("radio"),checkbox:bd("checkbox"),file:bd("file"),password:bd("password"),image:bd("image"),submit:be("submit"),reset:be("reset"),button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&a.type==="button"||b==="button"},input:function(a){return U.test(a.nodeName)},focus:function(a){var b=a.ownerDocument;return a===b.activeElement&&(!b.hasFocus||b.hasFocus())&&(!!a.type||!!a.href)},active:function(a){return a===a.ownerDocument.activeElement},first:bf(function(a,b,c){return[0]}),last:bf(function(a,b,c){return[b-1]}),eq:bf(function(a,b,c){return[c<0?c+b:c]}),even:bf(function(a,b,c){for(var d=0;d<b;d+=2)a.push(d);return a}),odd:bf(function(a,b,c){for(var d=1;d<b;d+=2)a.push(d);return a}),lt:bf(function(a,b,c){for(var d=c<0?c+b:c;--d>=0;)a.push(d);return a}),gt:bf(function(a,b,c){for(var d=c<0?c+b:c;++d<b;)a.push(d);return a})}},j=s.compareDocumentPosition?function(a,b){return a===b?(k=!0,0):(!a.compareDocumentPosition||!b.compareDocumentPosition?a.compareDocumentPosition:a.compareDocumentPosition(b)&4)?-1:1}:function(a,b){if(a===b)return k=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[],g=a.parentNode,h=b.parentNode,i=g;if(g===h)return bg(a,b);if(!g)return-1;if(!h)return 1;while(i)e.unshift(i),i=i.parentNode;i=h;while(i)f.unshift(i),i=i.parentNode;c=e.length,d=f.length;for(var j=0;j<c&&j<d;j++)if(e[j]!==f[j])return bg(e[j],f[j]);return j===c?bg(a,f[j],-1):bg(e[j],b,1)},[0,0].sort(j),m=!k,bc.uniqueSort=function(a){var b,c=1;k=m,a.sort(j);if(k)for(;b=a[c];c++)b===a[c-1]&&a.splice(c--,1);return a},bc.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},i=bc.compile=function(a,b){var c,d=[],e=[],f=D[o][a];if(!f){b||(b=bh(a)),c=b.length;while(c--)f=bm(b[c]),f[o]?d.push(f):e.push(f);f=D(a,bn(e,d))}return f},r.querySelectorAll&&function(){var a,b=bp,c=/'|\\/g,d=/\=[\x20\t\r\n\f]*([^'"\]]*)[\x20\t\r\n\f]*\]/g,e=[":focus"],f=[":active",":focus"],h=s.matchesSelector||s.mozMatchesSelector||s.webkitMatchesSelector||s.oMatchesSelector||s.msMatchesSelector;X(function(a){a.innerHTML="<select><option selected=''></option></select>",a.querySelectorAll("[selected]").length||e.push("\\["+E+"*(?:checked|disabled|ismap|multiple|readonly|selected|value)"),a.querySelectorAll(":checked").length||e.push(":checked")}),X(function(a){a.innerHTML="<p test=''></p>",a.querySelectorAll("[test^='']").length&&e.push("[*^$]="+E+"*(?:\"\"|'')"),a.innerHTML="<input type='hidden'/>",a.querySelectorAll(":enabled").length||e.push(":enabled",":disabled")}),e=new RegExp(e.join("|")),bp=function(a,d,f,g,h){if(!g&&!h&&(!e||!e.test(a))){var i,j,k=!0,l=o,m=d,n=d.nodeType===9&&a;if(d.nodeType===1&&d.nodeName.toLowerCase()!=="object"){i=bh(a),(k=d.getAttribute("id"))?l=k.replace(c,"\\$&"):d.setAttribute("id",l),l="[id='"+l+"'] ",j=i.length;while(j--)i[j]=l+i[j].join("");m=R.test(a)&&d.parentNode||d,n=i.join(",")}if(n)try{return w.apply(f,x.call(m.querySelectorAll(n),0)),f}catch(p){}finally{k||d.removeAttribute("id")}}return b(a,d,f,g,h)},h&&(X(function(b){a=h.call(b,"div");try{h.call(b,"[test!='']:sizzle"),f.push("!=",J)}catch(c){}}),f=new RegExp(f.join("|")),bc.matchesSelector=function(b,c){c=c.replace(d,"='$1']");if(!g(b)&&!f.test(c)&&(!e||!e.test(c)))try{var i=h.call(b,c);if(i||a||b.document&&b.document.nodeType!==11)return i}catch(j){}return bc(c,null,null,[b]).length>0})}(),e.pseudos.nth=e.pseudos.eq,e.filters=bq.prototype=e.pseudos,e.setFilters=new bq,bc.attr=p.attr,p.find=bc,p.expr=bc.selectors,p.expr[":"]=p.expr.pseudos,p.unique=bc.uniqueSort,p.text=bc.getText,p.isXMLDoc=bc.isXML,p.contains=bc.contains}(a);var bc=/Until$/,bd=/^(?:parents|prev(?:Until|All))/,be=/^.[^:#\[\.,]*$/,bf=p.expr.match.needsContext,bg={children:!0,contents:!0,next:!0,prev:!0};p.fn.extend({find:function(a){var b,c,d,e,f,g,h=this;if(typeof a!="string")return p(a).filter(function(){for(b=0,c=h.length;b<c;b++)if(p.contains(h[b],this))return!0});g=this.pushStack("","find",a);for(b=0,c=this.length;b<c;b++){d=g.length,p.find(a,this[b],g);if(b>0)for(e=d;e<g.length;e++)for(f=0;f<d;f++)if(g[f]===g[e]){g.splice(e--,1);break}}return g},has:function(a){var b,c=p(a,this),d=c.length;return this.filter(function(){for(b=0;b<d;b++)if(p.contains(this,c[b]))return!0})},not:function(a){return this.pushStack(bj(this,a,!1),"not",a)},filter:function(a){return this.pushStack(bj(this,a,!0),"filter",a)},is:function(a){return!!a&&(typeof a=="string"?bf.test(a)?p(a,this.context).index(this[0])>=0:p.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c,d=0,e=this.length,f=[],g=bf.test(a)||typeof a!="string"?p(a,b||this.context):0;for(;d<e;d++){c=this[d];while(c&&c.ownerDocument&&c!==b&&c.nodeType!==11){if(g?g.index(c)>-1:p.find.matchesSelector(c,a)){f.push(c);break}c=c.parentNode}}return f=f.length>1?p.unique(f):f,this.pushStack(f,"closest",a)},index:function(a){return a?typeof a=="string"?p.inArray(this[0],p(a)):p.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.prevAll().length:-1},add:function(a,b){var c=typeof a=="string"?p(a,b):p.makeArray(a&&a.nodeType?[a]:a),d=p.merge(this.get(),c);return this.pushStack(bh(c[0])||bh(d[0])?d:p.unique(d))},addBack:function(a){return this.add(a==null?this.prevObject:this.prevObject.filter(a))}}),p.fn.andSelf=p.fn.addBack,p.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return p.dir(a,"parentNode")},parentsUntil:function(a,b,c){return p.dir(a,"parentNode",c)},next:function(a){return bi(a,"nextSibling")},prev:function(a){return bi(a,"previousSibling")},nextAll:function(a){return p.dir(a,"nextSibling")},prevAll:function(a){return p.dir(a,"previousSibling")},nextUntil:function(a,b,c){return p.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return p.dir(a,"previousSibling",c)},siblings:function(a){return p.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return p.sibling(a.firstChild)},contents:function(a){return p.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:p.merge([],a.childNodes)}},function(a,b){p.fn[a]=function(c,d){var e=p.map(this,b,c);return bc.test(a)||(d=c),d&&typeof d=="string"&&(e=p.filter(d,e)),e=this.length>1&&!bg[a]?p.unique(e):e,this.length>1&&bd.test(a)&&(e=e.reverse()),this.pushStack(e,a,k.call(arguments).join(","))}}),p.extend({filter:function(a,b,c){return c&&(a=":not("+a+")"),b.length===1?p.find.matchesSelector(b[0],a)?[b[0]]:[]:p.find.matches(a,b)},dir:function(a,c,d){var e=[],f=a[c];while(f&&f.nodeType!==9&&(d===b||f.nodeType!==1||!p(f).is(d)))f.nodeType===1&&e.push(f),f=f[c];return e},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var bl="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",bm=/ jQuery\d+="(?:null|\d+)"/g,bn=/^\s+/,bo=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,bp=/<([\w:]+)/,bq=/<tbody/i,br=/<|&#?\w+;/,bs=/<(?:script|style|link)/i,bt=/<(?:script|object|embed|option|style)/i,bu=new RegExp("<(?:"+bl+")[\\s/>]","i"),bv=/^(?:checkbox|radio)$/,bw=/checked\s*(?:[^=]|=\s*.checked.)/i,bx=/\/(java|ecma)script/i,by=/^\s*<!(?:\[CDATA\[|\-\-)|[\]\-]{2}>\s*$/g,bz={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},bA=bk(e),bB=bA.appendChild(e.createElement("div"));bz.optgroup=bz.option,bz.tbody=bz.tfoot=bz.colgroup=bz.caption=bz.thead,bz.th=bz.td,p.support.htmlSerialize||(bz._default=[1,"X<div>","</div>"]),p.fn.extend({text:function(a){return p.access(this,function(a){return a===b?p.text(this):this.empty().append((this[0]&&this[0].ownerDocument||e).createTextNode(a))},null,a,arguments.length)},wrapAll:function(a){if(p.isFunction(a))return this.each(function(b){p(this).wrapAll(a.call(this,b))});if(this[0]){var b=p(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return p.isFunction(a)?this.each(function(b){p(this).wrapInner(a.call(this,b))}):this.each(function(){var b=p(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=p.isFunction(a);return this.each(function(c){p(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){p.nodeName(this,"body")||p(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){(this.nodeType===1||this.nodeType===11)&&this.insertBefore(a,this.firstChild)})},before:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(a,this),"before",this.selector)}},after:function(){if(!bh(this[0]))return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=p.clean(arguments);return this.pushStack(p.merge(this,a),"after",this.selector)}},remove:function(a,b){var c,d=0;for(;(c=this[d])!=null;d++)if(!a||p.filter(a,[c]).length)!b&&c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),p.cleanData([c])),c.parentNode&&c.parentNode.removeChild(c);return this},empty:function(){var a,b=0;for(;(a=this[b])!=null;b++){a.nodeType===1&&p.cleanData(a.getElementsByTagName("*"));while(a.firstChild)a.removeChild(a.firstChild)}return this},clone:function(a,b){return a=a==null?!1:a,b=b==null?a:b,this.map(function(){return p.clone(this,a,b)})},html:function(a){return p.access(this,function(a){var c=this[0]||{},d=0,e=this.length;if(a===b)return c.nodeType===1?c.innerHTML.replace(bm,""):b;if(typeof a=="string"&&!bs.test(a)&&(p.support.htmlSerialize||!bu.test(a))&&(p.support.leadingWhitespace||!bn.test(a))&&!bz[(bp.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(bo,"<$1></$2>");try{for(;d<e;d++)c=this[d]||{},c.nodeType===1&&(p.cleanData(c.getElementsByTagName("*")),c.innerHTML=a);c=0}catch(f){}}c&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(a){return bh(this[0])?this.length?this.pushStack(p(p.isFunction(a)?a():a),"replaceWith",a):this:p.isFunction(a)?this.each(function(b){var c=p(this),d=c.html();c.replaceWith(a.call(this,b,d))}):(typeof a!="string"&&(a=p(a).detach()),this.each(function(){var b=this.nextSibling,c=this.parentNode;p(this).remove(),b?p(b).before(a):p(c).append(a)}))},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){a=[].concat.apply([],a);var e,f,g,h,i=0,j=a[0],k=[],l=this.length;if(!p.support.checkClone&&l>1&&typeof j=="string"&&bw.test(j))return this.each(function(){p(this).domManip(a,c,d)});if(p.isFunction(j))return this.each(function(e){var f=p(this);a[0]=j.call(this,e,c?f.html():b),f.domManip(a,c,d)});if(this[0]){e=p.buildFragment(a,this,k),g=e.fragment,f=g.firstChild,g.childNodes.length===1&&(g=f);if(f){c=c&&p.nodeName(f,"tr");for(h=e.cacheable||l-1;i<l;i++)d.call(c&&p.nodeName(this[i],"table")?bC(this[i],"tbody"):this[i],i===h?g:p.clone(g,!0,!0))}g=f=null,k.length&&p.each(k,function(a,b){b.src?p.ajax?p.ajax({url:b.src,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0}):p.error("no ajax"):p.globalEval((b.text||b.textContent||b.innerHTML||"").replace(by,"")),b.parentNode&&b.parentNode.removeChild(b)})}return this}}),p.buildFragment=function(a,c,d){var f,g,h,i=a[0];return c=c||e,c=!c.nodeType&&c[0]||c,c=c.ownerDocument||c,a.length===1&&typeof i=="string"&&i.length<512&&c===e&&i.charAt(0)==="<"&&!bt.test(i)&&(p.support.checkClone||!bw.test(i))&&(p.support.html5Clone||!bu.test(i))&&(g=!0,f=p.fragments[i],h=f!==b),f||(f=c.createDocumentFragment(),p.clean(a,c,f,d),g&&(p.fragments[i]=h&&f)),{fragment:f,cacheable:g}},p.fragments={},p.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){p.fn[a]=function(c){var d,e=0,f=[],g=p(c),h=g.length,i=this.length===1&&this[0].parentNode;if((i==null||i&&i.nodeType===11&&i.childNodes.length===1)&&h===1)return g[b](this[0]),this;for(;e<h;e++)d=(e>0?this.clone(!0):this).get(),p(g[e])[b](d),f=f.concat(d);return this.pushStack(f,a,g.selector)}}),p.extend({clone:function(a,b,c){var d,e,f,g;p.support.html5Clone||p.isXMLDoc(a)||!bu.test("<"+a.nodeName+">")?g=a.cloneNode(!0):(bB.innerHTML=a.outerHTML,bB.removeChild(g=bB.firstChild));if((!p.support.noCloneEvent||!p.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!p.isXMLDoc(a)){bE(a,g),d=bF(a),e=bF(g);for(f=0;d[f];++f)e[f]&&bE(d[f],e[f])}if(b){bD(a,g);if(c){d=bF(a),e=bF(g);for(f=0;d[f];++f)bD(d[f],e[f])}}return d=e=null,g},clean:function(a,b,c,d){var f,g,h,i,j,k,l,m,n,o,q,r,s=b===e&&bA,t=[];if(!b||typeof b.createDocumentFragment=="undefined")b=e;for(f=0;(h=a[f])!=null;f++){typeof h=="number"&&(h+="");if(!h)continue;if(typeof h=="string")if(!br.test(h))h=b.createTextNode(h);else{s=s||bk(b),l=b.createElement("div"),s.appendChild(l),h=h.replace(bo,"<$1></$2>"),i=(bp.exec(h)||["",""])[1].toLowerCase(),j=bz[i]||bz._default,k=j[0],l.innerHTML=j[1]+h+j[2];while(k--)l=l.lastChild;if(!p.support.tbody){m=bq.test(h),n=i==="table"&&!m?l.firstChild&&l.firstChild.childNodes:j[1]==="<table>"&&!m?l.childNodes:[];for(g=n.length-1;g>=0;--g)p.nodeName(n[g],"tbody")&&!n[g].childNodes.length&&n[g].parentNode.removeChild(n[g])}!p.support.leadingWhitespace&&bn.test(h)&&l.insertBefore(b.createTextNode(bn.exec(h)[0]),l.firstChild),h=l.childNodes,l.parentNode.removeChild(l)}h.nodeType?t.push(h):p.merge(t,h)}l&&(h=l=s=null);if(!p.support.appendChecked)for(f=0;(h=t[f])!=null;f++)p.nodeName(h,"input")?bG(h):typeof h.getElementsByTagName!="undefined"&&p.grep(h.getElementsByTagName("input"),bG);if(c){q=function(a){if(!a.type||bx.test(a.type))return d?d.push(a.parentNode?a.parentNode.removeChild(a):a):c.appendChild(a)};for(f=0;(h=t[f])!=null;f++)if(!p.nodeName(h,"script")||!q(h))c.appendChild(h),typeof h.getElementsByTagName!="undefined"&&(r=p.grep(p.merge([],h.getElementsByTagName("script")),q),t.splice.apply(t,[f+1,0].concat(r)),f+=r.length)}return t},cleanData:function(a,b){var c,d,e,f,g=0,h=p.expando,i=p.cache,j=p.support.deleteExpando,k=p.event.special;for(;(e=a[g])!=null;g++)if(b||p.acceptData(e)){d=e[h],c=d&&i[d];if(c){if(c.events)for(f in c.events)k[f]?p.event.remove(e,f):p.removeEvent(e,f,c.handle);i[d]&&(delete i[d],j?delete e[h]:e.removeAttribute?e.removeAttribute(h):e[h]=null,p.deletedIds.push(d))}}}}),function(){var a,b;p.uaMatch=function(a){a=a.toLowerCase();var b=/(chrome)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[];return{browser:b[1]||"",version:b[2]||"0"}},a=p.uaMatch(g.userAgent),b={},a.browser&&(b[a.browser]=!0,b.version=a.version),b.chrome?b.webkit=!0:b.webkit&&(b.safari=!0),p.browser=b,p.sub=function(){function a(b,c){return new a.fn.init(b,c)}p.extend(!0,a,this),a.superclass=this,a.fn=a.prototype=this(),a.fn.constructor=a,a.sub=this.sub,a.fn.init=function c(c,d){return d&&d instanceof p&&!(d instanceof a)&&(d=a(d)),p.fn.init.call(this,c,d,b)},a.fn.init.prototype=a.fn;var b=a(e);return a}}();var bH,bI,bJ,bK=/alpha\([^)]*\)/i,bL=/opacity=([^)]*)/,bM=/^(top|right|bottom|left)$/,bN=/^(none|table(?!-c[ea]).+)/,bO=/^margin/,bP=new RegExp("^("+q+")(.*)$","i"),bQ=new RegExp("^("+q+")(?!px)[a-z%]+$","i"),bR=new RegExp("^([-+])=("+q+")","i"),bS={},bT={position:"absolute",visibility:"hidden",display:"block"},bU={letterSpacing:0,fontWeight:400},bV=["Top","Right","Bottom","Left"],bW=["Webkit","O","Moz","ms"],bX=p.fn.toggle;p.fn.extend({css:function(a,c){return p.access(this,function(a,c,d){return d!==b?p.style(a,c,d):p.css(a,c)},a,c,arguments.length>1)},show:function(){return b$(this,!0)},hide:function(){return b$(this)},toggle:function(a,b){var c=typeof a=="boolean";return p.isFunction(a)&&p.isFunction(b)?bX.apply(this,arguments):this.each(function(){(c?a:bZ(this))?p(this).show():p(this).hide()})}}),p.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=bH(a,"opacity");return c===""?"1":c}}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":p.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(!a||a.nodeType===3||a.nodeType===8||!a.style)return;var f,g,h,i=p.camelCase(c),j=a.style;c=p.cssProps[i]||(p.cssProps[i]=bY(j,i)),h=p.cssHooks[c]||p.cssHooks[i];if(d===b)return h&&"get"in h&&(f=h.get(a,!1,e))!==b?f:j[c];g=typeof d,g==="string"&&(f=bR.exec(d))&&(d=(f[1]+1)*f[2]+parseFloat(p.css(a,c)),g="number");if(d==null||g==="number"&&isNaN(d))return;g==="number"&&!p.cssNumber[i]&&(d+="px");if(!h||!("set"in h)||(d=h.set(a,d,e))!==b)try{j[c]=d}catch(k){}},css:function(a,c,d,e){var f,g,h,i=p.camelCase(c);return c=p.cssProps[i]||(p.cssProps[i]=bY(a.style,i)),h=p.cssHooks[c]||p.cssHooks[i],h&&"get"in h&&(f=h.get(a,!0,e)),f===b&&(f=bH(a,c)),f==="normal"&&c in bU&&(f=bU[c]),d||e!==b?(g=parseFloat(f),d||p.isNumeric(g)?g||0:f):f},swap:function(a,b,c){var d,e,f={};for(e in b)f[e]=a.style[e],a.style[e]=b[e];d=c.call(a);for(e in b)a.style[e]=f[e];return d}}),a.getComputedStyle?bH=function(b,c){var d,e,f,g,h=a.getComputedStyle(b,null),i=b.style;return h&&(d=h[c],d===""&&!p.contains(b.ownerDocument,b)&&(d=p.style(b,c)),bQ.test(d)&&bO.test(c)&&(e=i.width,f=i.minWidth,g=i.maxWidth,i.minWidth=i.maxWidth=i.width=d,d=h.width,i.width=e,i.minWidth=f,i.maxWidth=g)),d}:e.documentElement.currentStyle&&(bH=function(a,b){var c,d,e=a.currentStyle&&a.currentStyle[b],f=a.style;return e==null&&f&&f[b]&&(e=f[b]),bQ.test(e)&&!bM.test(b)&&(c=f.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),f.left=b==="fontSize"?"1em":e,e=f.pixelLeft+"px",f.left=c,d&&(a.runtimeStyle.left=d)),e===""?"auto":e}),p.each(["height","width"],function(a,b){p.cssHooks[b]={get:function(a,c,d){if(c)return a.offsetWidth===0&&bN.test(bH(a,"display"))?p.swap(a,bT,function(){return cb(a,b,d)}):cb(a,b,d)},set:function(a,c,d){return b_(a,c,d?ca(a,b,d,p.support.boxSizing&&p.css(a,"boxSizing")==="border-box"):0)}}}),p.support.opacity||(p.cssHooks.opacity={get:function(a,b){return bL.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=p.isNumeric(b)?"alpha(opacity="+b*100+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&p.trim(f.replace(bK,""))===""&&c.removeAttribute){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bK.test(f)?f.replace(bK,e):f+" "+e}}),p(function(){p.support.reliableMarginRight||(p.cssHooks.marginRight={get:function(a,b){return p.swap(a,{display:"inline-block"},function(){if(b)return bH(a,"marginRight")})}}),!p.support.pixelPosition&&p.fn.position&&p.each(["top","left"],function(a,b){p.cssHooks[b]={get:function(a,c){if(c){var d=bH(a,b);return bQ.test(d)?p(a).position()[b]+"px":d}}}})}),p.expr&&p.expr.filters&&(p.expr.filters.hidden=function(a){return a.offsetWidth===0&&a.offsetHeight===0||!p.support.reliableHiddenOffsets&&(a.style&&a.style.display||bH(a,"display"))==="none"},p.expr.filters.visible=function(a){return!p.expr.filters.hidden(a)}),p.each({margin:"",padding:"",border:"Width"},function(a,b){p.cssHooks[a+b]={expand:function(c){var d,e=typeof c=="string"?c.split(" "):[c],f={};for(d=0;d<4;d++)f[a+bV[d]+b]=e[d]||e[d-2]||e[0];return f}},bO.test(a)||(p.cssHooks[a+b].set=b_)});var cd=/%20/g,ce=/\[\]$/,cf=/\r?\n/g,cg=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,ch=/^(?:select|textarea)/i;p.fn.extend({serialize:function(){return p.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?p.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ch.test(this.nodeName)||cg.test(this.type))}).map(function(a,b){var c=p(this).val();return c==null?null:p.isArray(c)?p.map(c,function(a,c){return{name:b.name,value:a.replace(cf,"\r\n")}}):{name:b.name,value:c.replace(cf,"\r\n")}}).get()}}),p.param=function(a,c){var d,e=[],f=function(a,b){b=p.isFunction(b)?b():b==null?"":b,e[e.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=p.ajaxSettings&&p.ajaxSettings.traditional);if(p.isArray(a)||a.jquery&&!p.isPlainObject(a))p.each(a,function(){f(this.name,this.value)});else for(d in a)ci(d,a[d],c,f);return e.join("&").replace(cd,"+")};var cj,ck,cl=/#.*$/,cm=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,cn=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,co=/^(?:GET|HEAD)$/,cp=/^\/\//,cq=/\?/,cr=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,cs=/([?&])_=[^&]*/,ct=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+)|)|)/,cu=p.fn.load,cv={},cw={},cx=["*/"]+["*"];try{ck=f.href}catch(cy){ck=e.createElement("a"),ck.href="",ck=ck.href}cj=ct.exec(ck.toLowerCase())||[],p.fn.load=function(a,c,d){if(typeof a!="string"&&cu)return cu.apply(this,arguments);if(!this.length)return this;var e,f,g,h=this,i=a.indexOf(" ");return i>=0&&(e=a.slice(i,a.length),a=a.slice(0,i)),p.isFunction(c)?(d=c,c=b):c&&typeof c=="object"&&(f="POST"),p.ajax({url:a,type:f,dataType:"html",data:c,complete:function(a,b){d&&h.each(d,g||[a.responseText,b,a])}}).done(function(a){g=arguments,h.html(e?p("<div>").append(a.replace(cr,"")).find(e):a)}),this},p.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){p.fn[b]=function(a){return this.on(b,a)}}),p.each(["get","post"],function(a,c){p[c]=function(a,d,e,f){return p.isFunction(d)&&(f=f||e,e=d,d=b),p.ajax({type:c,url:a,data:d,success:e,dataType:f})}}),p.extend({getScript:function(a,c){return p.get(a,b,c,"script")},getJSON:function(a,b,c){return p.get(a,b,c,"json")},ajaxSetup:function(a,b){return b?cB(a,p.ajaxSettings):(b=a,a=p.ajaxSettings),cB(a,b),a},ajaxSettings:{url:ck,isLocal:cn.test(cj[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":cx},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":p.parseJSON,"text xml":p.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:cz(cv),ajaxTransport:cz(cw),ajax:function(a,c){function y(a,c,f,i){var k,s,t,u,w,y=c;if(v===2)return;v=2,h&&clearTimeout(h),g=b,e=i||"",x.readyState=a>0?4:0,f&&(u=cC(l,x,f));if(a>=200&&a<300||a===304)l.ifModified&&(w=x.getResponseHeader("Last-Modified"),w&&(p.lastModified[d]=w),w=x.getResponseHeader("Etag"),w&&(p.etag[d]=w)),a===304?(y="notmodified",k=!0):(k=cD(l,u),y=k.state,s=k.data,t=k.error,k=!t);else{t=y;if(!y||a)y="error",a<0&&(a=0)}x.status=a,x.statusText=(c||y)+"",k?o.resolveWith(m,[s,y,x]):o.rejectWith(m,[x,y,t]),x.statusCode(r),r=b,j&&n.trigger("ajax"+(k?"Success":"Error"),[x,l,k?s:t]),q.fireWith(m,[x,y]),j&&(n.trigger("ajaxComplete",[x,l]),--p.active||p.event.trigger("ajaxStop"))}typeof a=="object"&&(c=a,a=b),c=c||{};var d,e,f,g,h,i,j,k,l=p.ajaxSetup({},c),m=l.context||l,n=m!==l&&(m.nodeType||m instanceof p)?p(m):p.event,o=p.Deferred(),q=p.Callbacks("once memory"),r=l.statusCode||{},t={},u={},v=0,w="canceled",x={readyState:0,setRequestHeader:function(a,b){if(!v){var c=a.toLowerCase();a=u[c]=u[c]||a,t[a]=b}return this},getAllResponseHeaders:function(){return v===2?e:null},getResponseHeader:function(a){var c;if(v===2){if(!f){f={};while(c=cm.exec(e))f[c[1].toLowerCase()]=c[2]}c=f[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){return v||(l.mimeType=a),this},abort:function(a){return a=a||w,g&&g.abort(a),y(0,a),this}};o.promise(x),x.success=x.done,x.error=x.fail,x.complete=q.add,x.statusCode=function(a){if(a){var b;if(v<2)for(b in a)r[b]=[r[b],a[b]];else b=a[x.status],x.always(b)}return this},l.url=((a||l.url)+"").replace(cl,"").replace(cp,cj[1]+"//"),l.dataTypes=p.trim(l.dataType||"*").toLowerCase().split(s),l.crossDomain==null&&(i=ct.exec(l.url.toLowerCase())||!1,l.crossDomain=i&&i.join(":")+(i[3]?"":i[1]==="http:"?80:443)!==cj.join(":")+(cj[3]?"":cj[1]==="http:"?80:443)),l.data&&l.processData&&typeof l.data!="string"&&(l.data=p.param(l.data,l.traditional)),cA(cv,l,c,x);if(v===2)return x;j=l.global,l.type=l.type.toUpperCase(),l.hasContent=!co.test(l.type),j&&p.active++===0&&p.event.trigger("ajaxStart");if(!l.hasContent){l.data&&(l.url+=(cq.test(l.url)?"&":"?")+l.data,delete l.data),d=l.url;if(l.cache===!1){var z=p.now(),A=l.url.replace(cs,"$1_="+z);l.url=A+(A===l.url?(cq.test(l.url)?"&":"?")+"_="+z:"")}}(l.data&&l.hasContent&&l.contentType!==!1||c.contentType)&&x.setRequestHeader("Content-Type",l.contentType),l.ifModified&&(d=d||l.url,p.lastModified[d]&&x.setRequestHeader("If-Modified-Since",p.lastModified[d]),p.etag[d]&&x.setRequestHeader("If-None-Match",p.etag[d])),x.setRequestHeader("Accept",l.dataTypes[0]&&l.accepts[l.dataTypes[0]]?l.accepts[l.dataTypes[0]]+(l.dataTypes[0]!=="*"?", "+cx+"; q=0.01":""):l.accepts["*"]);for(k in l.headers)x.setRequestHeader(k,l.headers[k]);if(!l.beforeSend||l.beforeSend.call(m,x,l)!==!1&&v!==2){w="abort";for(k in{success:1,error:1,complete:1})x[k](l[k]);g=cA(cw,l,c,x);if(!g)y(-1,"No Transport");else{x.readyState=1,j&&n.trigger("ajaxSend",[x,l]),l.async&&l.timeout>0&&(h=setTimeout(function(){x.abort("timeout")},l.timeout));try{v=1,g.send(t,y)}catch(B){if(v<2)y(-1,B);else throw B}}return x}return x.abort()},active:0,lastModified:{},etag:{}});var cE=[],cF=/\?/,cG=/(=)\?(?=&|$)|\?\?/,cH=p.now();p.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=cE.pop()||p.expando+"_"+cH++;return this[a]=!0,a}}),p.ajaxPrefilter("json jsonp",function(c,d,e){var f,g,h,i=c.data,j=c.url,k=c.jsonp!==!1,l=k&&cG.test(j),m=k&&!l&&typeof i=="string"&&!(c.contentType||"").indexOf("application/x-www-form-urlencoded")&&cG.test(i);if(c.dataTypes[0]==="jsonp"||l||m)return f=c.jsonpCallback=p.isFunction(c.jsonpCallback)?c.jsonpCallback():c.jsonpCallback,g=a[f],l?c.url=j.replace(cG,"$1"+f):m?c.data=i.replace(cG,"$1"+f):k&&(c.url+=(cF.test(j)?"&":"?")+c.jsonp+"="+f),c.converters["script json"]=function(){return h||p.error(f+" was not called"),h[0]},c.dataTypes[0]="json",a[f]=function(){h=arguments},e.always(function(){a[f]=g,c[f]&&(c.jsonpCallback=d.jsonpCallback,cE.push(f)),h&&p.isFunction(g)&&g(h[0]),h=g=b}),"script"}),p.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){return p.globalEval(a),a}}}),p.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),p.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=e.head||e.getElementsByTagName("head")[0]||e.documentElement;return{send:function(f,g){c=e.createElement("script"),c.async="async",a.scriptCharset&&(c.charset=a.scriptCharset),c.src=a.url,c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||g(200,"success")},d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var cI,cJ=a.ActiveXObject?function(){for(var a in cI)cI[a](0,1)}:!1,cK=0;p.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&cL()||cM()}:cL,function(a){p.extend(p.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(p.ajaxSettings.xhr()),p.support.ajax&&p.ajaxTransport(function(c){if(!c.crossDomain||p.support.cors){var d;return{send:function(e,f){var g,h,i=c.xhr();c.username?i.open(c.type,c.url,c.async,c.username,c.password):i.open(c.type,c.url,c.async);if(c.xhrFields)for(h in c.xhrFields)i[h]=c.xhrFields[h];c.mimeType&&i.overrideMimeType&&i.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(h in e)i.setRequestHeader(h,e[h])}catch(j){}i.send(c.hasContent&&c.data||null),d=function(a,e){var h,j,k,l,m;try{if(d&&(e||i.readyState===4)){d=b,g&&(i.onreadystatechange=p.noop,cJ&&delete cI[g]);if(e)i.readyState!==4&&i.abort();else{h=i.status,k=i.getAllResponseHeaders(),l={},m=i.responseXML,m&&m.documentElement&&(l.xml=m);try{l.text=i.responseText}catch(a){}try{j=i.statusText}catch(n){j=""}!h&&c.isLocal&&!c.crossDomain?h=l.text?200:404:h===1223&&(h=204)}}}catch(o){e||f(-1,o)}l&&f(h,j,l,k)},c.async?i.readyState===4?setTimeout(d,0):(g=++cK,cJ&&(cI||(cI={},p(a).unload(cJ)),cI[g]=d),i.onreadystatechange=d):d()},abort:function(){d&&d(0,1)}}}});var cN,cO,cP=/^(?:toggle|show|hide)$/,cQ=new RegExp("^(?:([-+])=|)("+q+")([a-z%]*)$","i"),cR=/queueHooks$/,cS=[cY],cT={"*":[function(a,b){var c,d,e=this.createTween(a,b),f=cQ.exec(b),g=e.cur(),h=+g||0,i=1,j=20;if(f){c=+f[2],d=f[3]||(p.cssNumber[a]?"":"px");if(d!=="px"&&h){h=p.css(e.elem,a,!0)||c||1;do i=i||".5",h=h/i,p.style(e.elem,a,h+d);while(i!==(i=e.cur()/g)&&i!==1&&--j)}e.unit=d,e.start=h,e.end=f[1]?h+(f[1]+1)*c:c}return e}]};p.Animation=p.extend(cW,{tweener:function(a,b){p.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");var c,d=0,e=a.length;for(;d<e;d++)c=a[d],cT[c]=cT[c]||[],cT[c].unshift(b)},prefilter:function(a,b){b?cS.unshift(a):cS.push(a)}}),p.Tween=cZ,cZ.prototype={constructor:cZ,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(p.cssNumber[c]?"":"px")},cur:function(){var a=cZ.propHooks[this.prop];return a&&a.get?a.get(this):cZ.propHooks._default.get(this)},run:function(a){var b,c=cZ.propHooks[this.prop];return this.options.duration?this.pos=b=p.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):cZ.propHooks._default.set(this),this}},cZ.prototype.init.prototype=cZ.prototype,cZ.propHooks={_default:{get:function(a){var b;return a.elem[a.prop]==null||!!a.elem.style&&a.elem.style[a.prop]!=null?(b=p.css(a.elem,a.prop,!1,""),!b||b==="auto"?0:b):a.elem[a.prop]},set:function(a){p.fx.step[a.prop]?p.fx.step[a.prop](a):a.elem.style&&(a.elem.style[p.cssProps[a.prop]]!=null||p.cssHooks[a.prop])?p.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},cZ.propHooks.scrollTop=cZ.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},p.each(["toggle","show","hide"],function(a,b){var c=p.fn[b];p.fn[b]=function(d,e,f){return d==null||typeof d=="boolean"||!a&&p.isFunction(d)&&p.isFunction(e)?c.apply(this,arguments):this.animate(c$(b,!0),d,e,f)}}),p.fn.extend({fadeTo:function(a,b,c,d){return this.filter(bZ).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=p.isEmptyObject(a),f=p.speed(b,c,d),g=function(){var b=cW(this,p.extend({},a),f);e&&b.stop(!0)};return e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,c,d){var e=function(a){var b=a.stop;delete a.stop,b(d)};return typeof a!="string"&&(d=c,c=a,a=b),c&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,c=a!=null&&a+"queueHooks",f=p.timers,g=p._data(this);if(c)g[c]&&g[c].stop&&e(g[c]);else for(c in g)g[c]&&g[c].stop&&cR.test(c)&&e(g[c]);for(c=f.length;c--;)f[c].elem===this&&(a==null||f[c].queue===a)&&(f[c].anim.stop(d),b=!1,f.splice(c,1));(b||!d)&&p.dequeue(this,a)})}}),p.each({slideDown:c$("show"),slideUp:c$("hide"),slideToggle:c$("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){p.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),p.speed=function(a,b,c){var d=a&&typeof a=="object"?p.extend({},a):{complete:c||!c&&b||p.isFunction(a)&&a,duration:a,easing:c&&b||b&&!p.isFunction(b)&&b};d.duration=p.fx.off?0:typeof d.duration=="number"?d.duration:d.duration in p.fx.speeds?p.fx.speeds[d.duration]:p.fx.speeds._default;if(d.queue==null||d.queue===!0)d.queue="fx";return d.old=d.complete,d.complete=function(){p.isFunction(d.old)&&d.old.call(this),d.queue&&p.dequeue(this,d.queue)},d},p.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},p.timers=[],p.fx=cZ.prototype.init,p.fx.tick=function(){var a,b=p.timers,c=0;for(;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||p.fx.stop()},p.fx.timer=function(a){a()&&p.timers.push(a)&&!cO&&(cO=setInterval(p.fx.tick,p.fx.interval))},p.fx.interval=13,p.fx.stop=function(){clearInterval(cO),cO=null},p.fx.speeds={slow:600,fast:200,_default:400},p.fx.step={},p.expr&&p.expr.filters&&(p.expr.filters.animated=function(a){return p.grep(p.timers,function(b){return a===b.elem}).length});var c_=/^(?:body|html)$/i;p.fn.offset=function(a){if(arguments.length)return a===b?this:this.each(function(b){p.offset.setOffset(this,a,b)});var c,d,e,f,g,h,i,j={top:0,left:0},k=this[0],l=k&&k.ownerDocument;if(!l)return;return(d=l.body)===k?p.offset.bodyOffset(k):(c=l.documentElement,p.contains(c,k)?(typeof k.getBoundingClientRect!="undefined"&&(j=k.getBoundingClientRect()),e=da(l),f=c.clientTop||d.clientTop||0,g=c.clientLeft||d.clientLeft||0,h=e.pageYOffset||c.scrollTop,i=e.pageXOffset||c.scrollLeft,{top:j.top+h-f,left:j.left+i-g}):j)},p.offset={bodyOffset:function(a){var b=a.offsetTop,c=a.offsetLeft;return p.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(p.css(a,"marginTop"))||0,c+=parseFloat(p.css(a,"marginLeft"))||0),{top:b,left:c}},setOffset:function(a,b,c){var d=p.css(a,"position");d==="static"&&(a.style.position="relative");var e=p(a),f=e.offset(),g=p.css(a,"top"),h=p.css(a,"left"),i=(d==="absolute"||d==="fixed")&&p.inArray("auto",[g,h])>-1,j={},k={},l,m;i?(k=e.position(),l=k.top,m=k.left):(l=parseFloat(g)||0,m=parseFloat(h)||0),p.isFunction(b)&&(b=b.call(a,c,f)),b.top!=null&&(j.top=b.top-f.top+l),b.left!=null&&(j.left=b.left-f.left+m),"using"in b?b.using.call(a,j):e.css(j)}},p.fn.extend({position:function(){if(!this[0])return;var a=this[0],b=this.offsetParent(),c=this.offset(),d=c_.test(b[0].nodeName)?{top:0,left:0}:b.offset();return c.top-=parseFloat(p.css(a,"marginTop"))||0,c.left-=parseFloat(p.css(a,"marginLeft"))||0,d.top+=parseFloat(p.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(p.css(b[0],"borderLeftWidth"))||0,{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||e.body;while(a&&!c_.test(a.nodeName)&&p.css(a,"position")==="static")a=a.offsetParent;return a||e.body})}}),p.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,c){var d=/Y/.test(c);p.fn[a]=function(e){return p.access(this,function(a,e,f){var g=da(a);if(f===b)return g?c in g?g[c]:g.document.documentElement[e]:a[e];g?g.scrollTo(d?p(g).scrollLeft():f,d?f:p(g).scrollTop()):a[e]=f},a,e,arguments.length,null)}}),p.each({Height:"height",Width:"width"},function(a,c){p.each({padding:"inner"+a,content:c,"":"outer"+a},function(d,e){p.fn[e]=function(e,f){var g=arguments.length&&(d||typeof e!="boolean"),h=d||(e===!0||f===!0?"margin":"border");return p.access(this,function(c,d,e){var f;return p.isWindow(c)?c.document.documentElement["client"+a]:c.nodeType===9?(f=c.documentElement,Math.max(c.body["scroll"+a],f["scroll"+a],c.body["offset"+a],f["offset"+a],f["client"+a])):e===b?p.css(c,d,e,h):p.style(c,d,e,h)},c,g?e:b,g,null)}})}),a.jQuery=a.$=p,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return p})})(window);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
706 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
707
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
708 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
709 (function(b){b.color={};b.color.make=function(d,e,g,f){var c={};c.r=d||0;c.g=e||0;c.b=g||0;c.a=f!=null?f:1;c.add=function(h,j){for(var k=0;k<h.length;++k){c[h.charAt(k)]+=j}return c.normalize()};c.scale=function(h,j){for(var k=0;k<h.length;++k){c[h.charAt(k)]*=j}return c.normalize()};c.toString=function(){if(c.a>=1){return"rgb("+[c.r,c.g,c.b].join(",")+")"}else{return"rgba("+[c.r,c.g,c.b,c.a].join(",")+")"}};c.normalize=function(){function h(k,j,l){return j<k?k:(j>l?l:j)}c.r=h(0,parseInt(c.r),255);c.g=h(0,parseInt(c.g),255);c.b=h(0,parseInt(c.b),255);c.a=h(0,c.a,1);return c};c.clone=function(){return b.color.make(c.r,c.b,c.g,c.a)};return c.normalize()};b.color.extract=function(d,e){var c;do{c=d.css(e).toLowerCase();if(c!=""&&c!="transparent"){break}d=d.parent()}while(!b.nodeName(d.get(0),"body"));if(c=="rgba(0, 0, 0, 0)"){c="transparent"}return b.color.parse(c)};b.color.parse=function(c){var d,f=b.color.make;if(d=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c)){return f(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10))}if(d=/rgba\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c)){return f(parseInt(d[1],10),parseInt(d[2],10),parseInt(d[3],10),parseFloat(d[4]))}if(d=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c)){return f(parseFloat(d[1])*2.55,parseFloat(d[2])*2.55,parseFloat(d[3])*2.55)}if(d=/rgba\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\s*\)/.exec(c)){return f(parseFloat(d[1])*2.55,parseFloat(d[2])*2.55,parseFloat(d[3])*2.55,parseFloat(d[4]))}if(d=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c)){return f(parseInt(d[1],16),parseInt(d[2],16),parseInt(d[3],16))}if(d=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c)){return f(parseInt(d[1]+d[1],16),parseInt(d[2]+d[2],16),parseInt(d[3]+d[3],16))}var e=b.trim(c).toLowerCase();if(e=="transparent"){return f(255,255,255,0)}else{d=a[e]||[0,0,0];return f(d[0],d[1],d[2])}};var a={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]}})(jQuery);(function(c){function b(av,ai,J,af){var Q=[],O={colors:["#edc240","#afd8f8","#cb4b4b","#4da74d","#9440ed"],legend:{show:true,noColumns:1,labelFormatter:null,labelBoxBorderColor:"#ccc",container:null,position:"ne",margin:5,backgroundColor:null,backgroundOpacity:0.85},xaxis:{show:null,position:"bottom",mode:null,color:null,tickColor:null,transform:null,inverseTransform:null,min:null,max:null,autoscaleMargin:null,ticks:null,tickFormatter:null,labelWidth:null,labelHeight:null,reserveSpace:null,tickLength:null,alignTicksWithAxis:null,tickDecimals:null,tickSize:null,minTickSize:null,monthNames:null,timeformat:null,twelveHourClock:false},yaxis:{autoscaleMargin:0.02,position:"left"},xaxes:[],yaxes:[],series:{points:{show:false,radius:3,lineWidth:2,fill:true,fillColor:"#ffffff",symbol:"circle"},lines:{lineWidth:2,fill:false,fillColor:null,steps:false},bars:{show:false,lineWidth:2,barWidth:1,fill:true,fillColor:null,align:"left",horizontal:false},shadowSize:3},grid:{show:true,aboveData:false,color:"#545454",backgroundColor:null,borderColor:null,tickColor:null,labelMargin:5,axisMargin:8,borderWidth:2,minBorderMargin:null,markings:null,markingsColor:"#f4f4f4",markingsLineWidth:2,clickable:false,hoverable:false,autoHighlight:true,mouseActiveRadius:10},hooks:{}},az=null,ad=null,y=null,H=null,A=null,p=[],aw=[],q={left:0,right:0,top:0,bottom:0},G=0,I=0,h=0,w=0,ak={processOptions:[],processRawData:[],processDatapoints:[],drawSeries:[],draw:[],bindEvents:[],drawOverlay:[],shutdown:[]},aq=this;aq.setData=aj;aq.setupGrid=t;aq.draw=W;aq.getPlaceholder=function(){return av};aq.getCanvas=function(){return az};aq.getPlotOffset=function(){return q};aq.width=function(){return h};aq.height=function(){return w};aq.offset=function(){var aB=y.offset();aB.left+=q.left;aB.top+=q.top;return aB};aq.getData=function(){return Q};aq.getAxes=function(){var aC={},aB;c.each(p.concat(aw),function(aD,aE){if(aE){aC[aE.direction+(aE.n!=1?aE.n:"")+"axis"]=aE}});return aC};aq.getXAxes=function(){return p};aq.getYAxes=function(){return aw};aq.c2p=C;aq.p2c=ar;aq.getOptions=function(){return O};aq.highlight=x;aq.unhighlight=T;aq.triggerRedrawOverlay=f;aq.pointOffset=function(aB){return{left:parseInt(p[aA(aB,"x")-1].p2c(+aB.x)+q.left),top:parseInt(aw[aA(aB,"y")-1].p2c(+aB.y)+q.top)}};aq.shutdown=ag;aq.resize=function(){B();g(az);g(ad)};aq.hooks=ak;F(aq);Z(J);X();aj(ai);t();W();ah();function an(aD,aB){aB=[aq].concat(aB);for(var aC=0;aC<aD.length;++aC){aD[aC].apply(this,aB)}}function F(){for(var aB=0;aB<af.length;++aB){var aC=af[aB];aC.init(aq);if(aC.options){c.extend(true,O,aC.options)}}}function Z(aC){var aB;c.extend(true,O,aC);if(O.xaxis.color==null){O.xaxis.color=O.grid.color}if(O.yaxis.color==null){O.yaxis.color=O.grid.color}if(O.xaxis.tickColor==null){O.xaxis.tickColor=O.grid.tickColor}if(O.yaxis.tickColor==null){O.yaxis.tickColor=O.grid.tickColor}if(O.grid.borderColor==null){O.grid.borderColor=O.grid.color}if(O.grid.tickColor==null){O.grid.tickColor=c.color.parse(O.grid.color).scale("a",0.22).toString()}for(aB=0;aB<Math.max(1,O.xaxes.length);++aB){O.xaxes[aB]=c.extend(true,{},O.xaxis,O.xaxes[aB])}for(aB=0;aB<Math.max(1,O.yaxes.length);++aB){O.yaxes[aB]=c.extend(true,{},O.yaxis,O.yaxes[aB])}if(O.xaxis.noTicks&&O.xaxis.ticks==null){O.xaxis.ticks=O.xaxis.noTicks}if(O.yaxis.noTicks&&O.yaxis.ticks==null){O.yaxis.ticks=O.yaxis.noTicks}if(O.x2axis){O.xaxes[1]=c.extend(true,{},O.xaxis,O.x2axis);O.xaxes[1].position="top"}if(O.y2axis){O.yaxes[1]=c.extend(true,{},O.yaxis,O.y2axis);O.yaxes[1].position="right"}if(O.grid.coloredAreas){O.grid.markings=O.grid.coloredAreas}if(O.grid.coloredAreasColor){O.grid.markingsColor=O.grid.coloredAreasColor}if(O.lines){c.extend(true,O.series.lines,O.lines)}if(O.points){c.extend(true,O.series.points,O.points)}if(O.bars){c.extend(true,O.series.bars,O.bars)}if(O.shadowSize!=null){O.series.shadowSize=O.shadowSize}for(aB=0;aB<O.xaxes.length;++aB){V(p,aB+1).options=O.xaxes[aB]}for(aB=0;aB<O.yaxes.length;++aB){V(aw,aB+1).options=O.yaxes[aB]}for(var aD in ak){if(O.hooks[aD]&&O.hooks[aD].length){ak[aD]=ak[aD].concat(O.hooks[aD])}}an(ak.processOptions,[O])}function aj(aB){Q=Y(aB);ax();z()}function Y(aE){var aC=[];for(var aB=0;aB<aE.length;++aB){var aD=c.extend(true,{},O.series);if(aE[aB].data!=null){aD.data=aE[aB].data;delete aE[aB].data;c.extend(true,aD,aE[aB]);aE[aB].data=aD.data}else{aD.data=aE[aB]}aC.push(aD)}return aC}function aA(aC,aD){var aB=aC[aD+"axis"];if(typeof aB=="object"){aB=aB.n}if(typeof aB!="number"){aB=1}return aB}function m(){return c.grep(p.concat(aw),function(aB){return aB})}function C(aE){var aC={},aB,aD;for(aB=0;aB<p.length;++aB){aD=p[aB];if(aD&&aD.used){aC["x"+aD.n]=aD.c2p(aE.left)}}for(aB=0;aB<aw.length;++aB){aD=aw[aB];if(aD&&aD.used){aC["y"+aD.n]=aD.c2p(aE.top)}}if(aC.x1!==undefined){aC.x=aC.x1}if(aC.y1!==undefined){aC.y=aC.y1}return aC}function ar(aF){var aD={},aC,aE,aB;for(aC=0;aC<p.length;++aC){aE=p[aC];if(aE&&aE.used){aB="x"+aE.n;if(aF[aB]==null&&aE.n==1){aB="x"}if(aF[aB]!=null){aD.left=aE.p2c(aF[aB]);break}}}for(aC=0;aC<aw.length;++aC){aE=aw[aC];if(aE&&aE.used){aB="y"+aE.n;if(aF[aB]==null&&aE.n==1){aB="y"}if(aF[aB]!=null){aD.top=aE.p2c(aF[aB]);break}}}return aD}function V(aC,aB){if(!aC[aB-1]){aC[aB-1]={n:aB,direction:aC==p?"x":"y",options:c.extend(true,{},aC==p?O.xaxis:O.yaxis)}}return aC[aB-1]}function ax(){var aG;var aM=Q.length,aB=[],aE=[];for(aG=0;aG<Q.length;++aG){var aJ=Q[aG].color;if(aJ!=null){--aM;if(typeof aJ=="number"){aE.push(aJ)}else{aB.push(c.color.parse(Q[aG].color))}}}for(aG=0;aG<aE.length;++aG){aM=Math.max(aM,aE[aG]+1)}var aC=[],aF=0;aG=0;while(aC.length<aM){var aI;if(O.colors.length==aG){aI=c.color.make(100,100,100)}else{aI=c.color.parse(O.colors[aG])}var aD=aF%2==1?-1:1;aI.scale("rgb",1+aD*Math.ceil(aF/2)*0.2);aC.push(aI);++aG;if(aG>=O.colors.length){aG=0;++aF}}var aH=0,aN;for(aG=0;aG<Q.length;++aG){aN=Q[aG];if(aN.color==null){aN.color=aC[aH].toString();++aH}else{if(typeof aN.color=="number"){aN.color=aC[aN.color].toString()}}if(aN.lines.show==null){var aL,aK=true;for(aL in aN){if(aN[aL]&&aN[aL].show){aK=false;break}}if(aK){aN.lines.show=true}}aN.xaxis=V(p,aA(aN,"x"));aN.yaxis=V(aw,aA(aN,"y"))}}function z(){var aO=Number.POSITIVE_INFINITY,aI=Number.NEGATIVE_INFINITY,aB=Number.MAX_VALUE,aU,aS,aR,aN,aD,aJ,aT,aP,aH,aG,aC,a0,aX,aL;function aF(a3,a2,a1){if(a2<a3.datamin&&a2!=-aB){a3.datamin=a2}if(a1>a3.datamax&&a1!=aB){a3.datamax=a1}}c.each(m(),function(a1,a2){a2.datamin=aO;a2.datamax=aI;a2.used=false});for(aU=0;aU<Q.length;++aU){aJ=Q[aU];aJ.datapoints={points:[]};an(ak.processRawData,[aJ,aJ.data,aJ.datapoints])}for(aU=0;aU<Q.length;++aU){aJ=Q[aU];var aZ=aJ.data,aW=aJ.datapoints.format;if(!aW){aW=[];aW.push({x:true,number:true,required:true});aW.push({y:true,number:true,required:true});if(aJ.bars.show||(aJ.lines.show&&aJ.lines.fill)){aW.push({y:true,number:true,required:false,defaultValue:0});if(aJ.bars.horizontal){delete aW[aW.length-1].y;aW[aW.length-1].x=true}}aJ.datapoints.format=aW}if(aJ.datapoints.pointsize!=null){continue}aJ.datapoints.pointsize=aW.length;aP=aJ.datapoints.pointsize;aT=aJ.datapoints.points;insertSteps=aJ.lines.show&&aJ.lines.steps;aJ.xaxis.used=aJ.yaxis.used=true;for(aS=aR=0;aS<aZ.length;++aS,aR+=aP){aL=aZ[aS];var aE=aL==null;if(!aE){for(aN=0;aN<aP;++aN){a0=aL[aN];aX=aW[aN];if(aX){if(aX.number&&a0!=null){a0=+a0;if(isNaN(a0)){a0=null}else{if(a0==Infinity){a0=aB}else{if(a0==-Infinity){a0=-aB}}}}if(a0==null){if(aX.required){aE=true}if(aX.defaultValue!=null){a0=aX.defaultValue}}}aT[aR+aN]=a0}}if(aE){for(aN=0;aN<aP;++aN){a0=aT[aR+aN];if(a0!=null){aX=aW[aN];if(aX.x){aF(aJ.xaxis,a0,a0)}if(aX.y){aF(aJ.yaxis,a0,a0)}}aT[aR+aN]=null}}else{if(insertSteps&&aR>0&&aT[aR-aP]!=null&&aT[aR-aP]!=aT[aR]&&aT[aR-aP+1]!=aT[aR+1]){for(aN=0;aN<aP;++aN){aT[aR+aP+aN]=aT[aR+aN]}aT[aR+1]=aT[aR-aP+1];aR+=aP}}}}for(aU=0;aU<Q.length;++aU){aJ=Q[aU];an(ak.processDatapoints,[aJ,aJ.datapoints])}for(aU=0;aU<Q.length;++aU){aJ=Q[aU];aT=aJ.datapoints.points,aP=aJ.datapoints.pointsize;var aK=aO,aQ=aO,aM=aI,aV=aI;for(aS=0;aS<aT.length;aS+=aP){if(aT[aS]==null){continue}for(aN=0;aN<aP;++aN){a0=aT[aS+aN];aX=aW[aN];if(!aX||a0==aB||a0==-aB){continue}if(aX.x){if(a0<aK){aK=a0}if(a0>aM){aM=a0}}if(aX.y){if(a0<aQ){aQ=a0}if(a0>aV){aV=a0}}}}if(aJ.bars.show){var aY=aJ.bars.align=="left"?0:-aJ.bars.barWidth/2;if(aJ.bars.horizontal){aQ+=aY;aV+=aY+aJ.bars.barWidth}else{aK+=aY;aM+=aY+aJ.bars.barWidth}}aF(aJ.xaxis,aK,aM);aF(aJ.yaxis,aQ,aV)}c.each(m(),function(a1,a2){if(a2.datamin==aO){a2.datamin=null}if(a2.datamax==aI){a2.datamax=null}})}function j(aB,aC){var aD=document.createElement("canvas");aD.className=aC;aD.width=G;aD.height=I;if(!aB){c(aD).css({position:"absolute",left:0,top:0})}c(aD).appendTo(av);if(!aD.getContext){aD=window.G_vmlCanvasManager.initElement(aD)}aD.getContext("2d").save();return aD}function B(){G=av.width();I=av.height();if(G<=0||I<=0){throw"Invalid dimensions for plot, width = "+G+", height = "+I}}function g(aC){if(aC.width!=G){aC.width=G}if(aC.height!=I){aC.height=I}var aB=aC.getContext("2d");aB.restore();aB.save()}function X(){var aC,aB=av.children("canvas.base"),aD=av.children("canvas.overlay");if(aB.length==0||aD==0){av.html("");av.css({padding:0});if(av.css("position")=="static"){av.css("position","relative")}B();az=j(true,"base");ad=j(false,"overlay");aC=false}else{az=aB.get(0);ad=aD.get(0);aC=true}H=az.getContext("2d");A=ad.getContext("2d");y=c([ad,az]);if(aC){av.data("plot").shutdown();aq.resize();A.clearRect(0,0,G,I);y.unbind();av.children().not([az,ad]).remove()}av.data("plot",aq)}function ah(){if(O.grid.hoverable){y.mousemove(aa);y.mouseleave(l)}if(O.grid.clickable){y.click(R)}an(ak.bindEvents,[y])}function ag(){if(M){clearTimeout(M)}y.unbind("mousemove",aa);y.unbind("mouseleave",l);y.unbind("click",R);an(ak.shutdown,[y])}function r(aG){function aC(aH){return aH}var aF,aB,aD=aG.options.transform||aC,aE=aG.options.inverseTransform;if(aG.direction=="x"){aF=aG.scale=h/Math.abs(aD(aG.max)-aD(aG.min));aB=Math.min(aD(aG.max),aD(aG.min))}else{aF=aG.scale=w/Math.abs(aD(aG.max)-aD(aG.min));aF=-aF;aB=Math.max(aD(aG.max),aD(aG.min))}if(aD==aC){aG.p2c=function(aH){return(aH-aB)*aF}}else{aG.p2c=function(aH){return(aD(aH)-aB)*aF}}if(!aE){aG.c2p=function(aH){return aB+aH/aF}}else{aG.c2p=function(aH){return aE(aB+aH/aF)}}}function L(aD){var aB=aD.options,aF,aJ=aD.ticks||[],aI=[],aE,aK=aB.labelWidth,aG=aB.labelHeight,aC;function aH(aM,aL){return c('<div style="position:absolute;top:-10000px;'+aL+'font-size:smaller"><div class="'+aD.direction+"Axis "+aD.direction+aD.n+'Axis">'+aM.join("")+"</div></div>").appendTo(av)}if(aD.direction=="x"){if(aK==null){aK=Math.floor(G/(aJ.length>0?aJ.length:1))}if(aG==null){aI=[];for(aF=0;aF<aJ.length;++aF){aE=aJ[aF].label;if(aE){aI.push('<div class="tickLabel" style="float:left;width:'+aK+'px">'+aE+"</div>")}}if(aI.length>0){aI.push('<div style="clear:left"></div>');aC=aH(aI,"width:10000px;");aG=aC.height();aC.remove()}}}else{if(aK==null||aG==null){for(aF=0;aF<aJ.length;++aF){aE=aJ[aF].label;if(aE){aI.push('<div class="tickLabel">'+aE+"</div>")}}if(aI.length>0){aC=aH(aI,"");if(aK==null){aK=aC.children().width()}if(aG==null){aG=aC.find("div.tickLabel").height()}aC.remove()}}}if(aK==null){aK=0}if(aG==null){aG=0}aD.labelWidth=aK;aD.labelHeight=aG}function au(aD){var aC=aD.labelWidth,aL=aD.labelHeight,aH=aD.options.position,aF=aD.options.tickLength,aG=O.grid.axisMargin,aJ=O.grid.labelMargin,aK=aD.direction=="x"?p:aw,aE;var aB=c.grep(aK,function(aN){return aN&&aN.options.position==aH&&aN.reserveSpace});if(c.inArray(aD,aB)==aB.length-1){aG=0}if(aF==null){aF="full"}var aI=c.grep(aK,function(aN){return aN&&aN.reserveSpace});var aM=c.inArray(aD,aI)==0;if(!aM&&aF=="full"){aF=5}if(!isNaN(+aF)){aJ+=+aF}if(aD.direction=="x"){aL+=aJ;if(aH=="bottom"){q.bottom+=aL+aG;aD.box={top:I-q.bottom,height:aL}}else{aD.box={top:q.top+aG,height:aL};q.top+=aL+aG}}else{aC+=aJ;if(aH=="left"){aD.box={left:q.left+aG,width:aC};q.left+=aC+aG}else{q.right+=aC+aG;aD.box={left:G-q.right,width:aC}}}aD.position=aH;aD.tickLength=aF;aD.box.padding=aJ;aD.innermost=aM}function U(aB){if(aB.direction=="x"){aB.box.left=q.left;aB.box.width=h}else{aB.box.top=q.top;aB.box.height=w}}function t(){var aC,aE=m();c.each(aE,function(aF,aG){aG.show=aG.options.show;if(aG.show==null){aG.show=aG.used}aG.reserveSpace=aG.show||aG.options.reserveSpace;n(aG)});allocatedAxes=c.grep(aE,function(aF){return aF.reserveSpace});q.left=q.right=q.top=q.bottom=0;if(O.grid.show){c.each(allocatedAxes,function(aF,aG){S(aG);P(aG);ap(aG,aG.ticks);L(aG)});for(aC=allocatedAxes.length-1;aC>=0;--aC){au(allocatedAxes[aC])}var aD=O.grid.minBorderMargin;if(aD==null){aD=0;for(aC=0;aC<Q.length;++aC){aD=Math.max(aD,Q[aC].points.radius+Q[aC].points.lineWidth/2)}}for(var aB in q){q[aB]+=O.grid.borderWidth;q[aB]=Math.max(aD,q[aB])}}h=G-q.left-q.right;w=I-q.bottom-q.top;c.each(aE,function(aF,aG){r(aG)});if(O.grid.show){c.each(allocatedAxes,function(aF,aG){U(aG)});k()}o()}function n(aE){var aF=aE.options,aD=+(aF.min!=null?aF.min:aE.datamin),aB=+(aF.max!=null?aF.max:aE.datamax),aH=aB-aD;if(aH==0){var aC=aB==0?1:0.01;if(aF.min==null){aD-=aC}if(aF.max==null||aF.min!=null){aB+=aC}}else{var aG=aF.autoscaleMargin;if(aG!=null){if(aF.min==null){aD-=aH*aG;if(aD<0&&aE.datamin!=null&&aE.datamin>=0){aD=0}}if(aF.max==null){aB+=aH*aG;if(aB>0&&aE.datamax!=null&&aE.datamax<=0){aB=0}}}}aE.min=aD;aE.max=aB}function S(aG){var aM=aG.options;var aH;if(typeof aM.ticks=="number"&&aM.ticks>0){aH=aM.ticks}else{aH=0.3*Math.sqrt(aG.direction=="x"?G:I)}var aT=(aG.max-aG.min)/aH,aO,aB,aN,aR,aS,aQ,aI;if(aM.mode=="time"){var aJ={second:1000,minute:60*1000,hour:60*60*1000,day:24*60*60*1000,month:30*24*60*60*1000,year:365.2425*24*60*60*1000};var aK=[[1,"second"],[2,"second"],[5,"second"],[10,"second"],[30,"second"],[1,"minute"],[2,"minute"],[5,"minute"],[10,"minute"],[30,"minute"],[1,"hour"],[2,"hour"],[4,"hour"],[8,"hour"],[12,"hour"],[1,"day"],[2,"day"],[3,"day"],[0.25,"month"],[0.5,"month"],[1,"month"],[2,"month"],[3,"month"],[6,"month"],[1,"year"]];var aC=0;if(aM.minTickSize!=null){if(typeof aM.tickSize=="number"){aC=aM.tickSize}else{aC=aM.minTickSize[0]*aJ[aM.minTickSize[1]]}}for(var aS=0;aS<aK.length-1;++aS){if(aT<(aK[aS][0]*aJ[aK[aS][1]]+aK[aS+1][0]*aJ[aK[aS+1][1]])/2&&aK[aS][0]*aJ[aK[aS][1]]>=aC){break}}aO=aK[aS][0];aN=aK[aS][1];if(aN=="year"){aQ=Math.pow(10,Math.floor(Math.log(aT/aJ.year)/Math.LN10));aI=(aT/aJ.year)/aQ;if(aI<1.5){aO=1}else{if(aI<3){aO=2}else{if(aI<7.5){aO=5}else{aO=10}}}aO*=aQ}aG.tickSize=aM.tickSize||[aO,aN];aB=function(aX){var a2=[],a0=aX.tickSize[0],a3=aX.tickSize[1],a1=new Date(aX.min);var aW=a0*aJ[a3];if(a3=="second"){a1.setUTCSeconds(a(a1.getUTCSeconds(),a0))}if(a3=="minute"){a1.setUTCMinutes(a(a1.getUTCMinutes(),a0))}if(a3=="hour"){a1.setUTCHours(a(a1.getUTCHours(),a0))}if(a3=="month"){a1.setUTCMonth(a(a1.getUTCMonth(),a0))}if(a3=="year"){a1.setUTCFullYear(a(a1.getUTCFullYear(),a0))}a1.setUTCMilliseconds(0);if(aW>=aJ.minute){a1.setUTCSeconds(0)}if(aW>=aJ.hour){a1.setUTCMinutes(0)}if(aW>=aJ.day){a1.setUTCHours(0)}if(aW>=aJ.day*4){a1.setUTCDate(1)}if(aW>=aJ.year){a1.setUTCMonth(0)}var a5=0,a4=Number.NaN,aY;do{aY=a4;a4=a1.getTime();a2.push(a4);if(a3=="month"){if(a0<1){a1.setUTCDate(1);var aV=a1.getTime();a1.setUTCMonth(a1.getUTCMonth()+1);var aZ=a1.getTime();a1.setTime(a4+a5*aJ.hour+(aZ-aV)*a0);a5=a1.getUTCHours();a1.setUTCHours(0)}else{a1.setUTCMonth(a1.getUTCMonth()+a0)}}else{if(a3=="year"){a1.setUTCFullYear(a1.getUTCFullYear()+a0)}else{a1.setTime(a4+aW)}}}while(a4<aX.max&&a4!=aY);return a2};aR=function(aV,aY){var a0=new Date(aV);if(aM.timeformat!=null){return c.plot.formatDate(a0,aM.timeformat,aM.monthNames)}var aW=aY.tickSize[0]*aJ[aY.tickSize[1]];var aX=aY.max-aY.min;var aZ=(aM.twelveHourClock)?" %p":"";if(aW<aJ.minute){fmt="%h:%M:%S"+aZ}else{if(aW<aJ.day){if(aX<2*aJ.day){fmt="%h:%M"+aZ}else{fmt="%b %d %h:%M"+aZ}}else{if(aW<aJ.month){fmt="%b %d"}else{if(aW<aJ.year){if(aX<aJ.year){fmt="%b"}else{fmt="%b %y"}}else{fmt="%y"}}}}return c.plot.formatDate(a0,fmt,aM.monthNames)}}else{var aU=aM.tickDecimals;var aP=-Math.floor(Math.log(aT)/Math.LN10);if(aU!=null&&aP>aU){aP=aU}aQ=Math.pow(10,-aP);aI=aT/aQ;if(aI<1.5){aO=1}else{if(aI<3){aO=2;if(aI>2.25&&(aU==null||aP+1<=aU)){aO=2.5;++aP}}else{if(aI<7.5){aO=5}else{aO=10}}}aO*=aQ;if(aM.minTickSize!=null&&aO<aM.minTickSize){aO=aM.minTickSize}aG.tickDecimals=Math.max(0,aU!=null?aU:aP);aG.tickSize=aM.tickSize||aO;aB=function(aX){var aZ=[];var a0=a(aX.min,aX.tickSize),aW=0,aV=Number.NaN,aY;do{aY=aV;aV=a0+aW*aX.tickSize;aZ.push(aV);++aW}while(aV<aX.max&&aV!=aY);return aZ};aR=function(aV,aW){return aV.toFixed(aW.tickDecimals)}}if(aM.alignTicksWithAxis!=null){var aF=(aG.direction=="x"?p:aw)[aM.alignTicksWithAxis-1];if(aF&&aF.used&&aF!=aG){var aL=aB(aG);if(aL.length>0){if(aM.min==null){aG.min=Math.min(aG.min,aL[0])}if(aM.max==null&&aL.length>1){aG.max=Math.max(aG.max,aL[aL.length-1])}}aB=function(aX){var aY=[],aV,aW;for(aW=0;aW<aF.ticks.length;++aW){aV=(aF.ticks[aW].v-aF.min)/(aF.max-aF.min);aV=aX.min+aV*(aX.max-aX.min);aY.push(aV)}return aY};if(aG.mode!="time"&&aM.tickDecimals==null){var aE=Math.max(0,-Math.floor(Math.log(aT)/Math.LN10)+1),aD=aB(aG);if(!(aD.length>1&&/\..*0$/.test((aD[1]-aD[0]).toFixed(aE)))){aG.tickDecimals=aE}}}}aG.tickGenerator=aB;if(c.isFunction(aM.tickFormatter)){aG.tickFormatter=function(aV,aW){return""+aM.tickFormatter(aV,aW)}}else{aG.tickFormatter=aR}}function P(aF){var aH=aF.options.ticks,aG=[];if(aH==null||(typeof aH=="number"&&aH>0)){aG=aF.tickGenerator(aF)}else{if(aH){if(c.isFunction(aH)){aG=aH({min:aF.min,max:aF.max})}else{aG=aH}}}var aE,aB;aF.ticks=[];for(aE=0;aE<aG.length;++aE){var aC=null;var aD=aG[aE];if(typeof aD=="object"){aB=+aD[0];if(aD.length>1){aC=aD[1]}}else{aB=+aD}if(aC==null){aC=aF.tickFormatter(aB,aF)}if(!isNaN(aB)){aF.ticks.push({v:aB,label:aC})}}}function ap(aB,aC){if(aB.options.autoscaleMargin&&aC.length>0){if(aB.options.min==null){aB.min=Math.min(aB.min,aC[0].v)}if(aB.options.max==null&&aC.length>1){aB.max=Math.max(aB.max,aC[aC.length-1].v)}}}function W(){H.clearRect(0,0,G,I);var aC=O.grid;if(aC.show&&aC.backgroundColor){N()}if(aC.show&&!aC.aboveData){ac()}for(var aB=0;aB<Q.length;++aB){an(ak.drawSeries,[H,Q[aB]]);d(Q[aB])}an(ak.draw,[H]);if(aC.show&&aC.aboveData){ac()}}function D(aB,aI){var aE,aH,aG,aD,aF=m();for(i=0;i<aF.length;++i){aE=aF[i];if(aE.direction==aI){aD=aI+aE.n+"axis";if(!aB[aD]&&aE.n==1){aD=aI+"axis"}if(aB[aD]){aH=aB[aD].from;aG=aB[aD].to;break}}}if(!aB[aD]){aE=aI=="x"?p[0]:aw[0];aH=aB[aI+"1"];aG=aB[aI+"2"]}if(aH!=null&&aG!=null&&aH>aG){var aC=aH;aH=aG;aG=aC}return{from:aH,to:aG,axis:aE}}function N(){H.save();H.translate(q.left,q.top);H.fillStyle=am(O.grid.backgroundColor,w,0,"rgba(255, 255, 255, 0)");H.fillRect(0,0,h,w);H.restore()}function ac(){var aF;H.save();H.translate(q.left,q.top);var aH=O.grid.markings;if(aH){if(c.isFunction(aH)){var aK=aq.getAxes();aK.xmin=aK.xaxis.min;aK.xmax=aK.xaxis.max;aK.ymin=aK.yaxis.min;aK.ymax=aK.yaxis.max;aH=aH(aK)}for(aF=0;aF<aH.length;++aF){var aD=aH[aF],aC=D(aD,"x"),aI=D(aD,"y");if(aC.from==null){aC.from=aC.axis.min}if(aC.to==null){aC.to=aC.axis.max}if(aI.from==null){aI.from=aI.axis.min}if(aI.to==null){aI.to=aI.axis.max}if(aC.to<aC.axis.min||aC.from>aC.axis.max||aI.to<aI.axis.min||aI.from>aI.axis.max){continue}aC.from=Math.max(aC.from,aC.axis.min);aC.to=Math.min(aC.to,aC.axis.max);aI.from=Math.max(aI.from,aI.axis.min);aI.to=Math.min(aI.to,aI.axis.max);if(aC.from==aC.to&&aI.from==aI.to){continue}aC.from=aC.axis.p2c(aC.from);aC.to=aC.axis.p2c(aC.to);aI.from=aI.axis.p2c(aI.from);aI.to=aI.axis.p2c(aI.to);if(aC.from==aC.to||aI.from==aI.to){H.beginPath();H.strokeStyle=aD.color||O.grid.markingsColor;H.lineWidth=aD.lineWidth||O.grid.markingsLineWidth;H.moveTo(aC.from,aI.from);H.lineTo(aC.to,aI.to);H.stroke()}else{H.fillStyle=aD.color||O.grid.markingsColor;H.fillRect(aC.from,aI.to,aC.to-aC.from,aI.from-aI.to)}}}var aK=m(),aM=O.grid.borderWidth;for(var aE=0;aE<aK.length;++aE){var aB=aK[aE],aG=aB.box,aQ=aB.tickLength,aN,aL,aP,aJ;if(!aB.show||aB.ticks.length==0){continue}H.strokeStyle=aB.options.tickColor||c.color.parse(aB.options.color).scale("a",0.22).toString();H.lineWidth=aB.options.lineWidth;if(aB.direction=="x"){aN=0;if(aQ=="full"){aL=(aB.position=="top"?0:w)}else{aL=aG.top-q.top+(aB.position=="top"?aG.height:0)}}else{aL=0;if(aQ=="full"){aN=(aB.position=="left"?0:h)}else{aN=aG.left-q.left+(aB.position=="left"?aG.width:0)}}if(!aB.innermost){H.beginPath();aP=aJ=0;if(aB.direction=="x"){aP=h}else{aJ=w}if(H.lineWidth==1){aN=Math.floor(aN)+0.5;aL=Math.floor(aL)+0.5}H.moveTo(aN,aL);H.lineTo(aN+aP,aL+aJ);H.stroke()}H.beginPath();for(aF=0;aF<aB.ticks.length;++aF){var aO=aB.ticks[aF].v;aP=aJ=0;if(aO<aB.min||aO>aB.max||(aQ=="full"&&aM>0&&(aO==aB.min||aO==aB.max))){continue}if(aB.direction=="x"){aN=aB.p2c(aO);aJ=aQ=="full"?-w:aQ;if(aB.position=="top"){aJ=-aJ}}else{aL=aB.p2c(aO);aP=aQ=="full"?-h:aQ;if(aB.position=="left"){aP=-aP}}if(H.lineWidth==1){if(aB.direction=="x"){aN=Math.floor(aN)+0.5}else{aL=Math.floor(aL)+0.5}}H.moveTo(aN,aL);H.lineTo(aN+aP,aL+aJ)}H.stroke()}if(aM){H.lineWidth=aM;H.strokeStyle=O.grid.borderColor;H.strokeRect(-aM/2,-aM/2,h+aM,w+aM)}H.restore()}function k(){av.find(".tickLabels").remove();var aG=['<div class="tickLabels" style="font-size:smaller">'];var aJ=m();for(var aD=0;aD<aJ.length;++aD){var aC=aJ[aD],aF=aC.box;if(!aC.show){continue}aG.push('<div class="'+aC.direction+"Axis "+aC.direction+aC.n+'Axis" style="color:'+aC.options.color+'">');for(var aE=0;aE<aC.ticks.length;++aE){var aH=aC.ticks[aE];if(!aH.label||aH.v<aC.min||aH.v>aC.max){continue}var aK={},aI;if(aC.direction=="x"){aI="center";aK.left=Math.round(q.left+aC.p2c(aH.v)-aC.labelWidth/2);if(aC.position=="bottom"){aK.top=aF.top+aF.padding}else{aK.bottom=I-(aF.top+aF.height-aF.padding)}}else{aK.top=Math.round(q.top+aC.p2c(aH.v)-aC.labelHeight/2);if(aC.position=="left"){aK.right=G-(aF.left+aF.width-aF.padding);aI="right"}else{aK.left=aF.left+aF.padding;aI="left"}}aK.width=aC.labelWidth;var aB=["position:absolute","text-align:"+aI];for(var aL in aK){aB.push(aL+":"+aK[aL]+"px")}aG.push('<div class="tickLabel" style="'+aB.join(";")+'">'+aH.label+"</div>")}aG.push("</div>")}aG.push("</div>");av.append(aG.join(""))}function d(aB){if(aB.lines.show){at(aB)}if(aB.bars.show){e(aB)}if(aB.points.show){ao(aB)}}function at(aE){function aD(aP,aQ,aI,aU,aT){var aV=aP.points,aJ=aP.pointsize,aN=null,aM=null;H.beginPath();for(var aO=aJ;aO<aV.length;aO+=aJ){var aL=aV[aO-aJ],aS=aV[aO-aJ+1],aK=aV[aO],aR=aV[aO+1];if(aL==null||aK==null){continue}if(aS<=aR&&aS<aT.min){if(aR<aT.min){continue}aL=(aT.min-aS)/(aR-aS)*(aK-aL)+aL;aS=aT.min}else{if(aR<=aS&&aR<aT.min){if(aS<aT.min){continue}aK=(aT.min-aS)/(aR-aS)*(aK-aL)+aL;aR=aT.min}}if(aS>=aR&&aS>aT.max){if(aR>aT.max){continue}aL=(aT.max-aS)/(aR-aS)*(aK-aL)+aL;aS=aT.max}else{if(aR>=aS&&aR>aT.max){if(aS>aT.max){continue}aK=(aT.max-aS)/(aR-aS)*(aK-aL)+aL;aR=aT.max}}if(aL<=aK&&aL<aU.min){if(aK<aU.min){continue}aS=(aU.min-aL)/(aK-aL)*(aR-aS)+aS;aL=aU.min}else{if(aK<=aL&&aK<aU.min){if(aL<aU.min){continue}aR=(aU.min-aL)/(aK-aL)*(aR-aS)+aS;aK=aU.min}}if(aL>=aK&&aL>aU.max){if(aK>aU.max){continue}aS=(aU.max-aL)/(aK-aL)*(aR-aS)+aS;aL=aU.max}else{if(aK>=aL&&aK>aU.max){if(aL>aU.max){continue}aR=(aU.max-aL)/(aK-aL)*(aR-aS)+aS;aK=aU.max}}if(aL!=aN||aS!=aM){H.moveTo(aU.p2c(aL)+aQ,aT.p2c(aS)+aI)}aN=aK;aM=aR;H.lineTo(aU.p2c(aK)+aQ,aT.p2c(aR)+aI)}H.stroke()}function aF(aI,aQ,aP){var aW=aI.points,aV=aI.pointsize,aN=Math.min(Math.max(0,aP.min),aP.max),aX=0,aU,aT=false,aM=1,aL=0,aR=0;while(true){if(aV>0&&aX>aW.length+aV){break}aX+=aV;var aZ=aW[aX-aV],aK=aW[aX-aV+aM],aY=aW[aX],aJ=aW[aX+aM];if(aT){if(aV>0&&aZ!=null&&aY==null){aR=aX;aV=-aV;aM=2;continue}if(aV<0&&aX==aL+aV){H.fill();aT=false;aV=-aV;aM=1;aX=aL=aR+aV;continue}}if(aZ==null||aY==null){continue}if(aZ<=aY&&aZ<aQ.min){if(aY<aQ.min){continue}aK=(aQ.min-aZ)/(aY-aZ)*(aJ-aK)+aK;aZ=aQ.min}else{if(aY<=aZ&&aY<aQ.min){if(aZ<aQ.min){continue}aJ=(aQ.min-aZ)/(aY-aZ)*(aJ-aK)+aK;aY=aQ.min}}if(aZ>=aY&&aZ>aQ.max){if(aY>aQ.max){continue}aK=(aQ.max-aZ)/(aY-aZ)*(aJ-aK)+aK;aZ=aQ.max}else{if(aY>=aZ&&aY>aQ.max){if(aZ>aQ.max){continue}aJ=(aQ.max-aZ)/(aY-aZ)*(aJ-aK)+aK;aY=aQ.max}}if(!aT){H.beginPath();H.moveTo(aQ.p2c(aZ),aP.p2c(aN));aT=true}if(aK>=aP.max&&aJ>=aP.max){H.lineTo(aQ.p2c(aZ),aP.p2c(aP.max));H.lineTo(aQ.p2c(aY),aP.p2c(aP.max));continue}else{if(aK<=aP.min&&aJ<=aP.min){H.lineTo(aQ.p2c(aZ),aP.p2c(aP.min));H.lineTo(aQ.p2c(aY),aP.p2c(aP.min));continue}}var aO=aZ,aS=aY;if(aK<=aJ&&aK<aP.min&&aJ>=aP.min){aZ=(aP.min-aK)/(aJ-aK)*(aY-aZ)+aZ;aK=aP.min}else{if(aJ<=aK&&aJ<aP.min&&aK>=aP.min){aY=(aP.min-aK)/(aJ-aK)*(aY-aZ)+aZ;aJ=aP.min}}if(aK>=aJ&&aK>aP.max&&aJ<=aP.max){aZ=(aP.max-aK)/(aJ-aK)*(aY-aZ)+aZ;aK=aP.max}else{if(aJ>=aK&&aJ>aP.max&&aK<=aP.max){aY=(aP.max-aK)/(aJ-aK)*(aY-aZ)+aZ;aJ=aP.max}}if(aZ!=aO){H.lineTo(aQ.p2c(aO),aP.p2c(aK))}H.lineTo(aQ.p2c(aZ),aP.p2c(aK));H.lineTo(aQ.p2c(aY),aP.p2c(aJ));if(aY!=aS){H.lineTo(aQ.p2c(aY),aP.p2c(aJ));H.lineTo(aQ.p2c(aS),aP.p2c(aJ))}}}H.save();H.translate(q.left,q.top);H.lineJoin="round";var aG=aE.lines.lineWidth,aB=aE.shadowSize;if(aG>0&&aB>0){H.lineWidth=aB;H.strokeStyle="rgba(0,0,0,0.1)";var aH=Math.PI/18;aD(aE.datapoints,Math.sin(aH)*(aG/2+aB/2),Math.cos(aH)*(aG/2+aB/2),aE.xaxis,aE.yaxis);H.lineWidth=aB/2;aD(aE.datapoints,Math.sin(aH)*(aG/2+aB/4),Math.cos(aH)*(aG/2+aB/4),aE.xaxis,aE.yaxis)}H.lineWidth=aG;H.strokeStyle=aE.color;var aC=ae(aE.lines,aE.color,0,w);if(aC){H.fillStyle=aC;aF(aE.datapoints,aE.xaxis,aE.yaxis)}if(aG>0){aD(aE.datapoints,0,0,aE.xaxis,aE.yaxis)}H.restore()}function ao(aE){function aH(aN,aM,aU,aK,aS,aT,aQ,aJ){var aR=aN.points,aI=aN.pointsize;for(var aL=0;aL<aR.length;aL+=aI){var aP=aR[aL],aO=aR[aL+1];if(aP==null||aP<aT.min||aP>aT.max||aO<aQ.min||aO>aQ.max){continue}H.beginPath();aP=aT.p2c(aP);aO=aQ.p2c(aO)+aK;if(aJ=="circle"){H.arc(aP,aO,aM,0,aS?Math.PI:Math.PI*2,false)}else{aJ(H,aP,aO,aM,aS)}H.closePath();if(aU){H.fillStyle=aU;H.fill()}/*H.stroke()*/}}H.save();H.translate(q.left,q.top);var aG=aE.points.lineWidth,aC=aE.shadowSize,aB=aE.points.radius,aF=aE.points.symbol;if(aG>0&&aC>0){var aD=aC/2;H.lineWidth=aD;H.strokeStyle="rgba(0,0,0,0.1)";aH(aE.datapoints,aB,null,aD+aD/2,true,aE.xaxis,aE.yaxis,aF);H.strokeStyle="rgba(0,0,0,0.2)";aH(aE.datapoints,aB,null,aD/2,true,aE.xaxis,aE.yaxis,aF)}H.lineWidth=aG;H.strokeStyle=aE.color;aH(aE.datapoints,aB,ae(aE.points,aE.color),0,false,aE.xaxis,aE.yaxis,aF);H.restore()}function E(aN,aM,aV,aI,aQ,aF,aD,aL,aK,aU,aR,aC){var aE,aT,aJ,aP,aG,aB,aO,aH,aS;if(aR){aH=aB=aO=true;aG=false;aE=aV;aT=aN;aP=aM+aI;aJ=aM+aQ;if(aT<aE){aS=aT;aT=aE;aE=aS;aG=true;aB=false}}else{aG=aB=aO=true;aH=false;aE=aN+aI;aT=aN+aQ;aJ=aV;aP=aM;if(aP<aJ){aS=aP;aP=aJ;aJ=aS;aH=true;aO=false}}if(aT<aL.min||aE>aL.max||aP<aK.min||aJ>aK.max){return}if(aE<aL.min){aE=aL.min;aG=false}if(aT>aL.max){aT=aL.max;aB=false}if(aJ<aK.min){aJ=aK.min;aH=false}if(aP>aK.max){aP=aK.max;aO=false}aE=aL.p2c(aE);aJ=aK.p2c(aJ);aT=aL.p2c(aT);aP=aK.p2c(aP);if(aD){aU.beginPath();aU.moveTo(aE,aJ);aU.lineTo(aE,aP);aU.lineTo(aT,aP);aU.lineTo(aT,aJ);aU.fillStyle=aD(aJ,aP);aU.fill()}if(aC>0&&(aG||aB||aO||aH)){aU.beginPath();aU.moveTo(aE,aJ+aF);if(aG){aU.lineTo(aE,aP+aF)}else{aU.moveTo(aE,aP+aF)}if(aO){aU.lineTo(aT,aP+aF)}else{aU.moveTo(aT,aP+aF)}if(aB){aU.lineTo(aT,aJ+aF)}else{aU.moveTo(aT,aJ+aF)}if(aH){aU.lineTo(aE,aJ+aF)}else{aU.moveTo(aE,aJ+aF)}aU.stroke()}}function e(aD){function aC(aJ,aI,aL,aG,aK,aN,aM){var aO=aJ.points,aF=aJ.pointsize;for(var aH=0;aH<aO.length;aH+=aF){if(aO[aH]==null){continue}E(aO[aH],aO[aH+1],aO[aH+2],aI,aL,aG,aK,aN,aM,H,aD.bars.horizontal,aD.bars.lineWidth)}}H.save();H.translate(q.left,q.top);H.lineWidth=aD.bars.lineWidth;H.strokeStyle=aD.color;var aB=aD.bars.align=="left"?0:-aD.bars.barWidth/2;var aE=aD.bars.fill?function(aF,aG){return ae(aD.bars,aD.color,aF,aG)}:null;aC(aD.datapoints,aB,aB+aD.bars.barWidth,0,aE,aD.xaxis,aD.yaxis);H.restore()}function ae(aD,aB,aC,aF){var aE=aD.fill;if(!aE){return null}if(aD.fillColor){return am(aD.fillColor,aC,aF,aB)}var aG=c.color.parse(aB);aG.a=typeof aE=="number"?aE:0.4;aG.normalize();return aG.toString()}function o(){av.find(".legend").remove();if(!O.legend.show){return}var aH=[],aF=false,aN=O.legend.labelFormatter,aM,aJ;for(var aE=0;aE<Q.length;++aE){aM=Q[aE];aJ=aM.label;if(!aJ){continue}if(aE%O.legend.noColumns==0){if(aF){aH.push("</tr>")}aH.push("<tr>");aF=true}if(aN){aJ=aN(aJ,aM)}aH.push('<td class="legendColorBox"><div style="border:1px solid '+O.legend.labelBoxBorderColor+';padding:1px"><div style="width:4px;height:0;border:5px solid '+aM.color+';overflow:hidden"></div></div></td><td class="legendLabel">'+aJ+"</td>")}if(aF){aH.push("</tr>")}if(aH.length==0){return}var aL='<table style="font-size:smaller;color:'+O.grid.color+'">'+aH.join("")+"</table>";if(O.legend.container!=null){c(O.legend.container).html(aL)}else{var aI="",aC=O.legend.position,aD=O.legend.margin;if(aD[0]==null){aD=[aD,aD]}if(aC.charAt(0)=="n"){aI+="top:"+(aD[1]+q.top)+"px;"}else{if(aC.charAt(0)=="s"){aI+="bottom:"+(aD[1]+q.bottom)+"px;"}}if(aC.charAt(1)=="e"){aI+="right:"+(aD[0]+q.right)+"px;"}else{if(aC.charAt(1)=="w"){aI+="left:"+(aD[0]+q.left)+"px;"}}var aK=c('<div class="legend">'+aL.replace('style="','style="position:absolute;'+aI+";")+"</div>").appendTo(av);if(O.legend.backgroundOpacity!=0){var aG=O.legend.backgroundColor;if(aG==null){aG=O.grid.backgroundColor;if(aG&&typeof aG=="string"){aG=c.color.parse(aG)}else{aG=c.color.extract(aK,"background-color")}aG.a=1;aG=aG.toString()}var aB=aK.children();c('<div style="position:absolute;width:'+aB.width()+"px;height:"+aB.height()+"px;"+aI+"background-color:"+aG+';"> </div>').prependTo(aK).css("opacity",O.legend.backgroundOpacity)}}}var ab=[],M=null;function K(aI,aG,aD){var aO=O.grid.mouseActiveRadius,a0=aO*aO+1,aY=null,aR=false,aW,aU;for(aW=Q.length-1;aW>=0;--aW){if(!aD(Q[aW])){continue}var aP=Q[aW],aH=aP.xaxis,aF=aP.yaxis,aV=aP.datapoints.points,aT=aP.datapoints.pointsize,aQ=aH.c2p(aI),aN=aF.c2p(aG),aC=aO/aH.scale,aB=aO/aF.scale;if(aH.options.inverseTransform){aC=Number.MAX_VALUE}if(aF.options.inverseTransform){aB=Number.MAX_VALUE}if(aP.lines.show||aP.points.show||aP.dashes.show){for(aU=0;aU<aV.length;aU+=aT){var aK=aV[aU],aJ=aV[aU+1];if(aK==null){continue}if(aK-aQ>aC||aK-aQ<-aC||aJ-aN>aB||aJ-aN<-aB){continue}var aM=Math.abs(aH.p2c(aK)-aI),aL=Math.abs(aF.p2c(aJ)-aG),aS=aM*aM+aL*aL;if(aS<a0){a0=aS;aY=[aW,aU/aT]}}}if(aP.bars.show&&!aY){var aE=aP.bars.align=="left"?0:-aP.bars.barWidth/2,aX=aE+aP.bars.barWidth;for(aU=0;aU<aV.length;aU+=aT){var aK=aV[aU],aJ=aV[aU+1],aZ=aV[aU+2];if(aK==null){continue}if(Q[aW].bars.horizontal?(aQ<=Math.max(aZ,aK)&&aQ>=Math.min(aZ,aK)&&aN>=aJ+aE&&aN<=aJ+aX):(aQ>=aK+aE&&aQ<=aK+aX&&aN>=Math.min(aZ,aJ)&&aN<=Math.max(aZ,aJ))){aY=[aW,aU/aT]}}}}if(aY){aW=aY[0];aU=aY[1];aT=Q[aW].datapoints.pointsize;return{datapoint:Q[aW].datapoints.points.slice(aU*aT,(aU+1)*aT),dataIndex:aU,series:Q[aW],seriesIndex:aW}}return null}function aa(aB){if(O.grid.hoverable){u("plothover",aB,function(aC){return aC.hoverable!=false})}}function l(aB){if(O.grid.hoverable){u("plothover",aB,function(aC){return false})}}function R(aB){u("plotclick",aB,function(aC){return aC.clickable!=false})}function u(aC,aB,aD){var aE=y.offset(),aH=aB.pageX-aE.left-q.left,aF=aB.pageY-aE.top-q.top,aJ=C({left:aH,top:aF});aJ.pageX=aB.pageX;aJ.pageY=aB.pageY;var aK=K(aH,aF,aD);if(aK){aK.pageX=parseInt(aK.series.xaxis.p2c(aK.datapoint[0])+aE.left+q.left);aK.pageY=parseInt(aK.series.yaxis.p2c(aK.datapoint[1])+aE.top+q.top)}if(O.grid.autoHighlight){for(var aG=0;aG<ab.length;++aG){var aI=ab[aG];if(aI.auto==aC&&!(aK&&aI.series==aK.series&&aI.point[0]==aK.datapoint[0]&&aI.point[1]==aK.datapoint[1])){T(aI.series,aI.point)}}if(aK){x(aK.series,aK.datapoint,aC)}}av.trigger(aC,[aJ,aK])}function f(){if(!M){M=setTimeout(s,30)}}function s(){M=null;A.save();A.clearRect(0,0,G,I);A.translate(q.left,q.top);var aC,aB;for(aC=0;aC<ab.length;++aC){aB=ab[aC];if(aB.series.bars.show){v(aB.series,aB.point)}else{ay(aB.series,aB.point)}}A.restore();an(ak.drawOverlay,[A])}function x(aD,aB,aF){if(typeof aD=="number"){aD=Q[aD]}if(typeof aB=="number"){var aE=aD.datapoints.pointsize;aB=aD.datapoints.points.slice(aE*aB,aE*(aB+1))}var aC=al(aD,aB);if(aC==-1){ab.push({series:aD,point:aB,auto:aF});f()}else{if(!aF){ab[aC].auto=false}}}function T(aD,aB){if(aD==null&&aB==null){ab=[];f()}if(typeof aD=="number"){aD=Q[aD]}if(typeof aB=="number"){aB=aD.data[aB]}var aC=al(aD,aB);if(aC!=-1){ab.splice(aC,1);f()}}function al(aD,aE){for(var aB=0;aB<ab.length;++aB){var aC=ab[aB];if(aC.series==aD&&aC.point[0]==aE[0]&&aC.point[1]==aE[1]){return aB}}return -1}function ay(aE,aD){var aC=aD[0],aI=aD[1],aH=aE.xaxis,aG=aE.yaxis;if(aC<aH.min||aC>aH.max||aI<aG.min||aI>aG.max){return}var aF=aE.points.radius+aE.points.lineWidth/2;A.lineWidth=aF;A.strokeStyle=c.color.parse(aE.color).scale("a",0.5).toString();var aB=1.5*aF,aC=aH.p2c(aC),aI=aG.p2c(aI);A.beginPath();if(aE.points.symbol=="circle"){A.arc(aC,aI,aB,0,2*Math.PI,false)}else{aE.points.symbol(A,aC,aI,aB,false)}A.closePath();A.stroke()}function v(aE,aB){A.lineWidth=aE.bars.lineWidth;A.strokeStyle=c.color.parse(aE.color).scale("a",0.5).toString();var aD=c.color.parse(aE.color).scale("a",0.5).toString();var aC=aE.bars.align=="left"?0:-aE.bars.barWidth/2;E(aB[0],aB[1],aB[2]||0,aC,aC+aE.bars.barWidth,0,function(){return aD},aE.xaxis,aE.yaxis,A,aE.bars.horizontal,aE.bars.lineWidth)}function am(aJ,aB,aH,aC){if(typeof aJ=="string"){return aJ}else{var aI=H.createLinearGradient(0,aH,0,aB);for(var aE=0,aD=aJ.colors.length;aE<aD;++aE){var aF=aJ.colors[aE];if(typeof aF!="string"){var aG=c.color.parse(aC);if(aF.brightness!=null){aG=aG.scale("rgb",aF.brightness)}if(aF.opacity!=null){aG.a*=aF.opacity}aF=aG.toString()}aI.addColorStop(aE/(aD-1),aF)}return aI}}}c.plot=function(g,e,d){var f=new b(c(g),e,d,c.plot.plugins);return f};c.plot.version="0.7";c.plot.plugins=[];c.plot.formatDate=function(l,f,h){var o=function(d){d=""+d;return d.length==1?"0"+d:d};var e=[];var p=false,j=false;var n=l.getUTCHours();var k=n<12;if(h==null){h=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]}if(f.search(/%p|%P/)!=-1){if(n>12){n=n-12}else{if(n==0){n=12}}}for(var g=0;g<f.length;++g){var m=f.charAt(g);if(p){switch(m){case"h":m=""+n;break;case"H":m=o(n);break;case"M":m=o(l.getUTCMinutes());break;case"S":m=o(l.getUTCSeconds());break;case"d":m=""+l.getUTCDate();break;case"m":m=""+(l.getUTCMonth()+1);break;case"y":m=""+l.getUTCFullYear();break;case"b":m=""+h[l.getUTCMonth()];break;case"p":m=(k)?("am"):("pm");break;case"P":m=(k)?("AM"):("PM");break;case"0":m="";j=true;break}if(m&&j){m=o(m);j=false}e.push(m);if(!j){p=false}}else{if(m=="%"){p=true}else{e.push(m)}}}return e.join("")};function a(e,d){return d*Math.floor(e/d)}})(jQuery);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
710 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
711
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
712 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
713 if(!document.createElement("canvas").getContext){(function(){var z=Math;var K=z.round;var J=z.sin;var U=z.cos;var b=z.abs;var k=z.sqrt;var D=10;var F=D/2;function T(){return this.context_||(this.context_=new W(this))}var O=Array.prototype.slice;function G(i,j,m){var Z=O.call(arguments,2);return function(){return i.apply(j,Z.concat(O.call(arguments)))}}function AD(Z){return String(Z).replace(/&/g,"&amp;").replace(/"/g,"&quot;")}function r(i){if(!i.namespaces.g_vml_){i.namespaces.add("g_vml_","urn:schemas-microsoft-com:vml","#default#VML")}if(!i.namespaces.g_o_){i.namespaces.add("g_o_","urn:schemas-microsoft-com:office:office","#default#VML")}if(!i.styleSheets.ex_canvas_){var Z=i.createStyleSheet();Z.owningElement.id="ex_canvas_";Z.cssText="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}"}}r(document);var E={init:function(Z){if(/MSIE/.test(navigator.userAgent)&&!window.opera){var i=Z||document;i.createElement("canvas");i.attachEvent("onreadystatechange",G(this.init_,this,i))}},init_:function(m){var j=m.getElementsByTagName("canvas");for(var Z=0;Z<j.length;Z++){this.initElement(j[Z])}},initElement:function(i){if(!i.getContext){i.getContext=T;r(i.ownerDocument);i.innerHTML="";i.attachEvent("onpropertychange",S);i.attachEvent("onresize",w);var Z=i.attributes;if(Z.width&&Z.width.specified){i.style.width=Z.width.nodeValue+"px"}else{i.width=i.clientWidth}if(Z.height&&Z.height.specified){i.style.height=Z.height.nodeValue+"px"}else{i.height=i.clientHeight}}return i}};function S(i){var Z=i.srcElement;switch(i.propertyName){case"width":Z.getContext().clearRect();Z.style.width=Z.attributes.width.nodeValue+"px";Z.firstChild.style.width=Z.clientWidth+"px";break;case"height":Z.getContext().clearRect();Z.style.height=Z.attributes.height.nodeValue+"px";Z.firstChild.style.height=Z.clientHeight+"px";break}}function w(i){var Z=i.srcElement;if(Z.firstChild){Z.firstChild.style.width=Z.clientWidth+"px";Z.firstChild.style.height=Z.clientHeight+"px"}}E.init();var I=[];for(var AC=0;AC<16;AC++){for(var AB=0;AB<16;AB++){I[AC*16+AB]=AC.toString(16)+AB.toString(16)}}function V(){return[[1,0,0],[0,1,0],[0,0,1]]}function d(m,j){var i=V();for(var Z=0;Z<3;Z++){for(var AF=0;AF<3;AF++){var p=0;for(var AE=0;AE<3;AE++){p+=m[Z][AE]*j[AE][AF]}i[Z][AF]=p}}return i}function Q(i,Z){Z.fillStyle=i.fillStyle;Z.lineCap=i.lineCap;Z.lineJoin=i.lineJoin;Z.lineWidth=i.lineWidth;Z.miterLimit=i.miterLimit;Z.shadowBlur=i.shadowBlur;Z.shadowColor=i.shadowColor;Z.shadowOffsetX=i.shadowOffsetX;Z.shadowOffsetY=i.shadowOffsetY;Z.strokeStyle=i.strokeStyle;Z.globalAlpha=i.globalAlpha;Z.font=i.font;Z.textAlign=i.textAlign;Z.textBaseline=i.textBaseline;Z.arcScaleX_=i.arcScaleX_;Z.arcScaleY_=i.arcScaleY_;Z.lineScale_=i.lineScale_}var B={aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",grey:"#808080",greenyellow:"#ADFF2F",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",oldlace:"#FDF5E6",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",whitesmoke:"#F5F5F5",yellowgreen:"#9ACD32"};function g(i){var m=i.indexOf("(",3);var Z=i.indexOf(")",m+1);var j=i.substring(m+1,Z).split(",");if(j.length==4&&i.substr(3,1)=="a"){alpha=Number(j[3])}else{j[3]=1}return j}function C(Z){return parseFloat(Z)/100}function N(i,j,Z){return Math.min(Z,Math.max(j,i))}function c(AF){var j,i,Z;h=parseFloat(AF[0])/360%360;if(h<0){h++}s=N(C(AF[1]),0,1);l=N(C(AF[2]),0,1);if(s==0){j=i=Z=l}else{var m=l<0.5?l*(1+s):l+s-l*s;var AE=2*l-m;j=A(AE,m,h+1/3);i=A(AE,m,h);Z=A(AE,m,h-1/3)}return"#"+I[Math.floor(j*255)]+I[Math.floor(i*255)]+I[Math.floor(Z*255)]}function A(i,Z,j){if(j<0){j++}if(j>1){j--}if(6*j<1){return i+(Z-i)*6*j}else{if(2*j<1){return Z}else{if(3*j<2){return i+(Z-i)*(2/3-j)*6}else{return i}}}}function Y(Z){var AE,p=1;Z=String(Z);if(Z.charAt(0)=="#"){AE=Z}else{if(/^rgb/.test(Z)){var m=g(Z);var AE="#",AF;for(var j=0;j<3;j++){if(m[j].indexOf("%")!=-1){AF=Math.floor(C(m[j])*255)}else{AF=Number(m[j])}AE+=I[N(AF,0,255)]}p=m[3]}else{if(/^hsl/.test(Z)){var m=g(Z);AE=c(m);p=m[3]}else{AE=B[Z]||Z}}}return{color:AE,alpha:p}}var L={style:"normal",variant:"normal",weight:"normal",size:10,family:"sans-serif"};var f={};function X(Z){if(f[Z]){return f[Z]}var m=document.createElement("div");var j=m.style;try{j.font=Z}catch(i){}return f[Z]={style:j.fontStyle||L.style,variant:j.fontVariant||L.variant,weight:j.fontWeight||L.weight,size:j.fontSize||L.size,family:j.fontFamily||L.family}}function P(j,i){var Z={};for(var AF in j){Z[AF]=j[AF]}var AE=parseFloat(i.currentStyle.fontSize),m=parseFloat(j.size);if(typeof j.size=="number"){Z.size=j.size}else{if(j.size.indexOf("px")!=-1){Z.size=m}else{if(j.size.indexOf("em")!=-1){Z.size=AE*m}else{if(j.size.indexOf("%")!=-1){Z.size=(AE/100)*m}else{if(j.size.indexOf("pt")!=-1){Z.size=m/0.75}else{Z.size=AE}}}}}Z.size*=0.981;return Z}function AA(Z){return Z.style+" "+Z.variant+" "+Z.weight+" "+Z.size+"px "+Z.family}function t(Z){switch(Z){case"butt":return"flat";case"round":return"round";case"square":default:return"square"}}function W(i){this.m_=V();this.mStack_=[];this.aStack_=[];this.currentPath_=[];this.strokeStyle="#000";this.fillStyle="#000";this.lineWidth=1;this.lineJoin="miter";this.lineCap="butt";this.miterLimit=D*1;this.globalAlpha=1;this.font="10px sans-serif";this.textAlign="left";this.textBaseline="alphabetic";this.canvas=i;var Z=i.ownerDocument.createElement("div");Z.style.width=i.clientWidth+"px";Z.style.height=i.clientHeight+"px";Z.style.overflow="hidden";Z.style.position="absolute";i.appendChild(Z);this.element_=Z;this.arcScaleX_=1;this.arcScaleY_=1;this.lineScale_=1}var M=W.prototype;M.clearRect=function(){if(this.textMeasureEl_){this.textMeasureEl_.removeNode(true);this.textMeasureEl_=null}this.element_.innerHTML=""};M.beginPath=function(){this.currentPath_=[]};M.moveTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"moveTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.lineTo=function(i,Z){var j=this.getCoords_(i,Z);this.currentPath_.push({type:"lineTo",x:j.x,y:j.y});this.currentX_=j.x;this.currentY_=j.y};M.bezierCurveTo=function(j,i,AI,AH,AG,AE){var Z=this.getCoords_(AG,AE);var AF=this.getCoords_(j,i);var m=this.getCoords_(AI,AH);e(this,AF,m,Z)};function e(Z,m,j,i){Z.currentPath_.push({type:"bezierCurveTo",cp1x:m.x,cp1y:m.y,cp2x:j.x,cp2y:j.y,x:i.x,y:i.y});Z.currentX_=i.x;Z.currentY_=i.y}M.quadraticCurveTo=function(AG,j,i,Z){var AF=this.getCoords_(AG,j);var AE=this.getCoords_(i,Z);var AH={x:this.currentX_+2/3*(AF.x-this.currentX_),y:this.currentY_+2/3*(AF.y-this.currentY_)};var m={x:AH.x+(AE.x-this.currentX_)/3,y:AH.y+(AE.y-this.currentY_)/3};e(this,AH,m,AE)};M.arc=function(AJ,AH,AI,AE,i,j){AI*=D;var AN=j?"at":"wa";var AK=AJ+U(AE)*AI-F;var AM=AH+J(AE)*AI-F;var Z=AJ+U(i)*AI-F;var AL=AH+J(i)*AI-F;if(AK==Z&&!j){AK+=0.125}var m=this.getCoords_(AJ,AH);var AG=this.getCoords_(AK,AM);var AF=this.getCoords_(Z,AL);this.currentPath_.push({type:AN,x:m.x,y:m.y,radius:AI,xStart:AG.x,yStart:AG.y,xEnd:AF.x,yEnd:AF.y})};M.rect=function(j,i,Z,m){this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath()};M.strokeRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.stroke();this.currentPath_=p};M.fillRect=function(j,i,Z,m){var p=this.currentPath_;this.beginPath();this.moveTo(j,i);this.lineTo(j+Z,i);this.lineTo(j+Z,i+m);this.lineTo(j,i+m);this.closePath();this.fill();this.currentPath_=p};M.createLinearGradient=function(i,m,Z,j){var p=new v("gradient");p.x0_=i;p.y0_=m;p.x1_=Z;p.y1_=j;return p};M.createRadialGradient=function(m,AE,j,i,p,Z){var AF=new v("gradientradial");AF.x0_=m;AF.y0_=AE;AF.r0_=j;AF.x1_=i;AF.y1_=p;AF.r1_=Z;return AF};M.drawImage=function(AO,j){var AH,AF,AJ,AV,AM,AK,AQ,AX;var AI=AO.runtimeStyle.width;var AN=AO.runtimeStyle.height;AO.runtimeStyle.width="auto";AO.runtimeStyle.height="auto";var AG=AO.width;var AT=AO.height;AO.runtimeStyle.width=AI;AO.runtimeStyle.height=AN;if(arguments.length==3){AH=arguments[1];AF=arguments[2];AM=AK=0;AQ=AJ=AG;AX=AV=AT}else{if(arguments.length==5){AH=arguments[1];AF=arguments[2];AJ=arguments[3];AV=arguments[4];AM=AK=0;AQ=AG;AX=AT}else{if(arguments.length==9){AM=arguments[1];AK=arguments[2];AQ=arguments[3];AX=arguments[4];AH=arguments[5];AF=arguments[6];AJ=arguments[7];AV=arguments[8]}else{throw Error("Invalid number of arguments")}}}var AW=this.getCoords_(AH,AF);var m=AQ/2;var i=AX/2;var AU=[];var Z=10;var AE=10;AU.push(" <g_vml_:group",' coordsize="',D*Z,",",D*AE,'"',' coordorigin="0,0"',' style="width:',Z,"px;height:",AE,"px;position:absolute;");if(this.m_[0][0]!=1||this.m_[0][1]||this.m_[1][1]!=1||this.m_[1][0]){var p=[];p.push("M11=",this.m_[0][0],",","M12=",this.m_[1][0],",","M21=",this.m_[0][1],",","M22=",this.m_[1][1],",","Dx=",K(AW.x/D),",","Dy=",K(AW.y/D),"");var AS=AW;var AR=this.getCoords_(AH+AJ,AF);var AP=this.getCoords_(AH,AF+AV);var AL=this.getCoords_(AH+AJ,AF+AV);AS.x=z.max(AS.x,AR.x,AP.x,AL.x);AS.y=z.max(AS.y,AR.y,AP.y,AL.y);AU.push("padding:0 ",K(AS.x/D),"px ",K(AS.y/D),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",p.join(""),", sizingmethod='clip');")}else{AU.push("top:",K(AW.y/D),"px;left:",K(AW.x/D),"px;")}AU.push(' ">','<g_vml_:image src="',AO.src,'"',' style="width:',D*AJ,"px;"," height:",D*AV,'px"',' cropleft="',AM/AG,'"',' croptop="',AK/AT,'"',' cropright="',(AG-AM-AQ)/AG,'"',' cropbottom="',(AT-AK-AX)/AT,'"'," />","</g_vml_:group>");this.element_.insertAdjacentHTML("BeforeEnd",AU.join(""))};M.stroke=function(AM){var m=10;var AN=10;var AE=5000;var AG={x:null,y:null};var AL={x:null,y:null};for(var AH=0;AH<this.currentPath_.length;AH+=AE){var AK=[];var AF=false;AK.push("<g_vml_:shape",' filled="',!!AM,'"',' style="position:absolute;width:',m,"px;height:",AN,'px;"',' coordorigin="0,0"',' coordsize="',D*m,",",D*AN,'"',' stroked="',!AM,'"',' path="');var AO=false;for(var AI=AH;AI<Math.min(AH+AE,this.currentPath_.length);AI++){if(AI%AE==0&&AI>0){AK.push(" m ",K(this.currentPath_[AI-1].x),",",K(this.currentPath_[AI-1].y))}var Z=this.currentPath_[AI];var AJ;switch(Z.type){case"moveTo":AJ=Z;AK.push(" m ",K(Z.x),",",K(Z.y));break;case"lineTo":AK.push(" l ",K(Z.x),",",K(Z.y));break;case"close":AK.push(" x ");Z=null;break;case"bezierCurveTo":AK.push(" c ",K(Z.cp1x),",",K(Z.cp1y),",",K(Z.cp2x),",",K(Z.cp2y),",",K(Z.x),",",K(Z.y));break;case"at":case"wa":AK.push(" ",Z.type," ",K(Z.x-this.arcScaleX_*Z.radius),",",K(Z.y-this.arcScaleY_*Z.radius)," ",K(Z.x+this.arcScaleX_*Z.radius),",",K(Z.y+this.arcScaleY_*Z.radius)," ",K(Z.xStart),",",K(Z.yStart)," ",K(Z.xEnd),",",K(Z.yEnd));break}if(Z){if(AG.x==null||Z.x<AG.x){AG.x=Z.x}if(AL.x==null||Z.x>AL.x){AL.x=Z.x}if(AG.y==null||Z.y<AG.y){AG.y=Z.y}if(AL.y==null||Z.y>AL.y){AL.y=Z.y}}}AK.push(' ">');if(!AM){R(this,AK)}else{a(this,AK,AG,AL)}AK.push("</g_vml_:shape>");this.element_.insertAdjacentHTML("beforeEnd",AK.join(""))}};function R(j,AE){var i=Y(j.strokeStyle);var m=i.color;var p=i.alpha*j.globalAlpha;var Z=j.lineScale_*j.lineWidth;if(Z<1){p*=Z}AE.push("<g_vml_:stroke",' opacity="',p,'"',' joinstyle="',j.lineJoin,'"',' miterlimit="',j.miterLimit,'"',' endcap="',t(j.lineCap),'"',' weight="',Z,'px"',' color="',m,'" />')}function a(AO,AG,Ah,AP){var AH=AO.fillStyle;var AY=AO.arcScaleX_;var AX=AO.arcScaleY_;var Z=AP.x-Ah.x;var m=AP.y-Ah.y;if(AH instanceof v){var AL=0;var Ac={x:0,y:0};var AU=0;var AK=1;if(AH.type_=="gradient"){var AJ=AH.x0_/AY;var j=AH.y0_/AX;var AI=AH.x1_/AY;var Aj=AH.y1_/AX;var Ag=AO.getCoords_(AJ,j);var Af=AO.getCoords_(AI,Aj);var AE=Af.x-Ag.x;var p=Af.y-Ag.y;AL=Math.atan2(AE,p)*180/Math.PI;if(AL<0){AL+=360}if(AL<0.000001){AL=0}}else{var Ag=AO.getCoords_(AH.x0_,AH.y0_);Ac={x:(Ag.x-Ah.x)/Z,y:(Ag.y-Ah.y)/m};Z/=AY*D;m/=AX*D;var Aa=z.max(Z,m);AU=2*AH.r0_/Aa;AK=2*AH.r1_/Aa-AU}var AS=AH.colors_;AS.sort(function(Ak,i){return Ak.offset-i.offset});var AN=AS.length;var AR=AS[0].color;var AQ=AS[AN-1].color;var AW=AS[0].alpha*AO.globalAlpha;var AV=AS[AN-1].alpha*AO.globalAlpha;var Ab=[];for(var Ae=0;Ae<AN;Ae++){var AM=AS[Ae];Ab.push(AM.offset*AK+AU+" "+AM.color)}AG.push('<g_vml_:fill type="',AH.type_,'"',' method="none" focus="100%"',' color="',AR,'"',' color2="',AQ,'"',' colors="',Ab.join(","),'"',' opacity="',AV,'"',' g_o_:opacity2="',AW,'"',' angle="',AL,'"',' focusposition="',Ac.x,",",Ac.y,'" />')}else{if(AH instanceof u){if(Z&&m){var AF=-Ah.x;var AZ=-Ah.y;AG.push("<g_vml_:fill",' position="',AF/Z*AY*AY,",",AZ/m*AX*AX,'"',' type="tile"',' src="',AH.src_,'" />')}}else{var Ai=Y(AO.fillStyle);var AT=Ai.color;var Ad=Ai.alpha*AO.globalAlpha;AG.push('<g_vml_:fill color="',AT,'" opacity="',Ad,'" />')}}}M.fill=function(){this.stroke(true)};M.closePath=function(){this.currentPath_.push({type:"close"})};M.getCoords_=function(j,i){var Z=this.m_;return{x:D*(j*Z[0][0]+i*Z[1][0]+Z[2][0])-F,y:D*(j*Z[0][1]+i*Z[1][1]+Z[2][1])-F}};M.save=function(){var Z={};Q(this,Z);this.aStack_.push(Z);this.mStack_.push(this.m_);this.m_=d(V(),this.m_)};M.restore=function(){if(this.aStack_.length){Q(this.aStack_.pop(),this);this.m_=this.mStack_.pop()}};function H(Z){return isFinite(Z[0][0])&&isFinite(Z[0][1])&&isFinite(Z[1][0])&&isFinite(Z[1][1])&&isFinite(Z[2][0])&&isFinite(Z[2][1])}function y(i,Z,j){if(!H(Z)){return }i.m_=Z;if(j){var p=Z[0][0]*Z[1][1]-Z[0][1]*Z[1][0];i.lineScale_=k(b(p))}}M.translate=function(j,i){var Z=[[1,0,0],[0,1,0],[j,i,1]];y(this,d(Z,this.m_),false)};M.rotate=function(i){var m=U(i);var j=J(i);var Z=[[m,j,0],[-j,m,0],[0,0,1]];y(this,d(Z,this.m_),false)};M.scale=function(j,i){this.arcScaleX_*=j;this.arcScaleY_*=i;var Z=[[j,0,0],[0,i,0],[0,0,1]];y(this,d(Z,this.m_),true)};M.transform=function(p,m,AF,AE,i,Z){var j=[[p,m,0],[AF,AE,0],[i,Z,1]];y(this,d(j,this.m_),true)};M.setTransform=function(AE,p,AG,AF,j,i){var Z=[[AE,p,0],[AG,AF,0],[j,i,1]];y(this,Z,true)};M.drawText_=function(AK,AI,AH,AN,AG){var AM=this.m_,AQ=1000,i=0,AP=AQ,AF={x:0,y:0},AE=[];var Z=P(X(this.font),this.element_);var j=AA(Z);var AR=this.element_.currentStyle;var p=this.textAlign.toLowerCase();switch(p){case"left":case"center":case"right":break;case"end":p=AR.direction=="ltr"?"right":"left";break;case"start":p=AR.direction=="rtl"?"right":"left";break;default:p="left"}switch(this.textBaseline){case"hanging":case"top":AF.y=Z.size/1.75;break;case"middle":break;default:case null:case"alphabetic":case"ideographic":case"bottom":AF.y=-Z.size/2.25;break}switch(p){case"right":i=AQ;AP=0.05;break;case"center":i=AP=AQ/2;break}var AO=this.getCoords_(AI+AF.x,AH+AF.y);AE.push('<g_vml_:line from="',-i,' 0" to="',AP,' 0.05" ',' coordsize="100 100" coordorigin="0 0"',' filled="',!AG,'" stroked="',!!AG,'" style="position:absolute;width:1px;height:1px;">');if(AG){R(this,AE)}else{a(this,AE,{x:-i,y:0},{x:AP,y:Z.size})}var AL=AM[0][0].toFixed(3)+","+AM[1][0].toFixed(3)+","+AM[0][1].toFixed(3)+","+AM[1][1].toFixed(3)+",0,0";var AJ=K(AO.x/D)+","+K(AO.y/D);AE.push('<g_vml_:skew on="t" matrix="',AL,'" ',' offset="',AJ,'" origin="',i,' 0" />','<g_vml_:path textpathok="true" />','<g_vml_:textpath on="true" string="',AD(AK),'" style="v-text-align:',p,";font:",AD(j),'" /></g_vml_:line>');this.element_.insertAdjacentHTML("beforeEnd",AE.join(""))};M.fillText=function(j,Z,m,i){this.drawText_(j,Z,m,i,false)};M.strokeText=function(j,Z,m,i){this.drawText_(j,Z,m,i,true)};M.measureText=function(j){if(!this.textMeasureEl_){var Z='<span style="position:absolute;top:-20000px;left:0;padding:0;margin:0;border:none;white-space:pre;"></span>';this.element_.insertAdjacentHTML("beforeEnd",Z);this.textMeasureEl_=this.element_.lastChild}var i=this.element_.ownerDocument;this.textMeasureEl_.innerHTML="";this.textMeasureEl_.style.font=this.font;this.textMeasureEl_.appendChild(i.createTextNode(j));return{width:this.textMeasureEl_.offsetWidth}};M.clip=function(){};M.arcTo=function(){};M.createPattern=function(i,Z){return new u(i,Z)};function v(Z){this.type_=Z;this.x0_=0;this.y0_=0;this.r0_=0;this.x1_=0;this.y1_=0;this.r1_=0;this.colors_=[]}v.prototype.addColorStop=function(i,Z){Z=Y(Z);this.colors_.push({offset:i,color:Z.color,alpha:Z.alpha})};function u(i,Z){q(i);switch(Z){case"repeat":case null:case"":this.repetition_="repeat";break;case"repeat-x":case"repeat-y":case"no-repeat":this.repetition_=Z;break;default:n("SYNTAX_ERR")}this.src_=i.src;this.width_=i.width;this.height_=i.height}function n(Z){throw new o(Z)}function q(Z){if(!Z||Z.nodeType!=1||Z.tagName!="IMG"){n("TYPE_MISMATCH_ERR")}if(Z.readyState!="complete"){n("INVALID_STATE_ERR")}}function o(Z){this.code=this[Z];this.message=Z+": DOM Exception "+this.code}var x=o.prototype=new Error;x.INDEX_SIZE_ERR=1;x.DOMSTRING_SIZE_ERR=2;x.HIERARCHY_REQUEST_ERR=3;x.WRONG_DOCUMENT_ERR=4;x.INVALID_CHARACTER_ERR=5;x.NO_DATA_ALLOWED_ERR=6;x.NO_MODIFICATION_ALLOWED_ERR=7;x.NOT_FOUND_ERR=8;x.NOT_SUPPORTED_ERR=9;x.INUSE_ATTRIBUTE_ERR=10;x.INVALID_STATE_ERR=11;x.SYNTAX_ERR=12;x.INVALID_MODIFICATION_ERR=13;x.NAMESPACE_ERR=14;x.INVALID_ACCESS_ERR=15;x.VALIDATION_ERR=16;x.TYPE_MISMATCH_ERR=17;G_vmlCanvasManager=E;CanvasRenderingContext2D=W;CanvasGradient=v;CanvasPattern=u;DOMException=o})()};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
714 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
715
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
716 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
717 /*
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
718 * jQuery.flot.dashes
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
719 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
720 * options = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
721 * series: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
722 * dashes: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
723 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
724 * // show
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
725 * // default: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
726 * // Whether to show dashes for the series.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
727 * show: <boolean>,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
728 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
729 * // lineWidth
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
730 * // default: 2
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
731 * // The width of the dashed line in pixels.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
732 * lineWidth: <number>,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
733 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
734 * // dashLength
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
735 * // default: 10
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
736 * // Controls the length of the individual dashes and the amount of
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
737 * // space between them.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
738 * // If this is a number, the dashes and spaces will have that length.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
739 * // If this is an array, it is read as [ dashLength, spaceLength ]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
740 * dashLength: <number> or <array[2]>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
741 * }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
742 * }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
743 * }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
744 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
745 (function($){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
746
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
747 function init(plot) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
748
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
749 plot.hooks.processDatapoints.push(function(plot, series, datapoints) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
750
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
751 if (!series.dashes.show) return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
752
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
753 plot.hooks.draw.push(function(plot, ctx) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
754
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
755 var plotOffset = plot.getPlotOffset(),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
756 axisx = series.xaxis,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
757 axisy = series.yaxis;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
758
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
759 function plotDashes(xoffset, yoffset) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
760
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
761 var points = datapoints.points,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
762 ps = datapoints.pointsize,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
763 prevx = null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
764 prevy = null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
765 dashRemainder = 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
766 dashOn = true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
767 dashOnLength,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
768 dashOffLength;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
769
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
770 if (series.dashes.dashLength[0]) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
771 dashOnLength = series.dashes.dashLength[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
772 if (series.dashes.dashLength[1]) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
773 dashOffLength = series.dashes.dashLength[1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
774 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
775 dashOffLength = dashOnLength;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
776 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
777 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
778 dashOffLength = dashOnLength = series.dashes.dashLength;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
779 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
780
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
781 ctx.beginPath();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
782
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
783 for (var i = ps; i < points.length; i += ps) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
784
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
785 var x1 = points[i - ps],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
786 y1 = points[i - ps + 1],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
787 x2 = points[i],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
788 y2 = points[i + 1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
789
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
790 if (x1 == null || x2 == null) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
791
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
792 // clip with ymin
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
793 if (y1 <= y2 && y1 < axisy.min) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
794 if (y2 < axisy.min) continue; // line segment is outside
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
795 // compute new intersection point
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
796 x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
797 y1 = axisy.min;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
798 } else if (y2 <= y1 && y2 < axisy.min) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
799 if (y1 < axisy.min) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
800 x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
801 y2 = axisy.min;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
802 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
803
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
804 // clip with ymax
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
805 if (y1 >= y2 && y1 > axisy.max) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
806 if (y2 > axisy.max) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
807 x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
808 y1 = axisy.max;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
809 } else if (y2 >= y1 && y2 > axisy.max) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
810 if (y1 > axisy.max) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
811 x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
812 y2 = axisy.max;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
813 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
814
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
815 // clip with xmin
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
816 if (x1 <= x2 && x1 < axisx.min) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
817 if (x2 < axisx.min) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
818 y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
819 x1 = axisx.min;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
820 } else if (x2 <= x1 && x2 < axisx.min) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
821 if (x1 < axisx.min) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
822 y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
823 x2 = axisx.min;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
824 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
825
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
826 // clip with xmax
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
827 if (x1 >= x2 && x1 > axisx.max) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
828 if (x2 > axisx.max) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
829 y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
830 x1 = axisx.max;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
831 } else if (x2 >= x1 && x2 > axisx.max) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
832 if (x1 > axisx.max) continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
833 y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
834 x2 = axisx.max;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
835 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
836
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
837 if (x1 != prevx || y1 != prevy) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
838 ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
839 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
840
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
841 var ax1 = axisx.p2c(x1) + xoffset,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
842 ay1 = axisy.p2c(y1) + yoffset,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
843 ax2 = axisx.p2c(x2) + xoffset,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
844 ay2 = axisy.p2c(y2) + yoffset,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
845 dashOffset;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
846
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
847 function lineSegmentOffset(segmentLength) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
848
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
849 var c = Math.sqrt(Math.pow(ax2 - ax1, 2) + Math.pow(ay2 - ay1, 2));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
850
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
851 if (c <= segmentLength) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
852 return {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
853 deltaX: ax2 - ax1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
854 deltaY: ay2 - ay1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
855 distance: c,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
856 remainder: segmentLength - c
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
857 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
858 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
859 var xsign = ax2 > ax1 ? 1 : -1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
860 ysign = ay2 > ay1 ? 1 : -1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
861 return {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
862 deltaX: xsign * Math.sqrt(Math.pow(segmentLength, 2) / (1 + Math.pow((ay2 - ay1)/(ax2 - ax1), 2))),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
863 deltaY: ysign * Math.sqrt(Math.pow(segmentLength, 2) - Math.pow(segmentLength, 2) / (1 + Math.pow((ay2 - ay1)/(ax2 - ax1), 2))),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
864 distance: segmentLength,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
865 remainder: 0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
866 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
867 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
868 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
869 //-end lineSegmentOffset
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
870
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
871 do {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
872
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
873 dashOffset = lineSegmentOffset(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
874 dashRemainder > 0 ? dashRemainder :
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
875 dashOn ? dashOnLength : dashOffLength);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
876
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
877 if (dashOffset.deltaX != 0 || dashOffset.deltaY != 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
878 if (dashOn) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
879 ctx.lineTo(ax1 + dashOffset.deltaX, ay1 + dashOffset.deltaY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
880 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
881 ctx.moveTo(ax1 + dashOffset.deltaX, ay1 + dashOffset.deltaY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
882 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
883 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
884
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
885 dashOn = !dashOn;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
886 dashRemainder = dashOffset.remainder;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
887 ax1 += dashOffset.deltaX;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
888 ay1 += dashOffset.deltaY;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
889
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
890 } while (dashOffset.distance > 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
891
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
892 prevx = x2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
893 prevy = y2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
894 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
895
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
896 ctx.stroke();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
897 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
898 //-end plotDashes
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
899
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
900 ctx.save();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
901 ctx.translate(plotOffset.left, plotOffset.top);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
902 ctx.lineJoin = 'round';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
903
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
904 var lw = series.dashes.lineWidth,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
905 sw = series.shadowSize;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
906
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
907 // FIXME: consider another form of shadow when filling is turned on
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
908 if (lw > 0 && sw > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
909 // draw shadow as a thick and thin line with transparency
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
910 ctx.lineWidth = sw;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
911 ctx.strokeStyle = "rgba(0,0,0,0.1)";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
912 // position shadow at angle from the mid of line
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
913 var angle = Math.PI/18;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
914 plotDashes(Math.sin(angle) * (lw/2 + sw/2), Math.cos(angle) * (lw/2 + sw/2));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
915 ctx.lineWidth = sw/2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
916 plotDashes(Math.sin(angle) * (lw/2 + sw/4), Math.cos(angle) * (lw/2 + sw/4));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
917 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
918
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
919 ctx.lineWidth = lw;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
920 ctx.strokeStyle = series.color;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
921
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
922 if (lw > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
923 plotDashes(0, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
924 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
925
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
926 ctx.restore();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
927
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
928 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
929 //-end draw hook
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
930
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
931 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
932 //-end processDatapoints hook
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
933
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
934 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
935 //-end init
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
936
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
937 $.plot.plugins.push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
938 init: init,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
939 options: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
940 series: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
941 dashes: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
942 show: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
943 lineWidth: 2,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
944 dashLength: 10
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
945 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
946 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
947 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
948 name: 'dashes',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
949 version: '0.1'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
950 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
951
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
952 })(jQuery)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
953
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
954
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
955 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
956
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
957 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
958
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
959 var cumulative = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
960 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
961
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
962 maxX: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
963 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
964 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
965 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
966 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
967 colors: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
968
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
969 draw: function(name, title, colors, filenames, listsOfLengths, refLengths, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
970 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
971
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
972 $(scalePlaceholder).empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
973
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
974 if (!this.isInitialized) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
975 // div.html(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
976 // "<span class='plot-header'>" + addTooltipIfDefinitionExists(glossary, title) + "</span>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
977 // "<div class='plot-placeholder' id='cumulative-plot-placeholder'></div>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
978 // );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
979 cumulative.series = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
980 var plotsN = filenames.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
981 var refLength = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
982 if (refLengths) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
983 for (var i = 0, size = refLengths.length; i < size; i++)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
984 refLength += refLengths[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
985 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
986 if (refLength) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
987 cumulative.maxY = refLength;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
988 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
989
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
990 cumulative.colors = colors;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
991
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
992 function addCumulativeLenData(label, index, color, lengths, isRef) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
993 if (!(lengths instanceof Array))
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
994 lengths = [lengths];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
995 var size = lengths.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
996 var points = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
997 data: new Array(size + 1),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
998 label: label,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
999 number: index,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1000 color: color
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1001 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1002
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1003 points.data[0] = [0, 0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1004
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1005 var y = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1006 for (var j = 0; j < size; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1007 y += lengths[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1008 points.data[j+1] = [j+1, y];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1009 if (y > cumulative.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1010 cumulative.maxY = y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1011 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1012 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1013
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1014 if (size > cumulative.maxX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1015 cumulative.maxX = size;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1016 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1017 if (isRef){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1018 points.isReference = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1019 points.dashes = {show: true, lineWidth: 1};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1020 if (size < cumulative.maxX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1021 points.data[size + 1] = [cumulative.maxX, y];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1022 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1023 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1024 return points;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1025 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1026
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1027 for (var i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1028 var lengths = listsOfLengths[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1029 var asm_name = filenames[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1030 var color = colors[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1031 cumulative.series[i] = addCumulativeLenData(asm_name, i, color, lengths);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1032 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1033
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1034 // var lineColors = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1035 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1036 // for (i = 0; i < colors.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1037 // lineColors.push(changeColor(colors[i], 0.9, false));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1038 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1039
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1040 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1041 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1042 cumulative.series[i].dashes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1043 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1044 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1045 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1046 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1047 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1048 cumulative.series[i].lines = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1049 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1050 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1051 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1052 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1053 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1054
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1055 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1056 cumulative.colors.push(cumulative.series[i].color);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1057 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1058
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1059 //cumulative.maxYTick = getMaxDecimalTick(cumulative.maxY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1060
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1061 if (refLengths) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1062 size = refLengths.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1063 var ref_label = 'reference,&nbsp;' + toPrettyString(refLength, 'bp');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1064 cumulative.series.push(addCumulativeLenData(ref_label, i, '#000000', refLengths, true));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1065 cumulative.colors.push('#000000');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1066 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1067
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1068
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1069 // if (referenceLength) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1070 // yaxes.push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1071 // ticks: [referenceLength],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1072 // min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1073 // max: maxYTick,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1074 // position: 'right',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1075 //// labelWidth: 50,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1076 // reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1077 // tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1078 // return '<div style="">' + toPrettyStringWithDimension(referenceLength, 'bp') +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1079 // ' <span style="margin-left: -0.2em;">(reference)</span></div>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1080 // },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1081 // minTickSize: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1082 // });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1083 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1084 var yaxis = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1085 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1086 //max: cumulative.maxYTick,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1087 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1088 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1089 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1090 color: '#000000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1091 tickFormatter: getBpTickFormatter(cumulative.maxY),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1092 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1093 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1094 var yaxes = [yaxis];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1095
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1096 cumulative.showWithData = function(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1097 var plot = $.plot(placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1098 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1099 colors: cumulative.colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1100 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1101 container: $('useless-invisible-element-that-does-not-even-exist'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1102 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1103 // legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1104 // container: legendPlaceholder,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1105 // position: 'se',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1106 // labelBoxBorderColor: '#FFF',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1107 // labelFormatter: labelFormatter,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1108 // },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1109 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1110 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1111 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1112 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1113 mouseActiveRadius: 1000
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1114 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1115 yaxes: yaxes,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1116 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1117 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1118 max: cumulative.maxX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1119 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1120 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1121 tickFormatter: getContigNumberTickFormatter(cumulative.maxX, tickX),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1122 minTickSize: tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1123 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1124 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1125
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1126 bindTip(placeholder, series, plot, ordinalNumberToPrettyString, tickX, 'contig', 'bottom right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1127 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1128
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1129 cumulative.isInitialized = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1130 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1131
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1132 addLegendClickEvents(cumulative, filenames.length, showPlotWithInfo, refLengths);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1133
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1134 showPlotWithInfo(cumulative);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1135
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1136 $('#contigs_are_ordered').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1137 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1138 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1139
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1140 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1141
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1142 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1143
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1144 var nx = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1145 nx: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1146 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1147 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1148 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1149 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1150 showWithData: null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1151 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1152
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1153 nax: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1154 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1155 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1156 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1157 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1158 showWithData: null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1159 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1160
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1161 ngx: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1162 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1163 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1164 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1165 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1166 showWithData: null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1167 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1168
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1169 ngax: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1170 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1171 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1172 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1173 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1174 showWithData: null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1175 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1176
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1177 draw: function (name, title, colors, filenames, data, refPlotValue, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1178 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1179
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1180 $(scalePlaceholder).empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1181
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1182 var coordX = data.coord_x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1183 var coordY = data.coord_y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1184
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1185 var cur_filenames = data.filenames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1186 var info = nx[name];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1187
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1188 if (!info.isInitialized) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1189 var plotsN = cur_filenames.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1190 info.series = new Array(plotsN);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1191
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1192 for (var i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1193 var index = $.inArray(cur_filenames[order[i]], filenames);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1194 var plot_coordX = coordX[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1195 var plot_coordY = coordY[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1196 var size = plot_coordX.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1197
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1198 info.series[i] = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1199 data: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1200 label: filenames[index],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1201 number: index,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1202 color: colors[index]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1203 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1204 info.series[i].data.push([0.0, plot_coordY[0]]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1205 var currentLen = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1206 var x = 0.0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1207
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1208 for (var k = 0; k < size; k++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1209 info.series[i].data.push([plot_coordX[k], plot_coordY[k]]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1210 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1211
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1212 if (info.series[i].data[0][1] > info.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1213 info.maxY = info.series[i].data[0][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1214 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1215
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1216 var lastPt = info.series[i].data[info.series[i].data.length-1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1217 info.series[i].data.push([lastPt[0], 0]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1218 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1219
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1220 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1221 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1222 info.series[i].dashes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1223 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1224 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1225 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1226 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1227 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1228 info.series[i].lines = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1229 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1230 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1231 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1232 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1233 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1234
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1235 // for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1236 // plotsData[i].points = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1237 // show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1238 // radius: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1239 // fill: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1240 // fillColor: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1241 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1242 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1243
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1244 info.showWithData = function(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1245 var plot = $.plot(placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1246 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1247 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1248 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1249 container: $('useless-invisible-element-that-does-not-even-exist'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1250 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1251 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1252 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1253 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1254 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1255 mouseActiveRadius: 1000
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1256 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1257 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1258 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1259 // max: info.maxY,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1260 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1261 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1262 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1263 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1264 tickFormatter: getBpTickFormatter(info.maxY),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1265 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1266 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1267 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1268 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1269 max: 100,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1270 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1271 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1272 tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1273 if (val == 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1274 return '&nbsp;x<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>100%'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1275 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1276 return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1277 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1278 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1279 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1280 minTickSize: tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1281 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1282 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1283
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1284 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1285 firstLabel.prepend(title + '<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1286
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1287 bindTip(placeholder, series, plot, toPrettyString, 1, '%', 'top right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1288
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1289 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1290
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1291 info.isInitialized = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1292 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1293
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1294 addLegendClickEvents(info, filenames.length, showPlotWithInfo);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1295 showPlotWithInfo(info);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1296 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1297 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1298
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1299
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1300
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1301 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1302
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1303 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1304
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1305 var normal_scale_span =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1306 "<span class='selected-switch'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1307 'Normal' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1308 "</span>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1309 var normal_scale_a =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1310 "<a class='dotted-link' onClick='setNormalScale()'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1311 'Normal' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1312 "</a>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1313 var log_scale_span =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1314 "<span class='selected-switch'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1315 'logarithmic' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1316 "</span>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1317 var log_scale_a =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1318 "<a class='dotted-link' onClick='setLogScale()'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1319 'logarithmic' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1320 "</a>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1321
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1322 var show_all_span =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1323 "<span class='selected-switch gc'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1324 'Back to overview' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1325 "</span>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1326 var show_all_a =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1327 "&nbsp;&nbsp;&nbsp;<a class='dotted-link' onClick='showAll()'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1328 'Back to overview' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1329 "</a>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1330
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1331 var gc = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1332 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1333
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1334 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1335 plot: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1336 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1337 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1338 minPow: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1339 ticks: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1340 placeholder: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1341 legendPlaceholder: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1342 colors: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1343 yAxisLabeled: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1344
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1345 show_all_el: show_all_span,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1346 reference: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1347
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1348 normal_scale_el: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1349 log_scale_el: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1350
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1351 draw: function(name, title, colors, filenames, gcInfos, reflen, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1352 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1353 gc.normal_scale_el = normal_scale_span;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1354 gc.log_scale_el = log_scale_a;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1355 $(scalePlaceholder).html(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1356 "<div id='change-scale' style='margin-right: 3px; visibility: hidden;'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1357 "<span id='normal_scale_label'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1358 gc.normal_scale_el +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1359 "</span>&nbsp;/&nbsp;" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1360 "<span id='log_scale_label'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1361 gc.log_scale_el +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1362 "</span> scale" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1363 "</div>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1364 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1365
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1366 var refIndex = gcInfos.reference_index;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1367 if (!gc.isInitialized) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1368 gc.legendPlaceholder = legendPlaceholder;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1369 gc.placeholder = placeholder;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1370 gc.colors = colors;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1371 gc.filenames = filenames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1372
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1373 var bin_size = 1.0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1374 var plotsN = filenames.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1375 gc.series = new Array(plotsN + 1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1376 gc.series[0] = new Array(plotsN);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1377
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1378 gc.maxY = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1379 var minY = Number.MAX_VALUE;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1380
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1381 function updateMinY(y) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1382 if (y < minY && y != 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1383 minY = y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1384 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1385 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1386 function updateMaxY(y) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1387 if (y > gc.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1388 gc.maxY = y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1389 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1390 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1391
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1392 for (var i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1393 gc.series[0][i] = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1394 data: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1395 label: filenames[order[i]],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1396 number: order[i],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1397 color: colors[order[i]]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1398 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1399 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1400
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1401 function makeSeriesFromDistributions(distributionsXandY, series_i, plot_i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1402 var distributionsX = distributionsXandY[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1403 var distributionsY = distributionsXandY[1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1404
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1405 for (var j = 0; j < distributionsX.length; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1406 var x = distributionsX[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1407 var y = distributionsY[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1408 gc.series[series_i][plot_i].data.push([x, y]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1409 updateMinY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1410 updateMaxY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1411 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1412 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1413
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1414 function makeSeries(listsOfGCInfo, listOfGcDistributions, seriesIdx) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1415 for (var i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1416 if (listsOfGCInfo) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1417 makeSeriesFromInfo(listsOfGCInfo[order[i]], seriesIdx, i);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1418 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1419 makeSeriesFromDistributions(listOfGcDistributions[order[i]], seriesIdx, i);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1420 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1421 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1422 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1423
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1424 var listsOfGCInfo = gcInfos.lists_of_gc_info;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1425 var listOfGcDistributions = gcInfos.list_of_GC_distributions;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1426 makeSeries(listsOfGCInfo, listOfGcDistributions, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1427
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1428 function makeSeriesFromInfo(GC_info, series_i, i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1429 var cur_bin = 0.0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1430
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1431 var x = cur_bin;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1432 var y = filterAndSumGcInfo(GC_info, function(GC_percent) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1433 return GC_percent == cur_bin;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1434 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1435 gc.series[series_i][i].data.push([x, y]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1436
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1437 updateMinY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1438 updateMaxY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1439
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1440 while (cur_bin < 100.0 - bin_size) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1441 cur_bin += bin_size;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1442
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1443 x = cur_bin;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1444 y = filterAndSumGcInfo(GC_info, function(GC_percent) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1445 return GC_percent > (cur_bin - bin_size) && GC_percent <= cur_bin;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1446 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1447 gc.series[series_i][i].data.push([x, y]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1448
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1449 updateMinY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1450 updateMaxY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1451 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1452
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1453 x = 100.0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1454 y = filterAndSumGcInfo(GC_info, function(GC_percent) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1455 return GC_percent > cur_bin && GC_percent <= 100.0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1456 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1457
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1458 gc.series[series_i][i].data.push([x, y]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1459
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1460 updateMinY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1461 updateMaxY(y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1462 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1463
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1464 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1465 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1466 gc.series[0][i].dashes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1467 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1468 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1469 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1470 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1471 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1472 gc.series[0][i].lines = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1473 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1474 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1475 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1476 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1477 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1478
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1479 if (refIndex) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1480 gc.reference = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1481 gc.series[0].push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1482 data: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1483 label: 'reference',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1484 isReference: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1485 number: filenames.length,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1486 lines: {},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1487 dashes: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1488 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1489 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1490 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1491 color: '#000000'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1492 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1493 if (listsOfGCInfo) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1494 makeSeriesFromInfo(listsOfGCInfo[refIndex], 0, refIndex);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1495 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1496 makeSeriesFromDistributions(listOfGcDistributions[refIndex], 0, refIndex);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1497 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1498 gc.colors.push('#000000')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1499 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1500
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1501 if (gcInfos.list_of_GC_contigs_distributions) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1502 listOfGcDistributions = gcInfos.list_of_GC_contigs_distributions;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1503 var maxY = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1504 for (var file_n = 0; file_n < filenames.length; file_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1505 gc.series[file_n + 1] = new Array(1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1506 gc.series[file_n + 1][0] = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1507 data: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1508 label: filenames[order[file_n]],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1509 number: order[file_n],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1510 color: colors[order[file_n]],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1511 bars: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1512 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1513 lineWidth: 0.6,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1514 fill: 0.6,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1515 barWidth: 5
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1516 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1517 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1518
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1519 var distributionsX = listOfGcDistributions[file_n][0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1520 var distributionsY = listOfGcDistributions[file_n][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1521
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1522 for (var j = 0; j < distributionsX.length; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1523 var x = distributionsX[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1524 var y = distributionsY[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1525 gc.series[file_n + 1][0].data.push([x, y]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1526 maxY = Math.max(maxY, y);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1527 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1528 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1529 for (var file_n = 0; file_n < filenames.length; file_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1530 gc.series[file_n + 1][0].maxY = maxY;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1531 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1532 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1533 // Calculate the minimum possible non-zero Y to clip useless bottoms
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1534 // of logarithmic plots.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1535 var maxYTick = getMaxDecimalTick(gc.maxY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1536 gc.minPow = Math.round(Math.log(minY) / Math.log(10));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1537 gc.ticks = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1538 for (var pow = gc.minPow; Math.pow(10, pow) < maxYTick; pow++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1539 gc.ticks.push(Math.pow(10, pow));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1540 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1541 gc.ticks.push(Math.pow(10, pow));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1542
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1543 gc.isInitialized = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1544 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1545
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1546 gc.showWithData = showInNormalScaleWithData;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1547 if (gcInfos.list_of_GC_contigs_distributions) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1548 createLegend(gc.filenames, gc.colors, 0, gc.reference);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1549 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1550 addLegendClickEvents(gc, filenames.length, showPlotWithInfo, false, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1551
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1552 showPlotWithInfo(gc, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1553
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1554 $('#change-scale').css('visibility', 'visible');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1555 $('#gc_info').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1556 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1557 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1558
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1559 function showAll() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1560 $('#change-scale').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1561 $('#gc_info').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1562 $('#gc_contigs_info').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1563 createLegend(gc.filenames, gc.colors, 0, gc.reference);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1564
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1565 gc.show_all_el = show_all_span;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1566 gc.showWithData = gc.log_scale_el == log_scale_a ? showInNormalScaleWithData : showInLogarithmicScaleWithData;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1567
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1568 $('#show_all_label').html(gc.show_all_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1569 showPlotWithInfo(gc, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1570 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1571
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1572 function showPlot(index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1573 $('#change-scale').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1574 $('#gc_info').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1575 $('#gc_contigs_info').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1576 createLegend([gc.filenames[index - 1]], [gc.colors[index - 1]], index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1577
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1578 gc.show_all_el = show_all_a;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1579 gc.showWithData = showOneAssembly;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1580
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1581 $('#show_all_label').html(gc.show_all_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1582 showPlotWithInfo(gc, index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1583 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1584
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1585 function showOneAssembly(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1586 if (series == null) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1587 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1588 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1589
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1590 gc.plot = $.plot(gc.placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1591 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1592 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1593 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1594 container: $('useless-invisible-element-that-does-not-even-exist')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1595 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1596 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1597 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1598 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1599 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1600 mouseActiveRadius: 1000
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1601 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1602 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1603 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1604 max: series[0].maxY * 1.1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1605 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1606 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1607 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1608 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1609 tickFormatter: getJustNumberTickFormatter(gc.maxY),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1610 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1611 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1612 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1613 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1614 max: 100,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1615 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1616 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1617 tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1618 if (val == 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1619 return '&nbsp;100% GC'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1620 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1621 return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1622 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1623 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1624 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1625 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1626 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1627 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1628
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1629 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1630 firstLabel.append(' contigs');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1631 unBindTips(gc.placeholder);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1632 bindTip(gc.placeholder, series, gc.plot, getIntervalToPrettyString(5), 1, '%<span class="rhs">&nbsp;</span>GC', 'top right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1633 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1634
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1635 function showInNormalScaleWithData(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1636 if (series == null || gc.maxY == null)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1637 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1638
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1639 gc.yAxisLabeled = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1640
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1641 gc.plot = $.plot(gc.placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1642 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1643 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1644 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1645 container: $('useless-invisible-element-that-does-not-even-exist'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1646 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1647 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1648 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1649 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1650 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1651 mouseActiveRadius: 1000,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1652 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1653 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1654 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1655 // max: gc.maxY + 0.1 * gc.maxY,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1656 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1657 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1658 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1659 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1660 tickFormatter: windowsTickFormatter,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1661 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1662 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1663 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1664 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1665 max: 100,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1666 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1667 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1668 tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1669 if (val == 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1670 return '&nbsp;100% GC'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1671 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1672 return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1673 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1674 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1675 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1676 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1677 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1678 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1679
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1680 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1681 firstLabel.append(' windows');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1682 bindTip(gc.placeholder, series, gc.plot, toPrettyString, 1, '%<span class="rhs">&nbsp;</span>GC', 'top right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1683 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1684
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1685
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1686 function showInLogarithmicScaleWithData(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1687 if (series == null || gc.maxY == null || gc.minPow == null) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1688 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1689 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1690
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1691 gc.yAxisLabeled = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1692
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1693 gc.plot = $.plot(gc.placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1694 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1695 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1696 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1697 container: $('useless-invisible-element-that-does-not-even-exist'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1698 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1699 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1700 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1701 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1702 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1703 mouseActiveRadius: 1000
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1704 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1705 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1706 min: Math.pow(10, gc.minPow),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1707 // max: gc.maxY,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1708 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1709 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1710 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1711 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1712 tickFormatter: windowsTickFormatter,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1713 minTickSize: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1714 ticks: gc.ticks,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1715
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1716 transform: function(v) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1717 return Math.log(v + 0.0001)/*move away from zero*/ / Math.log(10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1718 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1719 inverseTransform: function(v) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1720 return Math.pow(v, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1721 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1722 tickDecimals: 3
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1723 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1724 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1725 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1726 max: 100,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1727 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1728 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1729 tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1730 if (val == 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1731 return '&nbsp;100%<span class="rhs">&nbsp;</span>GC'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1732 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1733 return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1734 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1735 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1736 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1737 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1738 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1739 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1740
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1741 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1742 firstLabel.append(' windows');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1743 bindTip(gc.placeholder, series, gc.plot, toPrettyString, 1, '% GC', 'top right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1744 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1745
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1746
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1747 function setLogScale() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1748 gc.normal_scale_el = normal_scale_a;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1749 gc.log_scale_el = log_scale_span;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1750 gc.showWithData = showInLogarithmicScaleWithData;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1751
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1752 $('#normal_scale_label').html(gc.normal_scale_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1753 $('#log_scale_label').html(gc.log_scale_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1754 showPlotWithInfo(gc, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1755 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1756
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1757
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1758 function setNormalScale() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1759 gc.normal_scale_el = normal_scale_span;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1760 gc.log_scale_el = log_scale_a;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1761 gc.showWithData = showInNormalScaleWithData;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1762
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1763 $('#normal_scale_label').html(gc.normal_scale_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1764 $('#log_scale_label').html(gc.log_scale_el);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1765 showPlotWithInfo(gc, 0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1766 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1767
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1768
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1769
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1770 function filterAndSumGcInfo(GC_info, condition) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1771 var contigs_lengths_cur_bin = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1772 for (var j = 0; j < GC_info.length; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1773 var GC = GC_info[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1774 var contig_length = GC[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1775 var GC_percent = GC[1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1776
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1777 if (condition(GC_percent) == true) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1778 contigs_lengths_cur_bin.push(contig_length);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1779 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1780 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1781 var val_bp = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1782 for (var j = 0; j < contigs_lengths_cur_bin.length; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1783 val_bp += contigs_lengths_cur_bin[j];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1784 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1785 return val_bp;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1786 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1787
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1788 function createLegend(labels, colors, index, reference) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1789 var selectedAssemblies = getSelectedAssemblies(labels);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1790 $('#legend-placeholder').empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1791 var selectors = "";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1792
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1793 labels.forEach(function(label, i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1794 var link = index ? '' : '<span id="' + labels[i] + '-switch"' + "class='plot-gc-type-switch dotted-link'>by contigs<br></span><br>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1795 var assemblyIdx = gc.filenames.indexOf(label);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1796 addLabelToLegend(assemblyIdx, label, selectedAssemblies, colors, link);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1797 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1798 if (reference) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1799 isChecked = (selectedAssemblies.length > 0 && selectedAssemblies.indexOf(gc.filenames.length.toString())) != -1 ? 'checked="checked"' : "";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1800 $('#legend-placeholder').append(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1801 '<div id="reference-label">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1802 '<label for="reference" style="color: #000000;">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1803 '<input type="checkbox" name="' + gc.filenames.length +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1804 '" checked="' + isChecked + '" id="reference">&nbsp;' + 'reference' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1805 '</label>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1806 '</div>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1807 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1808 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1809 if (index > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1810 for (var filenames_n = 0; filenames_n < gc.filenames.length; filenames_n++){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1811 selectors += '<br><span id="' + gc.filenames[filenames_n] + '-switch" ' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1812 "class='plot-switch dotted-link'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1813 gc.filenames[filenames_n] + "</span>";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1814 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1815 $('#legend-placeholder').append(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1816 "<br><br><div id='change-assembly' style='margin-right: 3px;'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1817 "<span id='show_all_label'>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1818 gc.show_all_el +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1819 "</span><br>" + selectors +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1820 "</div>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1821 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1822 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1823 addLinksToSwitches(index - 1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1824 addLegendClickEvents(gc, gc.series.length, showPlotWithInfo, false, index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1825 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1826
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1827 function addLinksToSwitches(index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1828 var filenames = gc.filenames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1829 for (filenames_n = 0; filenames_n < filenames.length; filenames_n++){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1830 var switchSpan = document.getElementById(filenames[filenames_n] + "-switch");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1831 $(switchSpan).click(getToggleSwitchFunction(filenames_n + 1));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1832 if (filenames_n == index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1833 switchSpan.className = 'plot-switch selected-switch gc';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1834 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1835 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1836 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1837
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1838 function getToggleSwitchFunction(index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1839 return function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1840 if (index > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1841 showPlot(index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1842 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1843 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1844 showAll();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1845 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1846 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1847 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1848 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1849
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1850 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1851
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1852 var frc = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1853 genes: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1854 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1855
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1856 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1857 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1858 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1859 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1860
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1861 yAxisLabeled: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1862 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1863
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1864 operons: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1865 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1866
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1867 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1868 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1869 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1870 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1871
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1872 yAxisLabeled: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1873 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1874
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1875 misassemblies: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1876 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1877
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1878 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1879 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1880 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1881 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1882
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1883 yAxisLabeled: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1884 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1885
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1886 draw: function (name, title, colors, filenames, data, refGenesNumber, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1887 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1888 // div.html(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1889 // "<span class='plot-header'>" + kind[0].toUpperCase() + kind.slice(1) + "s covered</span>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1890 // "<div class='plot-placeholder' id='" + kind + "s-plot-placeholder'></div>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1891 // );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1892 $(scalePlaceholder).empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1893
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1894 var info = frc[name];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1895 var coordX = data.coord_x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1896 var coordY = data.coord_y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1897
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1898 info.yAxisLabeled = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1899 var cur_filenames = data.filenames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1900 if (!info.isInitialized) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1901 var plotsN = cur_filenames.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1902 info.series = new Array(plotsN);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1903
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1904 info.maxY = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1905 info.maxX = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1906
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1907 for (var i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1908 var index = $.inArray(cur_filenames[order[i]], filenames);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1909 var plot_coordX = coordX[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1910 var plot_coordY = coordY[order[i]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1911 var featureSpace = plot_coordX[plot_coordX.length - 1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1912 var maxY = plot_coordY[plot_coordY.length - 1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1913
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1914 info.series[i] = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1915 data: [],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1916 label: filenames[index],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1917 number: index,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1918 color: colors[index]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1919 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1920
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1921 info.series[i].data.push([0.0, plot_coordY[0]]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1922
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1923 if (featureSpace > info.maxX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1924 info.maxX = featureSpace;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1925 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1926 for (var k = 0; k < plot_coordX.length; k++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1927 info.series[i].data.push([plot_coordX[k], plot_coordY[k]]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1928 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1929
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1930 if (maxY > info.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1931 info.maxY = maxY;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1932 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1933 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1934
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1935 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1936 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1937 info.series[i].dashes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1938 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1939 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1940 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1941 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1942 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1943 info.series[i].lines = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1944 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1945 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1946 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1947 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1948 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1949
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1950 info.showWithData = function(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1951 var plot = $.plot(placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1952 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1953 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1954 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1955 container: $('useless-invisible-element-that-does-not-even-exist')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1956 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1957 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1958 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1959 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1960 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1961 mouseActiveRadius: 1000,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1962 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1963 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1964 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1965 max: Math.max(100, info.maxY),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1966 labelWidth: 145,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1967 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1968 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1969 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1970 tickFormatter: getPercentTickFormatter(Math.max(100, info.maxY)),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1971 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1972 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1973 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1974 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1975 max: info.maxX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1976 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1977 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1978 tickFormatter: getJustNumberTickFormatter(info.maxX, ' ' + name),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1979 minTickSize: tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1980 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1981 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1982
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1983 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1984 firstLabel.prepend('Genome coverage<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1985
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1986 bindTip(placeholder, series, plot, frcNumberToPrettyString, tickX, name, 'bottom right', false, '%');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1987 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1988
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1989 info.isInitialized = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1990 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1991
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1992 addLegendClickEvents(info, filenames.length, showPlotWithInfo, refGenesNumber);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1993 showPlotWithInfo(info);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1994 $('#frc_info').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1995 $('.frc_plot_name').html(name);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1996 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1997 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1998
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
1999
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2000
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2001 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2002
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2003 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2004
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2005 /**********/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2006 /* COLORS */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2007
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2008 // var colors = ["#FF5900", "#008FFF", "#168A16", "#7C00FF", "#00B7FF", "#FF0080", "#7AE01B", "#782400", "#E01B6A"];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2009 var standard_colors = [
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2010 '#FF0000', //red
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2011 '#0000FF', //blue
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2012 '#008000', //green
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2013 '#FFA500', //orange
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2014 '#FF00FF', //fushua
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2015 '#CCCC00', //yellow
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2016 '#800000', //maroon
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2017 '#00CCCC', //aqua
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2018 '#808080', //gray
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2019 '#800080', //purple
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2020 '#808000', //olive
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2021 '#000080', //navy
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2022 '#008080', //team
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2023 '#00FF00', //lime
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2024 ];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2025
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2026 function distinctColors(count) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2027 var colors = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2028 for(var hue = 0; hue < 360; hue += 360 / count) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2029 var color = hsvToRgb(hue, 100, 100);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2030 var colorStr = '#' + color[0].toString(16) + color[1].toString(16) + color[2].toString(16);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2031 colors.push();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2032 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2033 return colors;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2034 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2035
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2036 /**************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2037 /* FORMATTING */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2038 function isIntegral(num) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2039 return num % 1 === 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2040 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2041
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2042 function isFractional(num) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2043 return !isIntegral(num);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2044 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2045
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2046 function getIntervalToPrettyString(interval) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2047 return function(num, unit) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2048 return intervalToPrettyString(interval, num, unit);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2049 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2050 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2051
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2052 function intervalToPrettyString(interval, num, unit) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2053 if (typeof num === 'number') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2054 var str = toPrettyString(num);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2055 str += '-' + toPrettyString(num + interval);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2056 str += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2057 return str;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2058 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2059 return num;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2060 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2061 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2062
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2063 function toPrettyString(num, unit) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2064 if (typeof num === 'number') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2065 var str;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2066 if (num <= 9999) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2067 if (isFractional(num)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2068 if (isIntegral(num * 10)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2069 str = num.toFixed(1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2070 } else if (isIntegral(num * 100) || num >= 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2071 str = num.toFixed(2);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2072 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2073 str = num.toFixed(3);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2074 if (str.slice(-1) == '0')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2075 str = str.slice(0, -1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2076 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2077 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2078 str = num.toFixed(0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2079 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2080 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2081 str = num.toFixed(0).replace(/(\d)(?=(\d\d\d)+(?!\d))/g,'$1<span class="hs"></span>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2082 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2083 str += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2084 return str;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2085 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2086 return num;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2087 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2088 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2089
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2090 //elif isinstance(value, float):
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2091 // if value == 0.0:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2092 // return '0'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2093 // if human_readable:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2094 // if unit == '%':
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2095 // value *= 100
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2096 // precision = 2
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2097 // for i in range(10, 1, -1):
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2098 // if abs(value) < 1./(10**i):
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2099 // precision = i + 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2100 // break
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2101 // return '{value:.{precision}f}{unit_str}'.format(**locals())
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2102 // else:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2103 // return str(value)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2104
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2105
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2106 function refToPrettyString(num, refs) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2107 return refs[Math.round(num)-1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2108 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2109
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2110 function ordinalNumberToPrettyString(num, unit, tickX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2111 num = num * tickX;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2112 var numStr = num.toString();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2113 var lastDigit = numStr[numStr.length-1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2114 var beforeLastDigit = numStr[numStr.length-2];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2115
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2116 var res = toPrettyString(num);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2117
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2118 if (lastDigit == '1' && beforeLastDigit != '1') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2119 res += "st";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2120 } else if (lastDigit == '2' && beforeLastDigit != '1') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2121 res += "nd";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2122 } else if (lastDigit == '3' && beforeLastDigit != '1') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2123 res += "rd";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2124 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2125 res += 'th';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2126 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2127
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2128 res += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2129
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2130 return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2131 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2132
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2133 function frcNumberToPrettyString(num, unit, tickX, index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2134 if (index % 2 == 0 && num > 0) num--;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2135 return toPrettyString(num) + ' ' + unit;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2136 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2137
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2138 function getMaxDecimalTick(maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2139 var maxYTick = maxY;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2140 if (maxY <= 100000000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2141 maxYTick = Math.ceil((maxY+1)/10000000000)*10000000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2142 } if (maxY <= 10000000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2143 maxYTick = Math.ceil((maxY+1)/1000000000)*1000000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2144 } if (maxY <= 1000000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2145 maxYTick = Math.ceil((maxY+1)/100000000)*100000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2146 } if (maxY <= 100000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2147 maxYTick = Math.ceil((maxY+1)/10000000)*10000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2148 } if (maxY <= 10000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2149 maxYTick = Math.ceil((maxY+1)/1000000)*1000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2150 } if (maxY <= 1000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2151 maxYTick = Math.ceil((maxY+1)/100000)*100000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2152 } if (maxY <= 100000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2153 maxYTick = Math.ceil((maxY+1)/10000)*10000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2154 } if (maxY <= 10000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2155 maxYTick = Math.ceil((maxY+1)/1000)*1000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2156 } if (maxY <= 1000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2157 maxYTick = Math.ceil((maxY+1)/100)*100.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2158 } if (maxY <= 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2159 maxYTick = Math.ceil((maxY+1)/10)*10.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2160 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2161 return maxYTick;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2162 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2163
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2164 function getBpTickFormatter(maxY, additionalText) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2165 additionalText = additionalText || '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2166
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2167 return function(val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2168 var res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2169 if (val == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2170 res = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2171
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2172 } else if (axis.max >= 1000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2173 res = val / 1000000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2174
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2175 if (val > axis.max - 1 || val + axis.tickSize >= 1000000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2176 res = additionalText + toPrettyString(res, 'Mbp');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2177 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2178 res = toPrettyString(res);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2179 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2180 } else if (axis.max >= 1000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2181 res = val / 1000;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2182
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2183 if (val > axis.max - 1 || val + axis.tickSize >= 1000000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2184 res = additionalText + toPrettyString(res, 'kbp');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2185 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2186 res = toPrettyString(res);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2187 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2188 } else if (axis.max >= 1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2189 res = val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2190
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2191 if (val > axis.max - 1 || val + axis.tickSize >= 1000) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2192 res = additionalText + toPrettyString(res, 'bp');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2193 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2194 res = toPrettyString(res);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2195 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2196 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2197 return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2198 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2199 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2200
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2201 function windowsTickFormatter(v, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2202 return toPrettyString(v);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2203 // var val = v.toFixed(0);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2204 // if (!gc.yAxisLabeled && val > gc.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2205 // gc.yAxisLabeled = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2206 // var res = val + ' window';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2207 // if (val > 1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2208 // res += 's'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2209 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2210 // return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2211 // } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2212 // return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2213 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2214 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2215
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2216 function getBpLogTickFormatter(maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2217 return getBpTickFormatter(maxY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2218 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2219
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2220 function getContigNumberTickFormatter(maxX, tickX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2221 return function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2222 if (typeof axis.tickSize == 'number' && val > maxX - axis.tickSize) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2223 return "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + ordinalNumberToPrettyString(val, 'contig', tickX);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2224 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2225 return val * tickX;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2226 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2227 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2228 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2229
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2230 function getJustNumberTickFormatter(maxY, additionalText) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2231 return function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2232 additionalText = additionalText || '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2233 if (val > axis.max - axis.tickSize) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2234 res = toPrettyString(val) + additionalText;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2235 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2236 res = toPrettyString(val);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2237 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2238 return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2239 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2240 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2241
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2242 function getPercentTickFormatter(maxY, additionalText) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2243 return function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2244 additionalText = additionalText || '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2245 if (val > maxY + 1 || val == 100) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2246 res = additionalText + toPrettyString(val, '%');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2247 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2248 res = toPrettyString(val);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2249 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2250 return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2251 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2252 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2253
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2254 function trim(str) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2255 return str.replace(/^\s+/g, '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2256 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2257
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2258 function initial_spaces_to_nbsp(str, metricName) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2259 if (metricName.length > 0 && metricName[0] == ' ') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2260 str = '&nbsp;&nbsp;&nbsp;' + str;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2261 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2262 return str;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2263 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2264
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2265 function containsObject(obj, list) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2266 var i;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2267 for (i = 0; i < list.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2268 if (list[i] === obj) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2269 return true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2270 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2271 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2272
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2273 return false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2274 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2275
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2276 function addLegendClickEvents(info, numLegendItems, showPlotWithInfo, showReference, index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2277 if (showReference) numLegendItems++;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2278 for (var i = 0; i < numLegendItems; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2279 $('#legend-placeholder input[name=' + i + ']').click(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2280 showPlotWithInfo(info, index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2281 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2282 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2283 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2284
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2285 /*********************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2286 /* GLOSSARY TOOLTIPS */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2287 function addTooltipIfDefinitionExists(glossary, metricName) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2288 metricName = trim(metricName);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2289
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2290 if (containsObject(metricName, Object.keys(glossary))) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2291 return '<a class="tooltip-link" rel="tooltip" title="' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2292 metricName + ' ' + glossary[metricName] + '">' + metricName + '</a>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2293 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2294 return metricName;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2295 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2296 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2297
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2298 /*************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2299 /* PLOT TIPS */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2300 function bindTip(placeholder, series, plot, xToPrettyStringFunction, tickX, xUnit, position, summaryPlots, unitY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2301 var prevPoint = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2302 var prevIndex = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2303
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2304 $(placeholder).bind("plothover", function(event, pos, item) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2305 if (dragTable && dragTable.isDragging)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2306 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2307
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2308 if (item) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2309 if (prevPoint != item.dataIndex || (summaryPlots && item.seriesIndex != prevIndex)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2310 prevPoint = item.dataIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2311 prevIndex = item.seriesIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2312 var x = item.datapoint[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2313
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2314 showTip(item.pageX, item.pageY, plot.offset(),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2315 plot.width(), plot.height(),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2316 series, item.seriesIndex, x, item.dataIndex,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2317 xToPrettyStringFunction(x, xUnit, tickX, item.dataIndex) + ':',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2318 position, summaryPlots, unitY);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2319 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2320 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2321 $('#plot_tip').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2322 $('#plot_tip_vertical_rule').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2323 $('#plot_tip_horizontal_rule').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2324 prevPoint = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2325 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2326 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2327 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2328
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2329 function unBindTips(placeholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2330 $(placeholder).unbind("plothover");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2331 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2332
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2333 var tipElementExists = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2334 function showTip(pageX, pageY, offset, plotWidth, plotHeight,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2335 series, centralSeriesIndex, xPos, xIndex, xStr, position, summaryPlots, unitY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2336 const LINE_HEIGHT = 16; // pixels
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2337
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2338 position = ((position != null) ? position : 'bottom right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2339 // pageY -= LINE_HEIGHT * (centralSeriesIndex + 1.5);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2340
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2341 var directions = position.split(' ');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2342
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2343 if (!tipElementExists) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2344 $('<div id="plot_tip" class="white_stroked"></div>').appendTo('body');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2345
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2346 $('<div id="plot_tip_vertical_rule"></div>').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2347 height: plotHeight,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2348 }).appendTo('body');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2349
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2350 $('<div id="plot_tip_horizontal_rule"></div>').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2351 width: plotWidth,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2352 }).appendTo('body');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2353
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2354 tipElementExists = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2355 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2356
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2357 $('#plot_tip').html('').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2358 top: pageY + 5 - ((directions[0] == 'top') ? LINE_HEIGHT * (series.length + 2) : 0),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2359 left: pageX + 10,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2360 }).show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2361
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2362 $('#plot_tip_vertical_rule').html('').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2363 top: offset.top,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2364 left: pageX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2365 }).show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2366
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2367 $('#plot_tip_horizontal_rule').html('').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2368 top: pageY,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2369 left: offset.left,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2370 }).show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2371
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2372 $('<div>' + xStr + '</div>').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2373 height: LINE_HEIGHT,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2374 }).appendTo('#plot_tip');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2375
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2376 var sortedYsAndColors = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2377 for (var i = 0; i < series.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2378 if (!summaryPlots || (summaryPlots && series[i].data[xIndex] != undefined && series[i].data[xIndex][1] != null)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2379 sortedYsAndColors.push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2380 y: summaryPlots ? series[i].data[xIndex][1] : (i == centralSeriesIndex ? (series[i].data[xIndex] || series[i].data[series[i].data.length - 1])[1] :
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2381 findNearestPoint(series[i].data, xPos)),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2382 color: series[i].color,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2383 label: (series[i].isReference ? 'Reference' : series[i].label),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2384 isCurrent: i == centralSeriesIndex,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2385 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2386 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2387 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2388 sortedYsAndColors.sort(function(a, b) { return a.y < b.y;});
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2389
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2390 for (i = 0; i < sortedYsAndColors.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2391 var item = sortedYsAndColors[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2392
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2393 $('<div id="tip_line' + i + '">' + toPrettyString(item.y) + (unitY ? unitY : '') +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2394 ', <span style="color: ' + item.color + ';">' + item.label + '</span></div>').css({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2395 height: LINE_HEIGHT,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2396 "font-weight": item.isCurrent ? "bold" : "normal",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2397 }).appendTo('#plot_tip');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2398 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2399 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2400
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2401 function findNearestPoint(points, x) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2402 for (var i = 0; i < points.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2403 if (points[i][0] >= x) return points[i][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2404 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2405 return points[points.length-1][1]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2406 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2407
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2408 function addLabelToLegend(idx, label, selectedLabels, colors, link) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2409 var isChecked = (selectedLabels.length > 0 && selectedLabels.indexOf(idx.toString())) != -1 ? 'checked="checked"' : "";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2410 $('#legend-placeholder').append('<div>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2411 '<label for="' + label + '" style="color: ' + colors[idx] + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2412 '<input type="checkbox" name="' + idx + '"' + isChecked + ' id="' + label + '">&nbsp;' + label + '</label>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2413 (link ? '<br>' + link : '') + '</div>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2414 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2415
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2416 function getSelectedAssemblies(labels) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2417 var selectedAssemblies = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2418 var labelsMatch = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2419 var legendLabels = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2420 $('#legend-placeholder input[type="checkbox"]').each(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2421 legendLabels.push($(this).attr('id'));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2422 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2423 if (labels.every(function(label, i) { return ($.inArray(label, legendLabels) != -1 || label == 'reference')}) ) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2424 labelsMatch = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2425 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2426 if (labelsMatch) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2427 $('#legend-placeholder input:checked[type="checkbox"]').each(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2428 selectedAssemblies.push($(this).attr('name'));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2429 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2430 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2431 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2432 selectedAssemblies = Array.apply(null, {length: labels}).map(Number.call, Number);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2433 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2434 return selectedAssemblies;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2435 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2436
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2437 // Cookie functions based on http://www.quirksmode.org/js/cookies.html
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2438 // Cookies won't work for local files.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2439
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2440 var createCookie = function(name, value, days) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2441 var expires = '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2442 if (days) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2443 var date = new Date();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2444 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2445 expires = '; expires=' + date.toGMTString();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2446 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2447 var path = document.location.pathname;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2448 document.cookie = name + '=' + value + expires + '; path=' + path;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2449 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2450
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2451 var readCookie = function(name) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2452 var nameEQ = name + '=';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2453 var ca = document.cookie.split(';');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2454 for(var i = 0; i < ca.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2455 var c = ca[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2456 while (c.charAt(0) == ' ') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2457 c = c.substring(1, c.length);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2458 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2459 if (c.indexOf(nameEQ) == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2460 return c.substring(nameEQ.length, c.length);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2461 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2462 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2463 return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2464 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2465
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2466 var eraseCookie = function(name) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2467 createCookie(name, '', -1);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2468 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2469
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2470
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2471 // Dean's forEach: http://dean.edwards.name/base/forEach.js
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2472 /*forEach, version 1.0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2473 Copyright 2006, Dean Edwards
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2474 License: http://www.opensource.org/licenses/mit-license.php */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2475
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2476 // array-like enumeration
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2477 if (!Array.forEach) { // mozilla already supports this
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2478 Array.forEach = function(array, block, context) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2479 for (var i = 0; i < array.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2480 block.call(context, array[i], i, array);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2481 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2482 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2483 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2484
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2485 // generic enumeration
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2486 Function.prototype.forEach = function(object, block, context) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2487 for (var key in object) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2488 if (typeof this.prototype[key] == "undefined") {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2489 block.call(context, object[key], key, object);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2490 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2491 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2492 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2493
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2494 // character enumeration
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2495 String.forEach = function(string, block, context) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2496 Array.forEach(string.split(""), function(chr, index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2497 block.call(context, chr, index, string);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2498 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2499 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2500
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2501 // globally resolve forEach enumeration
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2502 var forEach = function(object, block, context) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2503 if (object) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2504 if (object instanceof Function) { // functions have a "length" property
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2505 Function.forEach(object, block, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2506
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2507 } else if (object.each instanceof Function) { // jQuery
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2508 object.each(function(i, elt) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2509 block(elt);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2510 }, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2511
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2512 } else if (object.forEach instanceof Function) { // the object implements a custom forEach method
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2513 object.forEach(block, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2514
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2515 } else if (typeof object == "string") { // a string
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2516 String.forEach(object, block, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2517
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2518 } else if (typeof object.length == "number") { // array-like object
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2519 Array.forEach(object, block, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2520
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2521 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2522 Object.forEach(object, block, context);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2523 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2524 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2525 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2526
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2527
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2528 jQuery.fn.exists = function(){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2529 return jQuery(this).length > 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2530 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2531
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2532
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2533 function Range(from, to) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2534 var r = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2535 for (var i = from; i < to; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2536 r.push(i);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2537 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2538 return r;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2539 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2540
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2541
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2542
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2543 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2544
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2545 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2546 /**
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2547 * HSV to RGB color conversion
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2548 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2549 * H runs from 0 to 360 degrees
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2550 * S and V run from 0 to 100
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2551 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2552 * Ported from the excellent java algorithm by Eugene Vishnevsky at:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2553 * http://www.cs.rit.edu/~ncs/color/t_convert.html
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2554 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2555 function hsvToRgb(h, s, v) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2556 var r, g, b;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2557 var i;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2558 var f, p, q, t;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2559
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2560 // Make sure our arguments stay in-range
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2561 h = Math.max(0, Math.min(360, h));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2562 s = Math.max(0, Math.min(100, s));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2563 v = Math.max(0, Math.min(100, v));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2564
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2565 // We accept saturation and value arguments from 0 to 100 because that's
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2566 // how Photoshop represents those values. Internally, however, the
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2567 // saturation and value are calculated from a range of 0 to 1. We make
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2568 // That conversion here.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2569 s /= 100;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2570 v /= 100;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2571
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2572 if(s == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2573 // Achromatic (grey)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2574 r = g = b = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2575 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2576 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2577
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2578 h /= 60; // sector 0 to 5
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2579 i = Math.floor(h);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2580 f = h - i; // factorial part of h
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2581 p = v * (1 - s);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2582 q = v * (1 - s * f);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2583 t = v * (1 - s * (1 - f));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2584
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2585 switch(i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2586 case 0:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2587 r = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2588 g = t;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2589 b = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2590 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2591
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2592 case 1:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2593 r = q;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2594 g = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2595 b = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2596 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2597
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2598 case 2:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2599 r = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2600 g = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2601 b = t;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2602 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2603
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2604 case 3:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2605 r = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2606 g = q;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2607 b = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2608 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2609
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2610 case 4:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2611 r = t;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2612 g = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2613 b = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2614 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2615
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2616 default: // case 5:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2617 r = v;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2618 g = p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2619 b = q;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2620 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2621
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2622 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2623 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2624
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2625 function hslToRgb(h, s, l){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2626 var r, g, b;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2627
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2628 if(s == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2629 r = g = b = l; // achromatic
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2630 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2631 function hue2rgb(p, q, t){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2632 if(t < 0) t += 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2633 if(t > 1) t -= 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2634 if(t < 1/6) return p + (q - p) * 6 * t;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2635 if(t < 1/2) return q;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2636 if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2637 return p;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2638 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2639
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2640 var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2641 var p = 2 * l - q;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2642 r = hue2rgb(p, q, h + 1/3);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2643 g = hue2rgb(p, q, h);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2644 b = hue2rgb(p, q, h - 1/3);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2645 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2646
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2647 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2648 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2649 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2650
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2651 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2652
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2653 var gns = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2654 features: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2655 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2656
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2657 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2658 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2659 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2660 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2661
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2662 yAxisLabeled: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2663 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2664
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2665 operons: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2666 isInitialized: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2667
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2668 maxY: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2669 maxYTick: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2670 series: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2671 showWithData: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2672
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2673 yAxisLabeled: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2674 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2675
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2676 draw: function (name, title, colors, filenames, data, refFeaturesNumber, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2677 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2678 // div.html(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2679 // "<span class='plot-header'>" + kind[0].toUpperCase() + kind.slice(1) + "s covered</span>" +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2680 // "<div class='plot-placeholder' id='" + kind + "s-plot-placeholder'></div>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2681 // );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2682 $(scalePlaceholder).empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2683
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2684 var info = gns[name];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2685
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2686 info.yAxisLabeled = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2687 var cur_filenames = data.filenames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2688 if (!info.isInitialized) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2689 var filesFeatureInContigs = data.filesFeatureInContigs;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2690 var kind = data.kind;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2691
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2692 var plotsN = cur_filenames.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2693 info.series = new Array(plotsN);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2694
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2695 info.maxY = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2696 info.maxX = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2697
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2698 if (refFeaturesNumber) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2699 info.maxY = refFeaturesNumber;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2700 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2701
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2702 for (var fi = 0; fi < plotsN; fi++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2703 var index = $.inArray(cur_filenames[order[fi]], filenames);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2704 var filename = filenames[index];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2705 var featureInContigs = filesFeatureInContigs[filename];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2706
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2707 info.series[fi] = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2708 data: [[0, 0]],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2709 label: filenames[index],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2710 number: index,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2711 color: colors[index]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2712 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2713
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2714 var contigNo = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2715 var totalFull = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2716
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2717 for (var k = 0; k < featureInContigs.length; k++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2718 contigNo += 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2719 totalFull += featureInContigs[k];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2720
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2721 info.series[fi].data.push([contigNo, totalFull]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2722
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2723 if (info.series[fi].data[k][1] > info.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2724 info.maxY = info.series[fi].data[k][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2725 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2726 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2727
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2728 if (featureInContigs.length > info.maxX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2729 info.maxX = featureInContigs.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2730 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2731 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2732
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2733 for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2734 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2735 info.series[i].dashes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2736 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2737 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2738 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2739 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2740 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2741 info.series[i].lines = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2742 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2743 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2744 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2745 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2746 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2747
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2748 // for (i = 0; i < plotsN; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2749 // plotsData[i].points = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2750 // show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2751 // radius: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2752 // fill: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2753 // fillColor: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2754 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2755 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2756
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2757 if (refFeaturesNumber) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2758 info.series.push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2759 data: [[0, refFeaturesNumber], [info.maxX, refFeaturesNumber]],
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2760 label: 'reference,&nbsp;' + toPrettyString(refFeaturesNumber, 'features'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2761 isReference: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2762 dashes: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2763 show: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2764 lineWidth: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2765 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2766 yaxis: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2767 number: filenames.length,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2768 color: '#000000'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2769 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2770
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2771 colors.push('#000000');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2772 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2773
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2774 info.showWithData = function(series, colors) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2775 var plot = $.plot(placeholder, series, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2776 shadowSize: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2777 colors: colors,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2778 legend: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2779 container: $('useless-invisible-element-that-does-not-even-exist'),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2780 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2781 grid: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2782 borderWidth: 1,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2783 hoverable: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2784 autoHighlight: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2785 mouseActiveRadius: 1000,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2786 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2787 yaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2788 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2789 // max: info.maxY,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2790 labelWidth: 120,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2791 reserveSpace: true,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2792 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2793 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2794 tickFormatter: function (val, axis) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2795 // if (!info.yAxisLabeled && val > info.maxY) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2796 // info.yAxisLabeled = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2797 // var res = val + ' ' + kind;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2798 // if (val > 1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2799 // res += 's'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2800 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2801 // return res;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2802 // } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2803 return val;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2804 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2805 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2806 minTickSize: 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2807 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2808 xaxis: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2809 min: 0,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2810 max: info.maxX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2811 lineWidth: 0.5,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2812 color: '#000',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2813 tickFormatter: getContigNumberTickFormatter(info.maxX, tickX),
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2814 minTickSize: tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2815 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2816 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2817
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2818 var firstLabel = $('.yAxis .tickLabel').last();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2819 firstLabel.append(' ' + name);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2820
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2821 bindTip(placeholder, series, plot, ordinalNumberToPrettyString, tickX, 'contig', 'bottom right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2822 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2823
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2824 info.isInitialized = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2825 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2826
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2827 addLegendClickEvents(info, filenames.length, showPlotWithInfo, refFeaturesNumber);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2828
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2829 showPlotWithInfo(info);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2830
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2831 $('#contigs_are_ordered').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2832 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2833 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2834
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2835
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2836
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2837 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2838
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2839 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2840 /*
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2841 DT v1.0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2842 June 26, 2008
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2843 Dan Vanderkam, http://danvk.org/DT/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2844 http://code.google.com/p/DT/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2845
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2846 This is code was based on:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2847 - Stuart Langridge's SortTable (kryogenix.org/code/browser/sorttable)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2848 - Mike Hall's draggable class (http://www.brainjar.com/dhtml/drag/)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2849 - A discussion of permuting table columns on comp.lang.javascript
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2850
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2851 Licensed under the MIT license.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2852 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2853
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2854 // Here's the notice from Mike Hall's draggable script:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2855 //*****************************************************************************
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2856 // Do not remove this notice.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2857 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2858 // Copyright 2001 by Mike Hall.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2859 // See http://www.brainjar.com for terms of use.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2860 //*****************************************************************************
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2861
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2862 var classes = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2863 cell_of_emptySpace: 'cell_of_empty_space',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2864 cell_of_movingTable: 'cell_of_moving_table',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2865 newTable: 'moving_table',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2866 handle: 'drag_handle',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2867 hoveredCell: 'hovered_column_td',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2868 assemblyName: 'assembly_name',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2869
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2870 bottomCell_of_emptySpace: 'bottom_cell_of_empty_space',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2871 topCell_of_emptySpace: 'top_cell_of_empty_space',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2872 leftToCell_of_emptySpace: 'left_to_cell_of_empty_space',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2873 rightToCell_of_emptySpace: 'right_to_cell_of_empty_space',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2874
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2875 mainReportTable_id: 'main_report_table',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2876 totalReportJson_id: 'total-report-json',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2877 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2878
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2879 var dragTable = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2880 isDragging: false,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2881
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2882 // How far should the mouse move before it's considered a drag, not a click?
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2883 dragRadius2: 0, // 100,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2884 setMinDragDistance: function(x) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2885 DT.dragRadius2 = x * x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2886 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2887
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2888 // How long should cookies persist? (in days)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2889 cookieDays: 365,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2890 setCookieDays: function(x) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2891 DT.cookieDays = x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2892 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2893
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2894 // Determine browser and version.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2895 // TODO: eliminate browser sniffing except where it's really necessary.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2896 Browser: function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2897 var ua, s, i;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2898
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2899 this.isIE = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2900 this.isNS = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2901 this.version = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2902 ua = navigator.userAgent;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2903
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2904 s = "MSIE";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2905 if ((i = ua.indexOf(s)) >= 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2906 this.isIE = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2907 this.version = parseFloat(ua.substr(i + s.length));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2908 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2909 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2910
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2911 s = "Netscape6/";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2912 if ((i = ua.indexOf(s)) >= 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2913 this.isNS = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2914 this.version = parseFloat(ua.substr(i + s.length));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2915 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2916 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2917
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2918 // Treat any other "Gecko" browser as NS 6.1.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2919 s = "Gecko";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2920 if ((i = ua.indexOf(s)) >= 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2921 this.isNS = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2922 this.version = 6.1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2923 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2924 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2925 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2926 browser: null,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2927
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2928 // Detect all draggable tables and attach handlers to their headers.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2929 init: function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2930 // Don't initialize twice
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2931 if (arguments.callee.done)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2932 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2933 else
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2934 arguments.callee.done = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2935
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2936 // if (_dgtimer)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2937 // clearInterval(_dgtimer);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2938
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2939 if (!document.createElement || !document.getElementsByTagName)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2940 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2941
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2942 DT.dragObj.zIndex = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2943 DT.browser = new DT.Browser();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2944 forEach(document.getElementsByTagName('table'), function(table) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2945 if ($(table).hasClass('draggable')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2946 DT.makeDraggable(table);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2947 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2948 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2949 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2950
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2951 // The thead business is taken straight from sorttable.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2952 makeDraggable: function(table) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2953 DT.dragObj.table = table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2954
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2955 if (table.getElementsByTagName('thead').length == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2956 thead = document.createElement('thead');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2957 thead.appendChild(table.rows[0]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2958 table.insertBefore(thead, table.firstChild);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2959 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2960
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2961 // Safari doesn't support table.tHead, sigh
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2962 if (table.tHead == null) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2963 table.tHead = table.getElementsByTagName('thead')[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2964 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2965
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2966 var handles = $('.' + classes.handle) || table.tHead.rows[0].cells;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2967
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2968 forEach(handles, function(handle) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2969 handle.onmousedown = DT.dragStart;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2970 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2971 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2972
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2973 // Global object to hold drag information.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2974 dragObj: {},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2975
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2976 getEventPosition: function(event) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2977 var x, y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2978 if (DT.browser.isIE) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2979 x = window.event.clientX + document.documentElement.scrollLeft
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2980 + document.body.scrollLeft;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2981 y = window.event.clientY + document.documentElement.scrollTop
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2982 + document.body.scrollTop;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2983 return {x: x, y: y};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2984 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2985 return {x: event.pageX, y: event.pageY};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2986 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2987
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2988 // Determine the position of this element on the page. Many thanks to Magnus
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2989 // Kristiansen for help making this work with "position: fixed" elements.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2990 getPositionOnThePage: function(elt, stopAtRelative) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2991 var ex = 0, ey = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2992 do {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2993 var curStyle = DT.browser.isIE ? elt.currentStyle
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2994 : window.getComputedStyle(elt, '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2995 var supportFixed = !(DT.browser.isIE &&
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2996 DT.browser.version < 7);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2997 if (stopAtRelative && curStyle.position == 'relative') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2998 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
2999 } else if (supportFixed && curStyle.position == 'fixed') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3000 // Get the fixed el's offset
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3001 ex += parseInt(curStyle.left, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3002 ey += parseInt(curStyle.top, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3003 // Compensate for scrolling
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3004 ex += document.body.scrollLeft;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3005 ey += document.body.scrollTop;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3006 // End the loop
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3007 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3008 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3009 ex += elt.offsetLeft;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3010 ey += elt.offsetTop;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3011 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3012 } while (elt = elt.offsetParent);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3013 return {x: ex, y: ey};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3014 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3015
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3016 // MouseDown handler -- sets up the appropriate mousemove/mouseup handlers
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3017 // and fills in the global DT.dragObj object.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3018 dragStart: function(event, id) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3019 DT.isDragging = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3020
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3021 var drag_obj = DT.dragObj;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3022
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3023 var browser = DT.browser;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3024 var clicked_node = browser.isIE ? window.event.srcElement : event.target;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3025 var pos = DT.getEventPosition(event);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3026
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3027 var table = $(clicked_node).closest('table')[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3028 var top_cell = $(clicked_node).closest('td, th')[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3029 drag_obj.topCell = top_cell;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3030 drag_obj.table = table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3031
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3032 var col_index = top_cell.cellIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3033 drag_obj.movingColIndex = drag_obj.startIndex = col_index;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3034 drag_obj.movingColWidth = $(top_cell).width();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3035
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3036 // Since a column header can't be dragged directly, duplicate its contents
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3037 // in a div and drag that instead.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3038 var new_table = DT.fullCopy(table, false);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3039
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3040 // Copy the entire column
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3041 var forEachSection = function(table, func) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3042 if (table.tHead) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3043 func(table.tHead);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3044 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3045 forEach(table.tBodies, function(tbody) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3046 func(tbody);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3047 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3048 if (table.tFoot) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3049 func(table.tFoot);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3050 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3051 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3052
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3053 forEachSection(table, function(sec) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3054 var new_sec = DT.fullCopy(sec, false);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3055
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3056 forEach(sec.rows, function(row) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3057 var cell = row.cells[col_index];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3058 var new_tr = DT.fullCopy(row, false);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3059 if (row.offsetHeight) new_tr.style.height = row.offsetHeight + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3060 var new_td = DT.fullCopy(cell, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3061 if (cell.offsetWidth) new_td.style.width = cell.offsetWidth + "px !important";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3062 new_tr.appendChild(new_td);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3063 new_sec.appendChild(new_tr);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3064 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3065
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3066 new_table.appendChild(new_sec);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3067 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3068
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3069 var obj_pos = DT.getPositionOnThePage(top_cell, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3070 new_table.style.position = "absolute";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3071 new_table.style.left = obj_pos.x + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3072 new_table.style.top = obj_pos.y + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3073 // new_table.style.width = dragObj.origNode.offsetWidth + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3074 // new_table.style.height = dragObj.origNode.offsetHeight + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3075
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3076 // Hold off adding the element until this is clearly a drag.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3077 drag_obj.addedNode = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3078
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3079 drag_obj.tableContainer = drag_obj.table.parentNode || document.body;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3080 drag_obj.newTable = new_table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3081
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3082 // Save starting positions of cursor and element.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3083 drag_obj.startPos = pos;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3084 drag_obj.prevPos = pos;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3085 drag_obj.elStartLeft = parseInt(drag_obj.newTable.style.left, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3086 drag_obj.elStartTop = parseInt(drag_obj.newTable.style.top, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3087
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3088 if (isNaN(drag_obj.elStartLeft)) drag_obj.elStartLeft = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3089 if (isNaN(drag_obj.elStartTop)) drag_obj.elStartTop = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3090
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3091 // Update element's z-index.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3092 drag_obj.newTable.style.zIndex = ++drag_obj.zIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3093
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3094 // Capture mousemove and mouseup events on the page.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3095 if (browser.isIE) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3096 document.attachEvent("onmousemove", DT.dragMove);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3097 document.attachEvent("onmouseup", DT.dragEnd);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3098 window.event.cancelBubble = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3099 window.event.returnValue = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3100 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3101 document.addEventListener("mousemove", DT.dragMove, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3102 document.addEventListener("mouseup", DT.dragEnd, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3103 event.preventDefault();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3104 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3105 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3106
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3107 // Move the floating column header with the mouse
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3108 // TODO: Reorder columns as the mouse moves for a more interactive feel.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3109 dragMove: function(event) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3110 var x, y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3111 var drag_obj = DT.dragObj;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3112 var col_index = drag_obj.movingColIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3113
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3114 // Get cursor position with respect to the page.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3115 var pos = DT.getEventPosition(event);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3116
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3117 var full_dx = drag_obj.startPos.x - pos.x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3118 var full_dy = drag_obj.startPos.y - pos.y;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3119
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3120 if (!drag_obj.addedNode && full_dx * full_dx + full_dy * full_dy > DT.dragRadius2) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3121 // Real dragging has began, the following block performs once
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3122
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3123 // Attach a moving table
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3124 drag_obj.tableContainer.insertBefore(drag_obj.newTable, drag_obj.table);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3125 drag_obj.addedNode = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3126
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3127 // Add classes for the dragged column (original and the clone)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3128 $(drag_obj.newTable).addClass(classes.newTable);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3129 $(DT.getColumn(drag_obj.newTable)).addClass(classes.cell_of_movingTable);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3130
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3131 $(DT.getColumn(drag_obj.table, col_index)).addClass(classes.cell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3132 $(DT.getColumn(drag_obj.table, col_index)[0]).addClass(classes.topCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3133 var visibleCells = $(DT.getColumn(drag_obj.table, col_index)).filter(':visible');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3134 $(visibleCells[visibleCells.length - 1]).addClass(classes.bottomCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3135
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3136 DT.addStylesForAdjacentColumns(col_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3137 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3138
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3139 // Move drag element by the same amount the cursor has moved.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3140 var style = drag_obj.newTable.style;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3141 style.left = (drag_obj.elStartLeft + pos.x - drag_obj.startPos.x) + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3142 style.top = (drag_obj.elStartTop + pos.y - drag_obj.startPos.y) + "px";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3143
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3144 if (DT.browser.isIE) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3145 window.event.cancelBubble = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3146 window.event.returnValue = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3147 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3148 event.preventDefault();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3149 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3150
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3151 // If moving over an adjacent column, do swapping, swapping with the adjacent column
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3152 var column_pos_x = DT.getPositionOnThePage(DT.getColumn(drag_obj.newTable)[0]).x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3153 var column_center_x = column_pos_x + drag_obj.movingColWidth / 2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3154 var hovered_col_index = DT.getColumnAtPosition(drag_obj.table, column_center_x);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3155
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3156 var dx = drag_obj.prevPos.x - pos.x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3157
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3158 if (DT.isSuitableColumnToSwap(hovered_col_index, col_index)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3159 if (dx < 0 && hovered_col_index > col_index || // moving right
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3160 dx > 0 && hovered_col_index < col_index) { // moving left
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3161 DT.removeStylesForAdjacentColumns(col_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3162 DT.moveColumn(drag_obj.table, col_index, hovered_col_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3163 DT.addStylesForAdjacentColumns(hovered_col_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3164 drag_obj.movingColIndex = hovered_col_index;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3165 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3166 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3167 drag_obj.prevPos = pos;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3168 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3169
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3170 removeStylesForAdjacentColumns: function(oldIndex) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3171 var table = DT.dragObj.table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3172 var rows = table.rows;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3173 var oldColumn = DT.getColumn(table, oldIndex);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3174 $(DT.getColumn(table, oldIndex - 1)).removeClass(classes.leftToCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3175 $(DT.getColumn(table, oldIndex + 1)).removeClass(classes.rightToCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3176 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3177
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3178 addStylesForAdjacentColumns: function(index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3179 var table = DT.dragObj.table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3180 var rows = table.rows;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3181 var column = DT.getColumn(table, index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3182 $(DT.getColumn(table, index - 1)).addClass(classes.leftToCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3183 $(DT.getColumn(table, index + 1)).addClass(classes.rightToCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3184 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3185
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3186 // Stop capturing mousemove and mouseup events.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3187 // Determine which (if any) column we're over and shuffle the table.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3188 dragEnd: function(event) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3189 if (DT.browser.isIE) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3190 document.detachEvent("onmousemove", DT.dragMove);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3191 document.detachEvent("onmouseup", DT.dragEnd);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3192 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3193 document.removeEventListener("mousemove", DT.dragMove, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3194 document.removeEventListener("mouseup", DT.dragEnd, true);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3195 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3196
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3197 var drag_obj = DT.dragObj;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3198 var col_index = drag_obj.movingColIndex;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3199
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3200 // If the floating header wasn't added, the mouse didn't move far enough.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3201 if (drag_obj.addedNode) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3202 // TODO: Move with animation
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3203 var final_pos = DT.getPositionOnThePage(DT.getColumn(drag_obj.table, col_index)[0]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3204
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3205 $(drag_obj.newTable).animate({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3206 left: final_pos.x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3207 top: final_pos.y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3208 }, 'fast', function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3209 $(drag_obj.newTable).remove();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3210 $(DT.getColumn(drag_obj.table, col_index)).removeClass(classes.cell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3211 $(DT.getColumn(drag_obj.table, col_index)[0]).removeClass(classes.topCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3212 var visibleCells = $(DT.getColumn(drag_obj.table, col_index)).filter(':visible');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3213 $(visibleCells[visibleCells.length - 1]).removeClass(classes.bottomCell_of_emptySpace);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3214
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3215 DT.removeStylesForAdjacentColumns(col_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3216 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3217
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3218 DT.storeDrag(drag_obj.table);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3219 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3220 DT.isDragging = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3221 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3222
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3223 moveColumn: function(table, index, nextIndex) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3224 forEach(table.rows, function(row) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3225 var startCell = $(row.cells[index]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3226 var finishCell = $(row.cells[nextIndex]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3227
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3228 // startCell.animate({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3229 // left: finishCell.offset().left,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3230 // }, 'slow', function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3231 if (nextIndex > index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3232 startCell.before(finishCell);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3233 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3234 startCell.after(finishCell);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3235 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3236 // });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3237 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3238 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3239
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3240 // clone an element, copying its style and class.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3241 fullCopy: function(elt, deep) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3242 if (!elt) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3243 return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3244 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3245 var new_elt = elt.cloneNode(deep);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3246 new_elt.className = elt.className;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3247 $(new_elt).addClass('clone');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3248 forEach(elt.style, function(value, key, object) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3249 if (value == null) return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3250 if (typeof(value) == "string" && value.length == 0) return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3251
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3252 new_elt.style[key] = elt.style[key];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3253 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3254 return new_elt;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3255 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3256
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3257 getColumn: function(table, index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3258 index = typeof index !== 'undefined' ? index : 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3259
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3260 if (index < 0 || index >= table.rows[0].cells.length) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3261 return [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3262
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3263 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3264 var column = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3265 forEach(table.rows, function(row) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3266 column.push(row.cells[index]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3267 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3268 return column;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3269 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3270 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3271
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3272 isSuitableColumnToSwap: function(targetIndex, movingColIndex) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3273 if (targetIndex != -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3274 if (typeof movingColIndex === 'undefined' || targetIndex != movingColIndex) { // check if equals the moving one
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3275 var top_cell = $(DT.getColumn(DT.dragObj.table, targetIndex)[0]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3276 if (top_cell.find('.' + classes.handle).addBack('.' + classes.handle).exists()) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3277 return true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3278 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3279 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3280 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3281 return false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3282 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3283
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3284 // Which column does the x value fall inside of? x should include scrollLeft.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3285 getColumnAtPosition: function(table, x) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3286 var header = table.tHead.rows[0].cells;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3287 for (var i = 0; i < header.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3288 //var left = header[i].offsetLeft;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3289 var pos = DT.getPositionOnThePage(header[i]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3290 //if (left <= x && x <= left + header[i].offsetWidth) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3291 var px = pos.x;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3292 var ow = header[i].offsetWidth;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3293 var xpow = pos.x + header[i].offsetWidth;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3294 if (pos.x <= x && x <= pos.x + header[i].offsetWidth) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3295 return i;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3296 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3297 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3298 return -1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3299 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3300
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3301 // Store a column swap in a cookie for posterity.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3302 storeDrag: function(table) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3303 var order = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3304 forEach(table.rows[0].cells, function(cell) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3305 var pos = cell.getAttribute('position');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3306 if (pos)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3307 order.push(pos);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3308 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3309
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3310 var order_string = order[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3311 for (var i = 1; i < order.length; i++)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3312 order_string += ' ' + order[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3313
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3314 DT.storeInCookies(order_string);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3315 DT.sendOrderToServer(order_string);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3316 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3317
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3318 storeInCookies: function(string) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3319 if (navigator.cookieEnabled) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3320 var cookieName = 'order';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3321 createCookie(cookieName, string, DT.cookieDays);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3322 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3323 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3324
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3325 sendOrderToServer: function(string) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3326 if (document.reportId) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3327 $.ajax({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3328 type: 'GET',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3329 url: '/reorder-report-columns',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3330 dataType: 'json',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3331 data: {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3332 reportId: document.reportId,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3333 order: string,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3334 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3335 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3336 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3337 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3338 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3339
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3340 var DT = dragTable;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3341
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3342 /* ******************************************************************
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3343 Supporting functions: bundled here to avoid depending on a library
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3344 ****************************************************************** */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3345
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3346
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3347 //// Dean Edwards/Matthias Miller/John Resig
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3348 //// has a hook for DT.init already been added? (see below)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3349 //var dgListenOnLoad = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3350 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3351 ///* for Mozilla/Opera9 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3352 //if (document.addEventListener) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3353 // dgListenOnLoad = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3354 // document.addEventListener("DOMContentLoaded", DT.init, false);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3355 //}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3356 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3357 ///* for Internet Explorer */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3358 ///*@cc_on @*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3359 ///*@if (@_win32)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3360 // dgListenOnLoad = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3361 // document.write("<script id=__dt_onload defer src=//0)><\/script>");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3362 // var script = document.getElementById("__dt_onload");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3363 // script.onreadystatechange = function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3364 // if (this.readyState == "complete") {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3365 // DT.init(); // call the onload handler
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3366 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3367 // };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3368 ///*@end @*/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3369 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3370 ///* for Safari */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3371 //if (/WebKit/i.test(navigator.userAgent)) { // sniff
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3372 // dgListenOnLoad = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3373 // var _dgtimer = setInterval(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3374 // if (/loaded|complete/.test(document.readyState)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3375 // DT.init(); // call the onload handler
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3376 // }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3377 // }, 10);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3378 //}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3379 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3380 ///* for other browsers */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3381 ///* Avoid this unless it's absolutely necessary (it breaks sorttable) */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3382 //if (!dgListenOnLoad) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3383 // window.onload = DT.init;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3384 //}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3385
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3386 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3387
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3388 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3389 /*! HTML5 Shiv vpre3.6 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3390 Uncompressed source: https://github.com/aFarkas/html5shiv */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3391 (function(a,b){function h(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function i(){var a=l.elements;return typeof a=="string"?a.split(" "):a}function j(a){var b={},c=a.createElement,f=a.createDocumentFragment,g=f();a.createElement=function(a){if(!l.shivMethods)return c(a);var f;return b[a]?f=b[a].cloneNode():e.test(a)?f=(b[a]=c(a)).cloneNode():f=c(a),f.canHaveChildren&&!d.test(a)?g.appendChild(f):f},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+i().join().replace(/\w+/g,function(a){return c(a),g.createElement(a),'c("'+a+'")'})+");return n}")(l,g)}function k(a){var b;return a.documentShived?a:(l.shivCSS&&!f&&(b=!!h(a,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio{display:none}canvas,video{display:inline-block;*display:inline;*zoom:1}[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}mark{background:#FF0;color:#000}")),g||(b=!j(a)),b&&(a.documentShived=b),a)}var c=a.html5||{},d=/^<|^(?:button|form|map|select|textarea|object|iframe|option|optgroup)$/i,e=/^<|^(?:a|b|button|code|div|fieldset|form|h1|h2|h3|h4|h5|h6|i|iframe|img|input|label|li|link|ol|option|p|param|q|script|select|span|strong|style|table|tbody|td|textarea|tfoot|th|thead|tr|ul)$/i,f,g;(function(){var c=b.createElement("a");c.innerHTML="<xyz></xyz>",f="hidden"in c,f&&typeof injectElementWithStyles=="function"&&injectElementWithStyles("#modernizr{}",function(b){b.hidden=!0,f=(a.getComputedStyle?getComputedStyle(b,null):b.currentStyle).display=="none"}),g=c.childNodes.length==1||function(){try{b.createElement("a")}catch(a){return!0}var c=b.createDocumentFragment();return typeof c.cloneNode=="undefined"||typeof c.createDocumentFragment=="undefined"||typeof c.createElement=="undefined"}()})();var l={elements:c.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:c.shivCSS!==!1,shivMethods:c.shivMethods!==!1,type:"default",shivDocument:k};a.html5=l,k(b)})(this,document)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3392 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3393
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3394 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3395 /**
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3396 * Bootstrap.js by @fat & @mdo
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3397 * plugins: bootstrap-tooltip.js
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3398 * Copyright 2012 Twitter, Inc.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3399 * http://www.apache.org/licenses/LICENSE-2.0.txt
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3400 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3401 !function(a){var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show)return c.show();clearTimeout(this.timeout),c.hoverState="in",this.timeout=setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show)},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!c.options.delay||!c.options.delay.hide)return c.hide();c.hoverState="out",this.timeout=setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide)},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e+4,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},isHTML:function(a){return typeof a!="string"||a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3||/^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(a)},setContent:function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.isHTML(b)?"html":"text"](b),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover",title:"",delay:0}}(window.jQuery)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3402 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3403
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3404 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3405 /*!
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3406 * Bootstrap.js by @fat & @mdo
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3407 * Copyright 2012 Twitter, Inc.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3408 * http://www.apache.org/licenses/LICENSE-2.0.txt
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3409 */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3410 !function(a){a(function(){"use strict",a.support.transition=function(){var a=function(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",msTransition:"MSTransitionEnd",transition:"transitionend"},c;for(c in b)if(a.style[c]!==undefined)return b[c]}();return a&&{end:a}}()})}(window.jQuery),!function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function f(){e.trigger("closed").remove()}var c=a(this),d=c.attr("data-target"),e;d||(d=c.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),e=a(d),b&&b.preventDefault(),e.length||(e=c.hasClass("alert")?c:c.parent()),e.trigger(b=a.Event("close"));if(b.isDefaultPrevented())return;e.removeClass("in"),a.support.transition&&e.hasClass("fade")?e.on(a.support.transition.end,f):f()},a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("alert");e||d.data("alert",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.alert.Constructor=c,a(function(){a("body").on("click.alert.data-api",b,c.prototype.close)})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.button.defaults,c)};b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.data(),e=c.is("input")?"val":"html";a+="Text",d.resetText||c.data("resetText",c[e]()),c[e](d[a]||this.options[a]),setTimeout(function(){a=="loadingText"?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.parent('[data-toggle="buttons-radio"]');a&&a.find(".active").removeClass("active"),this.$element.toggleClass("active")},a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("button"),f=typeof c=="object"&&c;e||d.data("button",e=new b(this,f)),c=="toggle"?e.toggle():c&&e.setState(c)})},a.fn.button.defaults={loadingText:"loading..."},a.fn.button.Constructor=b,a(function(){a("body").on("click.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=c,this.options.slide&&this.slide(this.options.slide),this.options.pause=="hover"&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.prototype={cycle:function(b){return b||(this.paused=!1),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},to:function(b){var c=this.$element.find(".active"),d=c.parent().children(),e=d.index(c),f=this;if(b>d.length-1||b<0)return;return this.sliding?this.$element.one("slid",function(){f.to(b)}):e==b?this.pause().cycle():this.slide(b>e?"next":"prev",a(d[b]))},pause:function(a){return a||(this.paused=!0),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return this.slide("next")},prev:function(){if(this.sliding)return;return this.slide("prev")},slide:function(b,c){var d=this.$element.find(".active"),e=c||d[b](),f=this.interval,g=b=="next"?"left":"right",h=b=="next"?"first":"last",i=this,j=a.Event("slide");this.sliding=!0,f&&this.pause(),e=e.length?e:this.$element.find(".item")[h]();if(e.hasClass("active"))return;if(a.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(j);if(j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),this.$element.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid")},0)})}else{this.$element.trigger(j);if(j.isDefaultPrevented())return;d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return f&&this.cycle(),this}},a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("carousel"),f=a.extend({},a.fn.carousel.defaults,typeof c=="object"&&c);e||d.data("carousel",e=new b(this,f)),typeof c=="number"?e.to(c):typeof c=="string"||(c=f.slide)?e[c]():f.interval&&e.cycle()})},a.fn.carousel.defaults={interval:5e3,pause:"hover"},a.fn.carousel.Constructor=b,a(function(){a("body").on("click.carousel.data-api","[data-slide]",function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=!e.data("modal")&&a.extend({},e.data(),c.data());e.carousel(f),b.preventDefault()})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.collapse.defaults,c),this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.prototype={constructor:b,dimension:function(){var a=this.$element.hasClass("width");return a?"width":"height"},show:function(){var b,c,d,e;if(this.transitioning)return;b=this.dimension(),c=a.camelCase(["scroll",b].join("-")),d=this.$parent&&this.$parent.find("> .accordion-group > .in");if(d&&d.length){e=d.data("collapse");if(e&&e.transitioning)return;d.collapse("hide"),e||d.data("collapse",null)}this.$element[b](0),this.transition("addClass",a.Event("show"),"shown"),this.$element[b](this.$element[0][c])},hide:function(){var b;if(this.transitioning)return;b=this.dimension(),this.reset(this.$element[b]()),this.transition("removeClass",a.Event("hide"),"hidden"),this.$element[b](0)},reset:function(a){var b=this.dimension();return this.$element.removeClass("collapse")[b](a||"auto")[0].offsetWidth,this.$element[a!==null?"addClass":"removeClass"]("collapse"),this},transition:function(b,c,d){var e=this,f=function(){c.type=="show"&&e.reset(),e.transitioning=0,e.$element.trigger(d)};this.$element.trigger(c);if(c.isDefaultPrevented())return;this.transitioning=1,this.$element[b]("in"),a.support.transition&&this.$element.hasClass("collapse")?this.$element.one(a.support.transition.end,f):f()},toggle:function(){this[this.$element.hasClass("in")?"hide":"show"]()}},a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("collapse"),f=typeof c=="object"&&c;e||d.data("collapse",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.collapse.defaults={toggle:!0},a.fn.collapse.Constructor=b,a(function(){a("body").on("click.collapse.data-api","[data-toggle=collapse]",function(b){var c=a(this),d,e=c.attr("data-target")||b.preventDefault()||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""),f=a(e).data("collapse")?"toggle":c.data();a(e).collapse(f)})})}(window.jQuery),!function(a){function d(){a(b).parent().removeClass("open")}"use strict";var b='[data-toggle="dropdown"]',c=function(b){var c=a(b).on("click.dropdown.data-api",this.toggle);a("html").on("click.dropdown.data-api",function(){c.parent().removeClass("open")})};c.prototype={constructor:c,toggle:function(b){var c=a(this),e,f,g;if(c.is(".disabled, :disabled"))return;return f=c.attr("data-target"),f||(f=c.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,"")),e=a(f),e.length||(e=c.parent()),g=e.hasClass("open"),d(),g||e.toggleClass("open"),!1}},a.fn.dropdown=function(b){return this.each(function(){var d=a(this),e=d.data("dropdown");e||d.data("dropdown",e=new c(this)),typeof b=="string"&&e[b].call(d)})},a.fn.dropdown.Constructor=c,a(function(){a("html").on("click.dropdown.data-api",d),a("body").on("click.dropdown",".dropdown form",function(a){a.stopPropagation()}).on("click.dropdown.data-api",b,c.prototype.toggle)})}(window.jQuery),!function(a){function c(){var b=this,c=setTimeout(function(){b.$element.off(a.support.transition.end),d.call(b)},500);this.$element.one(a.support.transition.end,function(){clearTimeout(c),d.call(b)})}function d(a){this.$element.hide().trigger("hidden"),e.call(this)}function e(b){var c=this,d=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var e=a.support.transition&&d;this.$backdrop=a('<div class="modal-backdrop '+d+'" />').appendTo(document.body),this.options.backdrop!="static"&&this.$backdrop.click(a.proxy(this.hide,this)),e&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in"),e?this.$backdrop.one(a.support.transition.end,b):b()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(a.support.transition.end,a.proxy(f,this)):f.call(this)):b&&b()}function f(){this.$backdrop.remove(),this.$backdrop=null}function g(){var b=this;this.isShown&&this.options.keyboard?a(document).on("keyup.dismiss.modal",function(a){a.which==27&&b.hide()}):this.isShown||a(document).off("keyup.dismiss.modal")}"use strict";var b=function(b,c){this.options=c,this.$element=a(b).delegate('[data-dismiss="modal"]',"click.dismiss.modal",a.proxy(this.hide,this))};b.prototype={constructor:b,toggle:function(){return this[this.isShown?"hide":"show"]()},show:function(){var b=this,c=a.Event("show");this.$element.trigger(c);if(this.isShown||c.isDefaultPrevented())return;a("body").addClass("modal-open"),this.isShown=!0,g.call(this),e.call(this,function(){var c=a.support.transition&&b.$element.hasClass("fade");b.$element.parent().length||b.$element.appendTo(document.body),b.$element.show(),c&&b.$element[0].offsetWidth,b.$element.addClass("in"),c?b.$element.one(a.support.transition.end,function(){b.$element.trigger("shown")}):b.$element.trigger("shown")})},hide:function(b){b&&b.preventDefault();var e=this;b=a.Event("hide"),this.$element.trigger(b);if(!this.isShown||b.isDefaultPrevented())return;this.isShown=!1,a("body").removeClass("modal-open"),g.call(this),this.$element.removeClass("in"),a.support.transition&&this.$element.hasClass("fade")?c.call(this):d.call(this)}},a.fn.modal=function(c){return this.each(function(){var d=a(this),e=d.data("modal"),f=a.extend({},a.fn.modal.defaults,d.data(),typeof c=="object"&&c);e||d.data("modal",e=new b(this,f)),typeof c=="string"?e[c]():f.show&&e.show()})},a.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},a.fn.modal.Constructor=b,a(function(){a("body").on("click.modal.data-api",'[data-toggle="modal"]',function(b){var c=a(this),d,e=a(c.attr("data-target")||(d=c.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,"")),f=e.data("modal")?"toggle":a.extend({},e.data(),c.data());b.preventDefault(),e.modal(f)})})}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("tooltip",a,b)};b.prototype={constructor:b,init:function(b,c,d){var e,f;this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.enabled=!0,this.options.trigger!="manual"&&(e=this.options.trigger=="hover"?"mouseenter":"focus",f=this.options.trigger=="hover"?"mouseleave":"blur",this.$element.on(e,this.options.selector,a.proxy(this.enter,this)),this.$element.on(f,this.options.selector,a.proxy(this.leave,this))),this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(b){return b=a.extend({},a.fn[this.type].defaults,b,this.$element.data()),b.delay&&typeof b.delay=="number"&&(b.delay={show:b.delay,hide:b.delay}),b},enter:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);if(!c.options.delay||!c.options.delay.show)return c.show();clearTimeout(this.timeout),c.hoverState="in",this.timeout=setTimeout(function(){c.hoverState=="in"&&c.show()},c.options.delay.show)},leave:function(b){var c=a(b.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!c.options.delay||!c.options.delay.hide)return c.hide();c.hoverState="out",this.timeout=setTimeout(function(){c.hoverState=="out"&&c.hide()},c.options.delay.hide)},show:function(){var a,b,c,d,e,f,g;if(this.hasContent()&&this.enabled){a=this.tip(),this.setContent(),this.options.animation&&a.addClass("fade"),f=typeof this.options.placement=="function"?this.options.placement.call(this,a[0],this.$element[0]):this.options.placement,b=/in/.test(f),a.remove().css({top:0,left:0,display:"block"}).appendTo(b?this.$element:document.body),c=this.getPosition(b),d=a[0].offsetWidth,e=a[0].offsetHeight;switch(b?f.split(" ")[1]:f){case"bottom":g={top:c.top+c.height,left:c.left+c.width/2-d/2};break;case"top":g={top:c.top-e,left:c.left+c.width/2-d/2};break;case"left":g={top:c.top+c.height/2-e/2,left:c.left-d};break;case"right":g={top:c.top+c.height/2-e/2,left:c.left+c.width}}a.css(g).addClass(f).addClass("in")}},isHTML:function(a){return typeof a!="string"||a.charAt(0)==="<"&&a.charAt(a.length-1)===">"&&a.length>=3||/^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(a)},setContent:function(){var a=this.tip(),b=this.getTitle();a.find(".tooltip-inner")[this.isHTML(b)?"html":"text"](b),a.removeClass("fade in top bottom left right")},hide:function(){function d(){var b=setTimeout(function(){c.off(a.support.transition.end).remove()},500);c.one(a.support.transition.end,function(){clearTimeout(b),c.remove()})}var b=this,c=this.tip();c.removeClass("in"),a.support.transition&&this.$tip.hasClass("fade")?d():c.remove()},fixTitle:function(){var a=this.$element;(a.attr("title")||typeof a.attr("data-original-title")!="string")&&a.attr("data-original-title",a.attr("title")||"").removeAttr("title")},hasContent:function(){return this.getTitle()},getPosition:function(b){return a.extend({},b?{top:0,left:0}:this.$element.offset(),{width:this.$element[0].offsetWidth,height:this.$element[0].offsetHeight})},getTitle:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||(typeof c.title=="function"?c.title.call(b[0]):c.title),a},tip:function(){return this.$tip=this.$tip||a(this.options.template)},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(){this[this.tip().hasClass("in")?"hide":"show"]()}},a.fn.tooltip=function(c){return this.each(function(){var d=a(this),e=d.data("tooltip"),f=typeof c=="object"&&c;e||d.data("tooltip",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.tooltip.Constructor=b,a.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',trigger:"hover",title:"",delay:0}}(window.jQuery),!function(a){"use strict";var b=function(a,b){this.init("popover",a,b)};b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype,{constructor:b,setContent:function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.isHTML(b)?"html":"text"](b),a.find(".popover-content > *")[this.isHTML(c)?"html":"text"](c),a.removeClass("fade top bottom left right in")},hasContent:function(){return this.getTitle()||this.getContent()},getContent:function(){var a,b=this.$element,c=this.options;return a=b.attr("data-content")||(typeof c.content=="function"?c.content.call(b[0]):c.content),a},tip:function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip}}),a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("popover"),f=typeof c=="object"&&c;e||d.data("popover",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.popover.Constructor=b,a.fn.popover.defaults=a.extend({},a.fn.tooltip.defaults,{placement:"right",content:"",template:'<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>'})}(window.jQuery),!function(a){function b(b,c){var d=a.proxy(this.process,this),e=a(b).is("body")?a(window):a(b),f;this.options=a.extend({},a.fn.scrollspy.defaults,c),this.$scrollElement=e.on("scroll.scroll.data-api",d),this.selector=(this.options.target||(f=a(b).attr("href"))&&f.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.$body=a("body"),this.refresh(),this.process()}"use strict",b.prototype={constructor:b,refresh:function(){var b=this,c;this.offsets=a([]),this.targets=a([]),c=this.$body.find(this.selector).map(function(){var b=a(this),c=b.data("target")||b.attr("href"),d=/^#\w/.test(c)&&a(c);return d&&c.length&&[[d.position().top,c]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},process:function(){var a=this.$scrollElement.scrollTop()+this.options.offset,b=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,c=b-this.$scrollElement.height(),d=this.offsets,e=this.targets,f=this.activeTarget,g;if(a>=c)return f!=(g=e.last()[0])&&this.activate(g);for(g=d.length;g--;)f!=e[g]&&a>=d[g]&&(!d[g+1]||a<=d[g+1])&&this.activate(e[g])},activate:function(b){var c,d;this.activeTarget=b,a(this.selector).parent(".active").removeClass("active"),d=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',c=a(d).parent("li").addClass("active"),c.parent(".dropdown-menu")&&(c=c.closest("li.dropdown").addClass("active")),c.trigger("activate")}},a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("scrollspy"),f=typeof c=="object"&&c;e||d.data("scrollspy",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.defaults={offset:10},a(function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(window.jQuery),!function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype={constructor:b,show:function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.attr("data-target"),e,f,g;d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,""));if(b.parent("li").hasClass("active"))return;e=c.find(".active a").last()[0],g=a.Event("show",{relatedTarget:e}),b.trigger(g);if(g.isDefaultPrevented())return;f=a(d),this.activate(b.parent("li"),c),this.activate(f,f.parent(),function(){b.trigger({type:"shown",relatedTarget:e})})},activate:function(b,c,d){function g(){e.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),f?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var e=c.find("> .active"),f=d&&a.support.transition&&e.hasClass("fade");f?e.one(a.support.transition.end,g):g(),e.removeClass("in")}},a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("tab");e||d.data("tab",e=new b(this)),typeof c=="string"&&e[c]()})},a.fn.tab.Constructor=b,a(function(){a("body").on("click.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})})}(window.jQuery),!function(a){"use strict";var b=function(b,c){this.$element=a(b),this.options=a.extend({},a.fn.typeahead.defaults,c),this.matcher=this.options.matcher||this.matcher,this.sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.$menu=a(this.options.menu).appendTo("body"),this.source=this.options.source,this.shown=!1,this.listen()};b.prototype={constructor:b,select:function(){var a=this.$menu.find(".active").attr("data-value");return this.$element.val(this.updater(a)).change(),this.hide()},updater:function(a){return a},show:function(){var b=a.extend({},this.$element.offset(),{height:this.$element[0].offsetHeight});return this.$menu.css({top:b.top+b.height,left:b.left}),this.$menu.show(),this.shown=!0,this},hide:function(){return this.$menu.hide(),this.shown=!1,this},lookup:function(b){var c=this,d,e;return this.query=this.$element.val(),this.query?(d=a.grep(this.source,function(a){return c.matcher(a)}),d=this.sorter(d),d.length?this.render(d.slice(0,this.options.items)).show():this.shown?this.hide():this):this.shown?this.hide():this},matcher:function(a){return~a.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(a){var b=[],c=[],d=[],e;while(e=a.shift())e.toLowerCase().indexOf(this.query.toLowerCase())?~e.indexOf(this.query)?c.push(e):d.push(e):b.push(e);return b.concat(c,d)},highlighter:function(a){var b=this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return a.replace(new RegExp("("+b+")","ig"),function(a,b){return"<strong>"+b+"</strong>"})},render:function(b){var c=this;return b=a(b).map(function(b,d){return b=a(c.options.item).attr("data-value",d),b.find("a").html(c.highlighter(d)),b[0]}),b.first().addClass("active"),this.$menu.html(b),this},next:function(b){var c=this.$menu.find(".active").removeClass("active"),d=c.next();d.length||(d=a(this.$menu.find("li")[0])),d.addClass("active")},prev:function(a){var b=this.$menu.find(".active").removeClass("active"),c=b.prev();c.length||(c=this.$menu.find("li").last()),c.addClass("active")},listen:function(){this.$element.on("blur",a.proxy(this.blur,this)).on("keypress",a.proxy(this.keypress,this)).on("keyup",a.proxy(this.keyup,this)),(a.browser.webkit||a.browser.msie)&&this.$element.on("keydown",a.proxy(this.keypress,this)),this.$menu.on("click",a.proxy(this.click,this)).on("mouseenter","li",a.proxy(this.mouseenter,this))},keyup:function(a){switch(a.keyCode){case 40:case 38:break;case 9:case 13:if(!this.shown)return;this.select();break;case 27:if(!this.shown)return;this.hide();break;default:this.lookup()}a.stopPropagation(),a.preventDefault()},keypress:function(a){if(!this.shown)return;switch(a.keyCode){case 9:case 13:case 27:a.preventDefault();break;case 38:if(a.type!="keydown")break;a.preventDefault(),this.prev();break;case 40:if(a.type!="keydown")break;a.preventDefault(),this.next()}a.stopPropagation()},blur:function(a){var b=this;setTimeout(function(){b.hide()},150)},click:function(a){a.stopPropagation(),a.preventDefault(),this.select()},mouseenter:function(b){this.$menu.find(".active").removeClass("active"),a(b.currentTarget).addClass("active")}},a.fn.typeahead=function(c){return this.each(function(){var d=a(this),e=d.data("typeahead"),f=typeof c=="object"&&c;e||d.data("typeahead",e=new b(this,f)),typeof c=="string"&&e[c]()})},a.fn.typeahead.defaults={source:[],items:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a href="#"></a></li>'},a.fn.typeahead.Constructor=b,a(function(){a("body").on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(b){var c=a(this);if(c.data("typeahead"))return;b.preventDefault(),c.typeahead(c.data())})})}(window.jQuery);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3411 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3412
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3413 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3414 /* ===========================================================
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3415 * bootstrap-tooltip.js v2.0.4
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3416 * http://twitter.github.com/bootstrap/javascript.html#tooltips
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3417 * Inspired by the original jQuery.tipsy by Jason Frame
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3418 * ===========================================================
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3419 * Copyright 2012 Twitter, Inc.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3420 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3421 * Licensed under the Apache License, Version 2.0 (the "License");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3422 * you may not use this file except in compliance with the License.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3423 * You may obtain a copy of the License at
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3424 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3425 * http://www.apache.org/licenses/LICENSE-2.0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3426 *
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3427 * Unless required by applicable law or agreed to in writing, software
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3428 * distributed under the License is distributed on an "AS IS" BASIS,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3429 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3430 * See the License for the specific language governing permissions and
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3431 * limitations under the License.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3432 * ========================================================== */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3433
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3434
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3435 !function ($) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3436
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3437 "use strict"; // jshint ;_;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3438
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3439
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3440 /* TOOLTIP PUBLIC CLASS DEFINITION
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3441 * =============================== */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3442
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3443 var Tooltip = function (element, options) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3444 this.init('tooltip', element, options)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3445 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3446
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3447 Tooltip.prototype = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3448
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3449 constructor: Tooltip
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3450
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3451 , init: function (type, element, options) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3452 var eventIn
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3453 , eventOut;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3454
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3455 this.type = type;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3456 this.$element = $(element);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3457 this.options = this.getOptions(options);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3458 this.enabled = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3459
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3460 if (this.options.trigger != 'manual') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3461 eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3462 eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3463 this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3464 this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3465 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3466
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3467 this.options.selector ?
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3468 (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3469 this.fixTitle();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3470 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3471
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3472 , getOptions: function (options) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3473 options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3474
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3475 if (options.delay && typeof options.delay == 'number') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3476 options.delay = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3477 show: options.delay
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3478 , hide: options.delay
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3479 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3480 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3481
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3482 return options;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3483 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3484
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3485 , enter: function (e) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3486 if (dragTable && dragTable.isDragging)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3487 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3488
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3489 var self = $(e.currentTarget)[this.type](this._options).data(this.type);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3490
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3491 if (!self.options.delay || !self.options.delay.show) self.show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3492
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3493 clearTimeout(this.timeout);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3494 self.hoverState = 'in';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3495 this.timeout = setTimeout(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3496 function() { if (self.hoverState == 'in') self.show(); },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3497 self.options.delay.show
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3498 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3499 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3500
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3501 , leave: function (e) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3502 var self = $(e.currentTarget)[this.type](this._options).data(this.type);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3503
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3504 if (this.timeout) clearTimeout(this.timeout);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3505 if (!self.options.delay || !self.options.delay.hide) self.hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3506
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3507 self.hoverState = 'out';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3508 this.timeout = setTimeout(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3509 function() { if (self.hoverState == 'out') self.hide() },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3510 self.options.delay.hide
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3511 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3512 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3513
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3514 , show: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3515 var $tip
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3516 , inside
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3517 , pos
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3518 , actualWidth
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3519 , actualHeight
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3520 , placement
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3521 , tp;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3522
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3523 if (this.hasContent() && this.enabled) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3524 $tip = this.tip();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3525 this.setContent();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3526
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3527 if (this.options.animation) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3528 $tip.addClass('fade');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3529 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3530
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3531 placement = typeof this.options.placement == 'function' ?
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3532 this.options.placement.call(this, $tip[0], this.$element[0]) :
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3533 this.options.placement;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3534
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3535 inside = /in/.test(placement);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3536
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3537 $tip
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3538 .remove()
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3539 .css({ top: 0, left: 0, display: 'block' })
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3540 .appendTo(inside ? this.$element : document.body);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3541
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3542 pos = this.getPosition(inside);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3543
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3544 actualWidth = $tip[0].offsetWidth;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3545 actualHeight = $tip[0].offsetHeight;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3546
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3547 switch (inside ? placement.split(' ')[1] : placement) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3548 case 'bottom':
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3549 tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3550 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3551 case 'top': // modificated by Vlad Saveliev: +4px to top position
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3552 tp = {top: pos.top - actualHeight + 4, left: pos.left + pos.width / 2 - actualWidth / 2};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3553 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3554 case 'left':
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3555 tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3556 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3557 case 'right':
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3558 tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3559 break;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3560 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3561
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3562 $tip
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3563 .css(tp)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3564 .addClass(placement)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3565 .addClass('in');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3566 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3567 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3568
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3569 , isHTML: function(text) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3570 // html string detection logic adapted from jQuery
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3571 return typeof text != 'string'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3572 || ( text.charAt(0) === "<"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3573 && text.charAt( text.length - 1 ) === ">"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3574 && text.length >= 3
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3575 ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3576 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3577
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3578 , setContent: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3579 var $tip = this.tip()
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3580 , title = this.getTitle();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3581
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3582 $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3583 $tip.removeClass('fade in top bottom left right');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3584 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3585
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3586 , hide: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3587 var that = this
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3588 , $tip = this.tip();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3589
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3590 $tip.removeClass('in');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3591
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3592 function removeWithAnimation() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3593 var timeout = setTimeout(function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3594 $tip.off($.support.transition.end).remove()
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3595 }, 500);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3596
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3597 $tip.one($.support.transition.end, function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3598 clearTimeout(timeout);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3599 $tip.remove();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3600 })
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3601 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3602
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3603 $.support.transition && this.$tip.hasClass('fade') ?
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3604 removeWithAnimation() :
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3605 $tip.remove()
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3606 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3607
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3608 , fixTitle: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3609 var $e = this.$element;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3610 if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3611 $e.attr('data-original-title', $e.attr('title') || '').removeAttr('title');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3612 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3613 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3614
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3615 , hasContent: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3616 return this.getTitle();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3617 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3618
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3619 , getPosition: function (inside) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3620 return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3621 width: this.$element[0].offsetWidth
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3622 , height: this.$element[0].offsetHeight
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3623 })
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3624 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3625
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3626 , getTitle: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3627 var title
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3628 , $e = this.$element
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3629 , o = this.options;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3630
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3631 title = $e.attr('data-original-title')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3632 || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3633
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3634 return title;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3635 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3636
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3637 , tip: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3638 return this.$tip = this.$tip || $(this.options.template);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3639 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3640
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3641 , validate: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3642 if (!this.$element[0].parentNode) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3643 this.hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3644 this.$element = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3645 this.options = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3646 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3647 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3648
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3649 , enable: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3650 this.enabled = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3651 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3652
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3653 , disable: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3654 this.enabled = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3655 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3656
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3657 , toggleEnabled: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3658 this.enabled = !this.enabled;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3659 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3660
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3661 , toggle: function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3662 this[this.tip().hasClass('in') ? 'hide' : 'show']();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3663 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3664
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3665 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3666
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3667
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3668 /* TOOLTIP PLUGIN DEFINITION
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3669 * ========================= */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3670
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3671 $.fn.tooltip = function ( option ) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3672 return this.each(function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3673 var $this = $(this)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3674 , data = $this.data('tooltip')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3675 , options = typeof option == 'object' && option;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3676 if (!data) $this.data('tooltip', (data = new Tooltip(this, options)));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3677 if (typeof option == 'string') data[option]();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3678 })
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3679 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3680
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3681 $.fn.tooltip.Constructor = Tooltip;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3682
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3683 $.fn.tooltip.defaults = {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3684 animation: true
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3685 , placement: 'top'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3686 , selector: false
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3687 , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3688 , trigger: 'hover'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3689 , title: ''
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3690 , delay: 0
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3691 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3692
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3693 }(window.jQuery);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3694
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3695 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3696
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3697 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3698 function showPlotWithInfo(info, index) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3699 var newSeries = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3700 var newColors = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3701 var oldSeries = info.series;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3702 var usingSeries;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3703 var sortOrder;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3704 if ($("input[name=sortRefs]")[0])
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3705 sortOrder = getSortOrder();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3706 if (index != undefined) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3707 oldSeries = info.series[index];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3708 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3709 if (sortOrder == 'alphabet') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3710 usingSeries = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3711 sortedRefs = info.references.slice(0).sort();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3712 for(var i = 0; i < oldSeries.length; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3713 usingSeries.push($.extend(true, {}, oldSeries[i]));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3714 for(var j = 0; j < info.references.length; j++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3715 usingSeries[i].data[j][1] = oldSeries[i].data[info.references.indexOf(sortedRefs[j])][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3716 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3717 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3718 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3719 else usingSeries = oldSeries;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3720 $('#legend-placeholder').find('input[type="checkbox"]:checked').each(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3721 var number = $(this).attr('name');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3722 if (number && usingSeries && usingSeries.length > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3723 var i = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3724 do {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3725 var series = usingSeries[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3726 i++;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3727 } while (i <= usingSeries.length && (series == null || series.number != number));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3728 //
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3729 if (i <= usingSeries.length) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3730 newSeries.push(series);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3731 newColors.push(series.color);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3732 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3733 console.log('no series with number ' + number);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3734 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3735 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3736 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3737 if (sortOrder) sortReferences(sortOrder, info);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3738
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3739 if (newSeries.length === 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3740 newSeries.push({
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3741 data: []
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3742 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3743 newColors.push('#FFF');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3744 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3745
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3746 info.showWithData(newSeries, newColors);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3747 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3748
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3749 function recoverOrderFromCookies() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3750 if (!navigator.cookieEnabled)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3751 return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3752
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3753 var order_string = readCookie("order");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3754 if (!order_string)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3755 return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3756
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3757 var order = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3758 var fail = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3759 forEach(order_string.split(' '), function(val) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3760 val = parseInt(val);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3761 if (isNaN(val))
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3762 fail = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3763 else
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3764 order.push(val);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3765 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3766
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3767 if (fail)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3768 return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3769
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3770 return order;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3771 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3772
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3773
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3774 function readJson(what) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3775 var result;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3776 try {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3777 result = JSON.parse($('#' + what + '-json').html());
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3778 } catch (e) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3779 result = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3780 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3781 return result;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3782 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3783
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3784
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3785 function getToggleFunction(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3786 return function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3787 this.parentNode.getElementsByClassName('selected-switch')[0].className = 'plot-switch dotted-link';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3788 this.className = 'plot-switch selected-switch';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3789 togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3790 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3791 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3792
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3793 function togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3794 var plotPlaceholder = document.getElementById('plot-placeholder');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3795 var legendPlaceholder = document.getElementById('legend-placeholder');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3796 var scalePlaceholder = document.getElementById('scale-placeholder');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3797
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3798 var glossary = JSON.parse($('#glossary-json').html());
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3799
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3800 if (name === 'cumulative') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3801 $(plotPlaceholder).addClass('cumulative-plot-placeholder');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3802 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3803 $(plotPlaceholder).removeClass('cumulative-plot-placeholder');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3804 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3805
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3806 $('#contigs_are_ordered').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3807 $('#gc_info').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3808 $('#gc_contigs_info').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3809 $('#frc_info').hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3810
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3811 var selectedAssemblies = getSelectedAssemblies(assembliesNames);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3812 var sortBtnClass;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3813 if ($("input[name=sortRefs]")[0]) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3814 sortBtnClass = getSortRefsRule();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3815 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3816 $('#legend-placeholder').empty();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3817 assembliesNames.forEach(function(filename, i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3818 addLabelToLegend(i, filename, selectedAssemblies, colors);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3819 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3820 if (refPlotValue) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3821 $('#legend-placeholder').append(
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3822 '<div id="reference-label">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3823 '<label for="reference" style="color: #000000;">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3824 '<input type="checkbox" name="' + assembliesNames.length +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3825 '" checked="checked" id="reference">&nbsp;' + 'reference' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3826 '</label>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3827 '</div>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3828 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3829 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3830 if (sortBtnClass) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3831 addSortRefsBtn(sortBtnClass);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3832 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3833
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3834 drawPlot(name, title, colors, assembliesNames, data, refPlotValue, tickX,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3835 plotPlaceholder, legendPlaceholder, glossary, order, scalePlaceholder);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3836 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3837
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3838 function makePlot(firstPlot, assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3839 var switchSpan = document.createElement('span');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3840 switchSpan.id = name + '-switch';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3841 switchSpan.innerHTML = title;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3842 var plotsSwitchesDiv = document.getElementById('plots-switches');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3843 plotsSwitchesDiv.appendChild(switchSpan);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3844
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3845 if (firstPlot) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3846 switchSpan.className = 'plot-switch selected-switch';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3847 togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3848 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3849 switchSpan.className = 'plot-switch dotted-link';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3850 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3851
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3852 $(switchSpan).click(getToggleFunction(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3853 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3854 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3855
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3856 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3857 String.prototype.trunc =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3858 function(n){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3859 return this.substr(0, n-1) + (this.length > n ? '&hellip;' : '');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3860 };
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3861
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3862
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3863 function getColor (hue, lightness) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3864 lightness = lightness ? lightness : 92;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3865 var rgb = hslToRgb(hue / 360, 0.8, lightness / 100);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3866 return '#' + rgb[0].toString(16) + rgb[1].toString(16) + rgb[2].toString(16);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3867 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3868
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3869 function getMedian (x) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3870 if (x.length == 0) return null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3871 if (x.length % 2 == 1) return x[(x.length - 1) / 2];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3872 else return (x[(x.length / 2) - 1] + x[(x.length / 2)]) / 2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3873 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3874
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3875 function toggleSecondary(event, caller) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3876 event = event || window.event;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3877 if(event.target.nodeName == "IMG") return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3878 if (!caller.hasClass('primary') || caller.hasClass('not_extend')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3879 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3880 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3881 var nextRow = caller.next('.content-row');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3882 $(caller).find('.metric-name').toggleClass('collapsed').toggleClass('expanded');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3883
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3884 while (!nextRow.hasClass('primary') && (nextRow.length > 0)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3885 nextRow.toggleClass('secondary_hidden');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3886 nextRow.find('.left_column_td').css('background-color', '#E8E8E8');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3887 nextRow = nextRow.next('.content-row');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3888 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3889 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3890
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3891 function setUpHeatMap(table) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3892
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3893 (function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3894 $(function () {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3895 $('tr.group_empty').removeClass('row_hidden');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3896 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3897 })();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3898
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3899 $('#main_report').append(table);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3900 var rows = $('#main_report_table').find('.content-row');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3901 var showHeatmap = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3902 for (var rows_n = 0; rows_n < rows.length; rows_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3903 if ($(rows[rows_n]).find('td[number]').length > 1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3904 showHeatmap = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3905 break
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3906 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3907 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3908
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3909 if (showHeatmap) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3910 var canvas = document.getElementById('gradientHeatmap');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3911 var context = canvas.getContext('2d');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3912 context.rect(0, 0, canvas.width, canvas.height);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3913
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3914 var gradient = context.createLinearGradient(0, 0, canvas.width, canvas.height);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3915 gradient.addColorStop(0, getColor(0, 65));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3916 gradient.addColorStop(0.5, 'white');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3917 gradient.addColorStop(1, getColor(240, 65));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3918 canvas.style.border = "0px solid rgba(0, 0, 0, .1)";
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3919 context.fillStyle = gradient;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3920 context.fill();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3921 $('#heatmaps_chbox').change(function(){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3922 if($(this).is(':checked')) toggleHeatMap('on');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3923 else toggleHeatMap('off');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3924 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3925 toggleHeatMap('on');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3926 $('#heatmap_header').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3927 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3928 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3929
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3930 function toggleHeatMap(state){
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3931 var rows = $('#main_report_table').find('.content-row');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3932 for (var rows_n = 0; rows_n < rows.length; rows_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3933 var cells = $(rows[rows_n]).find('td[number]');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3934 if (state == 'on') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3935 var quality = $(rows[rows_n]).attr('quality');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3936 heatMapOneRow(cells, quality);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3937 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3938 else cells.each(function (i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3939 $(this).css('background', 'white');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3940 $(this).css('color', 'black');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3941 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3942 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3943 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3944
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3945 function heatMapOneRow (cells, quality) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3946 if (quality == 'Equal')
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3947 return;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3948 var BLUE_HUE = 240;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3949 var BLUE_OUTER_BRT = 55;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3950 var BLUE_INNER_BRT = 65;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3951
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3952 var RED_HUE = 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3953 var RED_OUTER_BRT = 50;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3954 var RED_INNER_BRT = 60;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3955
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3956 var MIN_NORMAL_BRT = 80;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3957 var MEDIAN_BRT = 100;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3958
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3959 var numbers = $.map(cells, function (cell) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3960 return parseFloat($(cell).attr('number'));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3961 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3962
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3963 var min = Math.min.apply(null, numbers);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3964 var max = Math.max.apply(null, numbers);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3965
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3966 var topHue = BLUE_HUE;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3967 var lowHue = RED_HUE;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3968
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3969 var innerTopBrt = BLUE_INNER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3970 var outerTopBrt = BLUE_OUTER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3971 var innerLowBrt = RED_INNER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3972 var outerLowBrt = RED_OUTER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3973
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3974 if (quality == 'Less is better') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3975 topHue = RED_HUE;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3976 lowHue = BLUE_HUE;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3977
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3978 innerTopBrt = RED_INNER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3979 outerTopBrt = RED_OUTER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3980 innerLowBrt = BLUE_INNER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3981 outerLowBrt = BLUE_OUTER_BRT;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3982 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3983
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3984 var twoCols = cells.length == 2;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3985
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3986 if (max == min) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3987 $(cells).css('color', MEDIAN_BRT);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3988 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3989 var sortedValues = numbers.slice().sort(function(a, b) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3990 return a - b;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3991 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3992 var median = getMedian(sortedValues);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3993 var l = numbers.length;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3994 var q1 = sortedValues[Math.floor((l - 1) / 4)];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3995 var q3 = sortedValues[Math.floor((l - 1) * 3 / 4)];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3996
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3997 var d = q3 - q1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3998 var low_outer_fence = q1 - 3 * d;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
3999 var low_inner_fence = q1 - 1.5 * d;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4000 var top_inner_fence = q3 + 1.5 * d;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4001 var top_outer_fence = q3 + 3 * d;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4002 cells.each(function (i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4003 var number = numbers[i];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4004 if (number < low_outer_fence) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4005 $(this).css('background', getColor(lowHue, twoCols ? null : outerLowBrt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4006 if (twoCols != true) $(this).css('color', 'white');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4007 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4008 else if (number < low_inner_fence) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4009 $(this).css('background', getColor(lowHue, twoCols ? null : innerLowBrt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4010 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4011 else if (number < median) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4012 var k = (MEDIAN_BRT - MIN_NORMAL_BRT) / (median - low_inner_fence);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4013 var brt = Math.round(MEDIAN_BRT - (median - number) * k);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4014 $(this).css('background', getColor(lowHue, twoCols ? null : brt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4015 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4016 else if (number > top_inner_fence) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4017 $(this).css('background', getColor(topHue, twoCols ? null : innerTopBrt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4018 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4019 else if (number > top_outer_fence) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4020 $(this).css('background', getColor(topHue, twoCols ? null : outerTopBrt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4021 if (twoCols != true) $(this).css('color', 'white');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4022 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4023 else if (number > median) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4024 var k = (MEDIAN_BRT - MIN_NORMAL_BRT) / (top_inner_fence - median);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4025 var brt = Math.round(MEDIAN_BRT - (number - median) * k);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4026 $(this).css('background', getColor(topHue, twoCols ? null : brt));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4027 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4028 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4029 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4030 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4031 function extendedClick() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4032 $('.row_to_hide').toggleClass('row_hidden');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4033
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4034 var link = $('#extended_report_link');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4035 if (link.html() == 'Extended report') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4036 link.html('Short report');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4037 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4038 link.html('Extended report');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4039 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4040 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4041
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4042 function buildExtendedLinkClick() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4043 return '<p id="extended_link"><a class="dotted-link" id="extended_report_link" onclick="extendedClick($(this))">Extended report</a></p>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4044 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4045
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4046 function appendIcarusLinks() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4047 if (icarusLinks = readJson('icarus')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4048 if (icarusLinks.links != undefined) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4049 var links = '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4050 for (var link_n = 0; link_n < icarusLinks.links.length; link_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4051 //links += '<a href="' + icarusLinks.links[link_n] + '">' + icarusLinks.links_names[link_n] + '</a><br>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4052 links += '<a class="btn btn-default btn-xs" role="button" href="' + icarusLinks.links[link_n] + '">' + icarusLinks.links_names[link_n] + '</a><br>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4053 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4054 $('#icarus').html(links);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4055 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4056 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4057 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4058
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4059 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4060
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4061
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4062 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4063 var colors = ["#FF0000"];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4064 var broken_scaffolds_labels = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4065 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4066 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4067 function addRow(metric, mainMetrics, rowName, group_n, order, glossary, isExpandable, isPrimary) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4068 (function(group_n) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4069 var id_group = '#group_' + group_n;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4070 $(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4071 $(id_group).removeClass('group_empty');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4072 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4073 })(group_n);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4074
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4075 var table = '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4076 metricName = metric.metricName;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4077 var quality = metric.quality;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4078 var values = metric.values;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4079
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4080 var trClass = 'content-row';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4081 if (metric.isMain || $.inArray(metricName, mainMetrics) > -1) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4082 (function(group_n) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4083 var id_group = '#group_' + group_n;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4084 $(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4085 $(id_group).removeClass('row_hidden');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4086 $(id_group).removeClass('row_to_hide');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4087 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4088 })(group_n);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4089 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4090 trClass = 'content-row row_hidden row_to_hide';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4091 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4092 var tdClass = '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4093 if (!isPrimary) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4094 trClass += ' secondary_hidden';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4095 tdClass = 'secondary_td';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4096 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4097 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4098 trClass += ' primary';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4099 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4100 if (isExpandable) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4101 table +=
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4102 '<tr class="' + trClass + '" quality="' + quality + '" onclick="toggleSecondary(event, $(this))">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4103 '<td class="left_column_td ' + tdClass + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4104 '<span class="metric-name expandable collapsed">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4105 initial_spaces_to_nbsp(addTooltipIfDefinitionExists(glossary, rowName.trunc(55)), metricName) +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4106 '</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4107 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4108 else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4109 table +=
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4110 '<tr class="' + trClass + '" quality="' + quality + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4111 '<td class="left_column_td"><span class="metric-name">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4112 initial_spaces_to_nbsp(addTooltipIfDefinitionExists(glossary, rowName.trunc(55)), metricName) +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4113 '</span>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4114 '</td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4115 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4116 for (var val_n = 0; val_n < values.length; val_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4117 value = values[order[val_n]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4118
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4119 if (value === null || value === '') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4120 table += '<td><span>-</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4121 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4122 if (typeof value === 'number') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4123 table +=
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4124 '<td number="' + value + '"><span>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4125 + toPrettyString(value) + '</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4126 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4127 var result = /([0-9\.]+)(.*)/.exec(value);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4128 var num = parseFloat(result[1]);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4129 var rest = result[2];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4130 // alert('value = ' + value + ' result = ' + result);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4131
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4132 // var num = parseFloat(value);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4133
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4134 if (num !== null) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4135 table += '<td number="' + num + '"><span>' + toPrettyString(num) + rest + '</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4136 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4137 table += '<td><span>' + value + '</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4138 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4139 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4140 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4141 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4142 return table;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4143 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4144
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4145 function getSubRows(subReports, groupName, metricName) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4146 rows = [];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4147 if (subReports) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4148 for (var report_n = 0; report_n < subReports.length; report_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4149 subReport = subReports[report_n];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4150 for (var group_n = 0; group_n < subReport.length; group_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4151 if (subReport[group_n][0] != groupName)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4152 continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4153 metrics = subReport[group_n][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4154 for (var metric_n = 0; metric_n < metrics.length; metric_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4155 if (metrics[metric_n].metricName == metricName)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4156 rows.push(metrics[metric_n])
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4157 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4158 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4159 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4160 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4161 return rows;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4162 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4163
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4164 function buildTotalReport(assembliesNames, totalReport, order, glossary, qualities, mainMetrics) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4165 var report = totalReport.report,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4166 date = totalReport.date,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4167 minContig = totalReport.minContig,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4168 referenceName = totalReport.referenceName,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4169 subReports = totalReport.subreports,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4170 subReferences = totalReport.subreferences;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4171 $('#report_date').html('<p>' + date + '</p>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4172 var extraInfo = '<p>All statistics are based on contigs of size >= ' + minContig +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4173 '<span class="rhs">&nbsp;</span>bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).</p>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4174 $('#extrainfo').html(extraInfo);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4175 $('#plot-caption').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4176
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4177 var table = '';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4178 table += '<table cellspacing="0" class="report_table draggable" id="main_report_table">';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4179
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4180 if (referenceName) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4181 $('#reference_name').show().find('.val').html(referenceName);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4182 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4183
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4184 if (report[0][0] == 'Genome statistics') { // if first section is empty (no reference), swap it and w/o reference statistics
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4185 var genomeMetrics = report[0][1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4186 var isSectionEmpty = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4187 for (var index = 0; index < genomeMetrics.length; index++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4188 if (genomeMetrics[index].isMain || $.inArray(genomeMetrics[index].metric_name, mainMetrics) > -1)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4189 isSectionEmpty = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4190 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4191 if (isSectionEmpty) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4192 for (var group_n = 0; group_n < report.length; group_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4193 if (report[group_n][0] == 'Statistics without reference') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4194 report[0] = report.splice(group_n, 1, report[0])[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4195 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4196 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4197 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4198 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4199
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4200 for (var group_n = 0; group_n < report.length; group_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4201 var group = report[group_n];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4202 var groupName = group[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4203 var metrics = group[1];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4204 var width = assembliesNames.length + 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4205
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4206 if (groupName == 'Reference statistics') {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4207 var referenceValues = {};
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4208 for (var metric_n = 0; metric_n < metrics.length; metric_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4209 var metric = metrics[metric_n];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4210 var metricName = metric.metricName;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4211 var value = metric.values[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4212 referenceValues[metricName] = value;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4213 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4214 var refLen = referenceValues['Reference length'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4215 var refFragments = referenceValues['Reference fragments'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4216 var refGC = referenceValues['Reference GC (%)'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4217 var refFeatures = referenceValues['Reference genomic features'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4218 var refOperons = referenceValues['Reference operons'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4219 var refChr = referenceValues['Reference chromosomes'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4220 var totalReads = referenceValues['# total reads'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4221 var refMappedReads = referenceValues['Reference mapped (%)'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4222 var refPairedReads = referenceValues['Reference properly paired (%)'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4223 var estRefLen = referenceValues['Estimated reference length'];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4224
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4225 if (refLen)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4226 $('#reference_length').show().find('.val').html(toPrettyString(refLen));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4227 else if (estRefLen)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4228 $('#est_reference_length').show().find('.val').html(toPrettyString(estRefLen));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4229 if (refFragments) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4230 $('#reference_fragments').show().find('.val').html(refFragments);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4231 if (refFragments > 1)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4232 $('#reference_fragments').find('.plural_ending').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4233 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4234 if (refGC)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4235 $('#reference_gc').show().find('.val').html(toPrettyString(refGC));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4236 if (refFeatures)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4237 $('#reference_features').show().find('.val').html(toPrettyString(refFeatures));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4238 if (refOperons)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4239 $('#reference_operons').show().find('.val').html(toPrettyString(refOperons));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4240 if (refChr) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4241 $('#reference_chr').show().find('.val').html(refChr);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4242 if (refChr > 1)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4243 $('#reference_chr').find('.plural_ending').show();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4244 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4245 if (totalReads)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4246 $('#total_reads').show().find('.val').html(toPrettyString(totalReads));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4247 if (refMappedReads !== undefined)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4248 $('#reference_mapped_reads').show().find('.val').html(toPrettyString(refMappedReads));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4249 if (refPairedReads !== undefined)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4250 $('#reference_paired_reads').show().find('.val').html(toPrettyString(refPairedReads));
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4251 continue;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4252 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4253
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4254 if (group_n == 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4255 table += '<tr class="top_row_tr"><td id="top_left_td" class="left_column_td"><span>' + groupName + '</span></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4256
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4257 for (var assembly_n = 0; assembly_n < assembliesNames.length; assembly_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4258 var assemblyName = assembliesNames[order[assembly_n]];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4259 if (assemblyName.length > 30) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4260 assemblyName =
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4261 '<span class="tooltip-link" rel="tooltip" title="' + assemblyName + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4262 assemblyName.trunc(30) +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4263 '</span>'
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4264 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4265
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4266 table += '<td class="second_through_last_col_headers_td" position="' + order[assembly_n] + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4267 '<span class="drag_handle"><span class="drag_image"></span></span>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4268 '<span class="assembly_name">' + assemblyName + '</span>' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4269 '</td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4270 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4271
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4272 } else {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4273 table +=
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4274 '<tr class="group_header row_to_hide row_hidden group_empty" id="group_' + group_n + '">' +
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4275 '<td class="left_column_td"><span>' + groupName + '</span></td>'; //colspan="' + width + '"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4276 for (var i = 1; i < width; i++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4277 table += '<td></td>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4278 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4279 table += '</tr>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4280 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4281
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4282 for (metric_n = 0; metric_n < metrics.length; metric_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4283 isExpandable = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4284 isPrimary = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4285 metricName = metrics[metric_n].metricName;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4286 subRows = getSubRows(subReports, groupName, metricName);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4287 if (subRows && subRows.length > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4288 isExpandable = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4289 table += addRow(metrics[metric_n], mainMetrics, metricName, group_n, order, glossary, isExpandable, isPrimary);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4290 for (var rows_n = 0; rows_n < subRows.length; rows_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4291 isExpandable = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4292 isPrimary = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4293 table += addRow(subRows[rows_n], mainMetrics, subReferences[rows_n], group_n, order, glossary, isExpandable, isPrimary);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4294 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4295 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4296 else table += addRow(metrics[metric_n], mainMetrics, metricName, group_n, order, glossary, isExpandable, isPrimary);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4297 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4298 table += '</tr>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4299 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4300 table += '</table>';
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4301
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4302 table += buildExtendedLinkClick();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4303
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4304 setUpHeatMap(table);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4305 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4306
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4307 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4308
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4309
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4310 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4311
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4312 function buildReport() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4313 var assembliesNames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4314 var order;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4315
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4316 var totalReport = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4317 var qualities = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4318 var mainMetrics = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4319 var contigsLens = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4320 var coordNx = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4321 var contigsLensNx = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4322 var alignedContigsLens = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4323 var refLengths = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4324 var contigs = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4325 var featuresInContigs = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4326 var operonsInContigs = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4327 var gcInfos = null;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4328
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4329 var glossary = JSON.parse($('#glossary-json').html());
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4330
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4331 var plotsSwitchesDiv = document.getElementById('plots-switches');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4332 var toRemoveRefLabel = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4333 var firstPlot = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4334
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4335 /****************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4336 /* Total report */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4337
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4338 if (!(totalReport = readJson('total-report'))) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4339 console.log("Error: cannot read #total-report-json");
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4340 return 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4341 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4342
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4343 assembliesNames = totalReport.assembliesNames;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4344
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4345 order = recoverOrderFromCookies() || totalReport.order || Range(0, assembliesNames.length);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4346
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4347 buildTotalReport(assembliesNames, totalReport, order, glossary, qualities, mainMetrics);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4348
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4349 if (refLengths = readJson('reference-length'))
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4350 refLengths = refLengths.reflen;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4351
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4352 /****************/
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4353 /* Plots */
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4354
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4355 while (assembliesNames.length > colors.length) { // colors is defined in utils.js
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4356 colors = colors.concat(colors);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4357 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4358
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4359 $(plotsSwitchesDiv).html('<b>Plots:</b>');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4360
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4361 var selectedAssemblies = Array.apply(null, {length: assembliesNames}).map(Number.call, Number);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4362 assembliesNames.forEach(function(filename, i) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4363 addLabelToLegend(i, filename, selectedAssemblies, colors)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4364 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4365
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4366 var tickX = 1;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4367 if (tickX = readJson('tick-x'))
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4368 tickX = tickX.tickX;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4369
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4370 if (contigsLens = readJson('contigs-lengths')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4371 makePlot(firstPlot, assembliesNames, order, 'cumulative', 'Cumulative length', cumulative.draw, contigsLens.lists_of_lengths, refLengths, tickX);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4372 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4373 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4374
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4375 if (coordNx = readJson('coord-nx')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4376 makePlot(firstPlot, assembliesNames, order, 'nx', 'Nx', nx.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4377 coord_x: coordNx.coord_x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4378 coord_y: coordNx.coord_y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4379 filenames: coordNx.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4380 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4381 null, null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4382 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4383 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4384 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4385
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4386 if (coordNx = readJson('coord-nax')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4387 makePlot(firstPlot, assembliesNames, order, 'nax', 'NAx', nx.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4388 coord_x: coordNx.coord_x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4389 coord_y: coordNx.coord_y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4390 filenames: coordNx.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4391 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4392 null, null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4393 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4394 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4395 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4396
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4397 if (coordNx = readJson('coord-ngx')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4398 makePlot(firstPlot, assembliesNames, order, 'ngx', 'NGx', nx.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4399 coord_x: coordNx.coord_x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4400 coord_y: coordNx.coord_y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4401 filenames: coordNx.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4402 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4403 null, null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4404 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4405 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4406 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4407
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4408 if (coordNx = readJson('coord-ngax')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4409 makePlot(firstPlot, assembliesNames, order, 'ngax', 'NGAx', nx.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4410 coord_x: coordNx.coord_x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4411 coord_y: coordNx.coord_y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4412 filenames: coordNx.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4413 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4414 null, null
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4415 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4416 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4417 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4418
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4419 if (coordMisassemblies = readJson('coord-misassemblies')) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4420 makePlot(firstPlot, assembliesNames, order, 'misassemblies', 'Misassemblies', frc.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4421 coord_x: coordMisassemblies.coord_x,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4422 coord_y: coordMisassemblies.coord_y,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4423 filenames: coordMisassemblies.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4424 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4425 null, 1
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4426 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4427 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4428 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4429
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4430 featuresInContigs = readJson('features-in-contigs');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4431 operonsInContigs = readJson('operons-in-contigs');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4432 // if (genesInContigs || operonsInContigs)
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4433 // contigs = readJson('contigs');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4434
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4435 if (featuresInContigs) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4436 makePlot(firstPlot, assembliesNames, order, 'features', 'Genomic features', gns.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4437 filesFeatureInContigs: featuresInContigs.features_in_contigs,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4438 kind: 'gene',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4439 filenames: featuresInContigs.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4440 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4441 featuresInContigs.ref_features_number, tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4442 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4443 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4444 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4445 if (operonsInContigs) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4446 makePlot(firstPlot, assembliesNames, order, 'operons', 'Operons', gns.draw, {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4447 filesFeatureInContigs: operonsInContigs.operons_in_contigs,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4448 kind: 'operon',
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4449 filenames: operonsInContigs.filenames
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4450 },
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4451 operonsInContigs.ref_operons_number, tickX
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4452 );
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4453 firstPlot = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4454 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4455 gcInfos = readJson('gc');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4456 if (gcInfos && (gcInfos.lists_of_gc_info || gcInfos.list_of_GC_distributions)) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4457 makePlot(firstPlot, assembliesNames, order, 'gc', 'GC content', gc.draw, gcInfos, gcInfos.reference_index);
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4458 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4459
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4460 var noReference = true;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4461 var report = totalReport.report;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4462 for (var group_n = 0; group_n < report.length; group_n++) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4463 var group = report[group_n];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4464 var groupName = group[0];
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4465 if (groupName == 'Reference statistics' && group[1].length > 0) {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4466 noReference = false;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4467 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4468 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4469 if (noReference) extendAll();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4470 appendIcarusLinks();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4471 return 0;
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4472 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4473
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4474 function extendAll() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4475 $('.row_to_hide').toggleClass('row_hidden');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4476
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4477 var link = $('#extended_report_link');
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4478 link.hide();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4479 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4480 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4481
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4482
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4483 <script type="text/javascript">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4484 $(function() {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4485
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4486 buildReport();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4487
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4488 dragTable.init();
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4489
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4490 $("[rel=tooltip]").tooltip({ animation: false, });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4491 });
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4492 </script>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4493 </head>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4494
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4495 <body>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4496 <div class="top-panel">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4497 <table class="layout-table">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4498 <tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4499 <td class='layout-table-td'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4500 <div class="page_title">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4501 <h1>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4502 QUAST
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4503 </h1>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4504 <p class="page_subtitle">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4505 <b>Quality Assessment Tool for Genome Assemblies</b>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4506 by <a href="http://cab.spbu.ru" class='dark_bg_link'>CAB</a>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4507 </p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4508 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4509 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4510 </tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4511 </table>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4512 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4513 <div class="content">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4514 <div id='header'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4515 <p id='report_date'></p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4516
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4517 <p id='icarus'></p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4518 <p id='extrainfo'>Loading...</p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4519 <p id='per_ref_msg'></p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4520 <p id='krona'></p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4521
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4522 <p id="data_set_p">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4523 <span style="display: none;" id="reference_name">Aligned to
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4524 "<span class='val'></span>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4525 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4526
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4527 <span style="display: none;" id="combined_reference_name">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4528 Combined reference
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4529 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4530
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4531 <span style="display: none;" id="est_reference_length">Estimated reference size:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4532 <span class='val'></span><span class='rhs'>&nbsp;</span>bp
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4533 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4534
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4535 <span style="display: none;" id="reference_length">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4536 <span class='val'></span><span class='rhs'>&nbsp;</span>bp
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4537 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4538
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4539 <span style="display: none;" id="combined_reference_files">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4540 <span class='val'></span><span class='rhs'>&nbsp;</span>reference<span style="display: none;" class='plural_ending'>s</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4541 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4542
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4543 <span style="display: none;" id="reference_fragments">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4544 <span class='val'></span><span class='rhs'>&nbsp;</span>fragment<span style="display: none;" class='plural_ending'>s</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4545 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4546
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4547 <span style="display: none;" id="reference_gc">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4548 <span class='val'></span><span class='rhs'>&nbsp;</span>% G+C
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4549 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4550
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4551 <span style="display: none;" id="reference_chr">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4552 <span class='val'></span> chromosome<span style="display: none;" class='plural_ending'>s</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4553 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4554
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4555 <span style="display: none;" id="total_reads"><br>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4556 <span class='val'></span> reads
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4557 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4558
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4559 <span style="display: none;" id="reference_mapped_reads">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4560 <span class='val'></span>% mapped
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4561 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4562
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4563 <span style="display: none;" id="reference_paired_reads">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4564 <span class='val'></span>% properly paired
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4565 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4566
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4567 <span style="display: none;" id="reference_features"><br>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4568 <span class='val'></span> genomic features
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4569 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4570
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4571 <span style="display: none;" id="reference_operons">|
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4572 <span class='val'></span> operons
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4573 </span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4574 </p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4575 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4576
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4577 <noscript>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4578 <div style="margin-left: 0;">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4579 Unfortunately, <span style="font-weight: bold">JavaScript</span> in your
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4580 browser <span style="font-weight: bold">is disabled</span> or is not supported.</br>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4581 We need JavaScript to build report and plots.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4582 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4583 </noscript>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4584
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4585 <div class='report-and-plots'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4586 <div class='report' id='main_report'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4587 <div id="heatmap_header" style='display: none; float: left;'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4588 <div style="padding-right: 10px; display: inline-block; vertical-align:top;">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4589 <canvas id="gradientHeatmap" width="150" height="6"></canvas>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4590 <div style="margin-left: 0; text-align: justify;">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4591 <span class="heatmap_legend">Worst</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4592 <span style="margin-left: -5px;" class="heatmap_legend">Median</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4593 <span class="heatmap_legend">Best</span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4594 <span class="heatmap_legend" style='width: 100%; height: 0;'></span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4595 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4596 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4597 <label for="heatmaps_chbox"><input type="checkbox" checked="checked" id="heatmaps_chbox">Show heatmap</label>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4598 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4599 <div style="clear: both;"></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4600 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4601 <div class='plots'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4602 <table style='margin: -3px;'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4603 <tr id='all-switches'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4604 <td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4605 <div id='plots-switches'></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4606 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4607 <td style='text-align: right; padding-right: 22px;'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4608 <span id='scale-placeholder'></span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4609 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4610 </tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4611 <tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4612 <td colspan="2">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4613 <div id='plot-placeholder' style=''></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4614 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4615 <td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4616 <div id='legend-placeholder'></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4617 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4618 </tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4619 <tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4620 <td colspan="3" id="plot-caption" style="display: none;">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4621 <p id="contigs_are_ordered">Contigs are ordered from largest (contig #1) to smallest.</p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4622 <p id="frc_info">FRCurve:
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4623 Y is the total number of aligned bases divided by the reference length,
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4624 in the contigs having the total number of <span class="frc_plot_name"></span> at most X.</p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4625 <p id="gc_info">Contigs are broken into nonoverlapping 100 bp windows.
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4626 Plot shows number of windows for each GC percentage.</p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4627 <p id="gc_contigs_info">Plot shows number of contigs with GC percentage in a certain range.</p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4628 </td>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4629 </tr>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4630 </table>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4631 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4632
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4633 <p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4634 <span id="main_ref_genome"></span>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4635 </p>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4636
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4637 <div style="clear: left"></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4638 <div style="clear: right"></div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4639
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4640 <div class='json-code'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4641 <div id='total-report-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4642 {"date":"12 April 2023, Wednesday, 09:50:51","assembliesNames":["TEST"],"referenceName":"","order":[0],"report":[["Genome statistics",[{"metricName":"Complete BUSCO (%)","quality":"More is better","values":["0.00"],"isMain":true},{"metricName":"Partial BUSCO (%)","quality":"Less is better","values":["0.00"],"isMain":true}]],["Reads mapping",[]],["Misassemblies",[]],["Unaligned",[]],["Mismatches",[{"metricName":"# N's per 100 kbp","quality":"Less is better","values":["0.00"],"isMain":true},{"metricName":"# N's","quality":"Less is better","values":[0],"isMain":false}]],["Statistics without reference",[{"metricName":"# contigs","quality":"Equal","values":[62],"isMain":true},{"metricName":"# contigs (>= 0 bp)","quality":"Equal","values":[100],"isMain":false},{"metricName":"# contigs (>= 1000 bp)","quality":"Equal","values":[58],"isMain":false},{"metricName":"# contigs (>= 5000 bp)","quality":"Equal","values":[48],"isMain":false},{"metricName":"# contigs (>= 10000 bp)","quality":"Equal","values":[41],"isMain":false},{"metricName":"# contigs (>= 25000 bp)","quality":"Equal","values":[28],"isMain":false},{"metricName":"# contigs (>= 50000 bp)","quality":"Equal","values":[20],"isMain":false},{"metricName":"Largest contig","quality":"More is better","values":[436224],"isMain":true},{"metricName":"Total length","quality":"More is better","values":[3017519],"isMain":true},{"metricName":"Total length (>= 0 bp)","quality":"More is better","values":[3027634],"isMain":false},{"metricName":"Total length (>= 1000 bp)","quality":"More is better","values":[3015201],"isMain":true},{"metricName":"Total length (>= 5000 bp)","quality":"More is better","values":[2996428],"isMain":false},{"metricName":"Total length (>= 10000 bp)","quality":"More is better","values":[2944723],"isMain":true},{"metricName":"Total length (>= 25000 bp)","quality":"More is better","values":[2735277],"isMain":false},{"metricName":"Total length (>= 50000 bp)","quality":"More is better","values":[2421445],"isMain":true},{"metricName":"N50","quality":"More is better","values":[99915],"isMain":false},{"metricName":"N90","quality":"More is better","values":[27780],"isMain":false},{"metricName":"auN","quality":"More is better","values":["154096.4"],"isMain":false},{"metricName":"L50","quality":"Less is better","values":[8],"isMain":false},{"metricName":"L90","quality":"Less is better","values":[28],"isMain":false},{"metricName":"GC (%)","quality":"Equal","values":["37.31"],"isMain":false}]],["K-mer-based statistics",[]],["Predicted genes",[]],["Similarity statistics",[]],["Reference statistics",[]]],"subreferences":[],"subreports":[],"minContig":500}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4643 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4644 <div id='qualities-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4645 {{ qualities }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4646 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4647 <div id='main-metrics-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4648 {{ mainMetrics }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4649 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4650
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4651 <div id="contigs-lengths-json">
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4652 {"filenames":["TEST"],"lists_of_lengths":[[436224,252900,206370,168397,132811,115359,113419,99915,97190,92075,86662,82418,81741,81694,71911,66886,64537,62649,55461,52826,48115,47790,45935,44497,35306,35051,29358,27780,24296,23952,18776,17346,16026,15602,15587,15306,13750,13168,12357,12074,11206,9892,8939,7812,6929,6828,5969,5336,3276,2262,2083,1817,1775,1642,1578,1526,1515,1299,652,607,534,525]]}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4653 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4654 <div id='assemblies-lengths-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4655 {{ assembliesLengths }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4656 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4657 <div id='reference-length-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4658 {{ referenceLength }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4659 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4660 <div id='tick-x-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4661 {"tickX":1}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4662 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4663 <div id='coord-nx-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4664 {"coord_x":[[0.0,1e-10,14.45637956215023,14.45637956225023,22.8374369805128,22.837436980612797,29.676499137205102,29.6764991373051,35.25714336844275,35.25714336854275,39.65847439568732,39.65847439578732,43.48144949542986,43.48144949552986,47.24013336784292,47.240133367942924,50.55129727435022,50.55129727445022,53.772155204325145,53.77215520442515,56.82350301688241,56.823503016982414,59.6954650492673,59.6954650493673,62.426781736916986,62.42678173701699,65.13566277461716,65.13566277471716,67.84298624134595,67.84298624144596,70.22610296737155,70.22610296747155,72.44269215869063,72.44269215879063,74.58143594124843,74.58143594134843,76.65761176648763,76.65761176658764,78.49557865252878,78.49557865262878,80.24622214474871,80.24622214484872,81.84074400194332,81.84074400204332,83.42449542156984,83.42449542166985,84.94677249753855,84.94677249763855,86.42139452974448,86.42139452984448,87.59142858752504,87.59142858762505,88.75301199429067,88.75301199439068,89.72593047467142,89.72593047477142,90.64655433818312,90.64655433828312,91.451719110965,91.451719111065,92.24548378982867,92.24548378992867,92.86771682299266,92.86771682309266,93.4425599308571,93.4425599309571,93.97365849229118,93.97365849239118,94.4907057751749,94.4907057752749,95.0072559609401,95.0072559610401,95.5144938606849,95.5144938607849,95.97016621933449,95.97016621943449,96.40655120978526,96.40655120988527,96.81605981602767,96.81605981612768,97.21618985663387,97.21618985673388,97.58755454398133,97.58755454408133,97.91537352374583,97.91537352384583,98.21161026657992,98.21161026667993,98.4704984459087,98.4704984460087,98.7001241748602,98.70012417496021,98.92640278321363,98.92640278331363,99.12421429657941,99.12421429667941,99.30104831154335,99.30104831164336,99.40961432222961,99.40961432232962,99.48457656770347,99.48457656780347,99.5536067875629,99.5536067876629,99.61382181852045,99.61382181862045,99.67264497754613,99.67264497764613,99.72706054212087,99.72706054222087,99.77935515898989,99.77935515908989,99.82992650584802,99.82992650594802,99.88013331481923,99.88013331491923,99.92318192528366,99.92318192538366,99.94478908003562,99.94478908013562,99.964904943432,99.964904943532,99.98260160085157,99.98260160095157,100.0,100.0000000001]],"coord_y":[[436224,436224,436224,252900,252900,206370,206370,168397,168397,132811,132811,115359,115359,113419,113419,99915,99915,97190,97190,92075,92075,86662,86662,82418,82418,81741,81741,81694,81694,71911,71911,66886,66886,64537,64537,62649,62649,55461,55461,52826,52826,48115,48115,47790,47790,45935,45935,44497,44497,35306,35306,35051,35051,29358,29358,27780,27780,24296,24296,23952,23952,18776,18776,17346,17346,16026,16026,15602,15602,15587,15587,15306,15306,13750,13750,13168,13168,12357,12357,12074,12074,11206,11206,9892,9892,8939,8939,7812,7812,6929,6929,6828,6828,5969,5969,5336,5336,3276,3276,2262,2262,2083,2083,1817,1817,1775,1775,1642,1642,1578,1578,1526,1526,1515,1515,1299,1299,652,652,607,607,534,534,525,525,0.0]],"filenames":["TEST"]}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4665 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4666 <div id='coord-ngx-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4667 {{ coordNGx }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4668 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4669 <div id='coord-nax-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4670 {{ coordNAx }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4671 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4672 <div id='coord-ngax-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4673 {{ coordNGAx }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4674 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4675 <div id='coord-misassemblies-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4676 {{ coordmisassemblies }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4677 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4678 <div id='features-in-contigs-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4679 {{ featuresInContigs }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4680 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4681 <div id='operons-in-contigs-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4682 {{ operonsInContigs }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4683 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4684 <div id='summary-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4685 [{{ num_contigs }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4686 {{ Largest_alignment }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4687 {{ Total_aligned_length }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4688 {{ num_misassemblies }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4689 {{ Misassembled_contigs_length }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4690 {{ num_mismatches_per_100_kbp }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4691 {{ num_indels_per_100_kbp }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4692 {{ num_N's_per_100_kbp }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4693 {{ Genome_fraction }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4694 {{ Duplication_ratio }},
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4695 {{ NGA50 }}]
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4696 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4697 <div id='misassemblies-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4698 {{ allMisassemblies }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4699 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4700 <div id='krona-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4701 {{ krona }}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4702 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4703 <div id='gc-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4704 {"filenames":["TEST"],"reference_index":null,"list_of_GC_distributions":[[[0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0,52.0,53.0,54.0,55.0,56.0,57.0,58.0,59.0,60.0,61.0,62.0,63.0,64.0,65.0,66.0,67.0,68.0,69.0,70.0,71.0,72.0,73.0,74.0,75.0,76.0,77.0,78.0,79.0,80.0,81.0,82.0,83.0,84.0,85.0,86.0,87.0,88.0,89.0,90.0,91.0,92.0,93.0,94.0,95.0,96.0,97.0,98.0,99.0,100.0],[0,0,0,0,0,0,0,0,1,0,0,1,2,1,1,8,9,12,23,35,61,95,116,157,220,277,347,457,580,713,942,1109,1276,1469,1593,1822,1890,1935,1942,1965,1885,1759,1570,1320,1103,862,701,537,433,295,196,142,95,82,45,30,22,15,10,6,5,1,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]]],"list_of_GC_contigs_distributions":[[[0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100],[0,0,0,0,0,1,12,44,2,1,2,0,0,0,0,0,0,0,0,0,0]]],"lists_of_gc_info":null}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4705 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4706 <div id='icarus-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4707 {"links":["icarus_viewers/contig_size_viewer.html"],"links_names":["View in Icarus contig browser"]}
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4708 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4709 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4710 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4711
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4712 <div class='json-code'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4713 <div id='glossary-json'>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4714 {
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4715 "# contigs" : "<span>is the total number of contigs in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4716 "Largest contig" : "<span>is the length of the longest contig in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4717 "Total length" : "<span>is the total number of bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4718 "Reference length" : "<span>is the total number of bases in the reference.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4719
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4720 "# contigs (>= 0 bp)" : "<span>is the total number of contigs in the assembly that have size greater than or equal to 0 bp.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4721 "Total length (>= 0 bp)" : "<span>is the total number of bases in the contigs having size greater than or equal to 0 bp.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4722
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4723 "N50" : "<span>is the contig length such that using longer or equal length contigs produces half (50%) of the bases of the assembly. Usually there is no value that produces exactly 50%, so the technical definition is the maximum length x such that using contigs of length at least x accounts for at least 50% of the total assembly length. Similarly, Nx for any x between 0 and 100 could be computed (x% of assembly).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4724 "NG50" : "<span>is the contig length such that using longer or equal length contigs produces half (50%) of the bases of the reference genome. This metric is computed only if a reference genome is provided. Similarly, NGx for any x between 0 and 100 could be computed (x% of the reference).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4725
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4726 "L50" : "<span>is the minimum number of contigs that produce half (50%) of the bases of the assembly. In other words, it's the number of contigs of length at least N50. Similarly, Lx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4727 "LG50" : "<span>is the minimum number of contigs that produce half (50%) of the bases of the reference genome. In other words, it's the number of contigs of length at least NG50. This metric is computed only if a reference genome is provided. Similarly, LGx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4728
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4729 "NA50" : "<span>is N50 where the lengths of aligned blocks are counted instead of contig lengths. I.e., if a contig has a misassembly with respect to the reference, the contig is broken into smaller pieces. This metric is computed only if a reference genome is provided. Similarly, NAx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4730 "NGA50" : "<span>is NG50 where the lengths of aligned blocks are counted instead of contig lengths. I.e., if a contig has a misassembly with respect to the reference, the contig is broken into smaller pieces. This metric is computed only if a reference genome is provided. Similarly, NGAx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4731
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4732 "LA50" : "<span>is L50 where aligned blocks are counted instead of contigs. I.e., if a contig has a misassembly with respect to the reference, the contig is broken into smaller pieces. Similarly, LAx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4733 "LGA50" : "<span>is LG50 where aligned blocks are counted instead of contigs. I.e., if a contig has a misassembly with respect to the reference, the contig is broken into smaller pieces. Similarly, LGAx for any x between 0 and 100 could be computed.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4734
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4735 "auN" : "<span>is the area under the Nx curve.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4736 "auNG" : "<span>is the area under the NGx curve.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4737 "auNA" : "<span>is the area under the NAx curve.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4738 "auNGA" : "<span>is the area under the NGAx curve.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4739
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4740 "Average %IDY" : "<span>is the average of alignment identity percent (alignment accuracy) among all contigs.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4741 "# misassemblies" : "<span>is the number of positions in the assembled contigs where the left flanking sequence aligns over 1 kbp away from the right flanking sequence on the reference (<i>relocation</i>) or they overlap on more than 1 kbp (<i>relocation</i>) or flanking sequences align on different strands (<i>inversion</i>) or different chromosomes (<i>translocation</i>).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4742 "# large block misassemblies" : "<span>is the number of misassemblies between alignments with length greater than or equal to 3 kbp and with the misassembly threshold equal to 5 kbp (instead of default 1 kbp for regular misassemblies).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4743 "# misassembled contigs" : "<span>is the number of contigs that contain misassembly events.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4744 "Misassembled contigs length" : "<span>is the number of total bases contained in all contigs that have one or more misassemblies.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4745
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4746 "# relocations" : "<span>is the number of relocation events among all misassembly events. Relocation is a misassembly where the left flanking sequence aligns over 1 kbp away from the right flanking sequence on the reference, or they overlap by more than 1 kbp and both flanking sequences align on the same chromosome.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4747 "# translocations" : "<span>is the number of translocation events among all misassembly events. Translocation is a misassembly where the flanking sequences align on different chromosomes.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4748 "# interspecies translocations" : "<span>is the number of interspecies translocation events among all misassembly events. Interspecies translocation is a misassembly where the flanking sequences align on different references (based on alignments to the combined reference).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4749 "# inversions" : "<span>is the number of inversion events among all misassembly events. Inversion is a misassembly where it is not a <i>relocation</i> and the flanking sequences align on opposite strands of the same chromosome.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4750 "# large relocations" : "<span>is the number of relocation events among all large block misassemblies. Relocation is a misassembly where the left flanking sequence aligns over 5 kbp away from the right flanking sequence on the reference, or they overlap by more than 5 kbp and both flanking sequences align on the same chromosome.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4751 "# large translocations" : "<span>is the number of translocation events among all large block misassemblies. Translocation is a misassembly where the flanking sequences align on different chromosomes.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4752 "# large i/s translocations" : "<span>is the number of interspecies translocation events among all large block misassemblies. Interspecies translocation is a misassembly where the flanking sequences align on different references (based on alignments to the combined reference).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4753 "# large inversions" : "<span>is the number of inversion events among all large block misassemblies. Inversion is a misassembly where it is not a <i>relocation</i> and the flanking sequences align on opposite strands of the same chromosome.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4754 "# local misassemblies" : "<span>is the number of local misassemblies. We define a local misassembly breakpoint as a breakpoint that satisfies these conditions: <ol> <li>Two or more distinct alignments cover the breakpoint.</li> <li>The gap between left and right flanking sequences is less than the misassembly threshold (1 kbp by default).</li> <li>The left and right flanking sequences both are on the same strand of the same chromosome of the reference genome.</li> </ol> </span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4755 "# scaffold gap ext. mis." : "<span>is the number of scaffold gap size extensive misassemblies. We define a scaffold gap size misassembly as a breakpoint where the flanking sequences are combined in a scaffold on the wrong distance. These misassemblies are not included in the total number of misassemblies. </span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4756 "# scaffold gap loc. mis." : "<span>is the number of scaffold gap size local misassemblies. Such breakpoints satisfy the local misassembly conditions but they occur inside scaffolds. These misassemblies are not included in the total number of local misassemblies. </span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4757 "# possibly misassembled contigs": "<span>is the number of contigs that contain large unaligned fragment (default min length is 500 bp) and thus could possibly contain interspecies translocation with unknown reference.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4758 "# possible misassemblies" : "<span>is the number of putative interspecies translocations in possibly misassembled contigs if each large unaligned fragment is supposed to be a fragment of unknown reference.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4759 "# intergenomic misassemblies" : "<span>is the number of all found and putative (possible) interspecies translocations.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4760 "# structural variations" : "<span>is the number of misassemblies matched with structural variations.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4761 "# possible TEs" : "<span>is the number of misassemblies possibly caused by transposable elements (TEs). We define a possible TE as an event that satisfies these conditions: <ol> <li>There are two misassembly breakpoints of the same type around a short alignment (less than 7 kbp by default)</li> <li>The gap between two long flanking sequences on the sides of the short alignment is less than 7 kbp.</li> <li> The long flanking sequences both are on the same strand of the same chromosome of the reference genome.</li> </ol> </span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4762 "# unaligned mis. contigs" : "<span>is the number of contigs that have the number of unaligned bases more than 50% of the contig length and a misassembly event in their aligned fragment. Note that such misassemblies are not counted in <i># misassemblies</i> and other <i>misassemblies</i> statistics.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4763
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4764 "# fully unaligned contigs" : "<span>is the number of contigs that have no alignment to the reference sequence.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4765 "Fully unaligned length" : "<span>is the total number of bases contained in all fully unaligned contigs. Uncalled bases (N's) are not counted.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4766 "# partially unaligned contigs" : "<span>is the number of contigs that have at least one alignment to the reference sequence but also have at least one unaligned fragment of length &ge; <i>unaligned-part-size threshold</i> (uncalled bases (N's) are not counted towards the fragment length).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4767 "Partially unaligned length" : "<span>is the total number of unaligned bases in all partially unaligned contigs. Uncalled bases (N's) are not counted.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4768
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4769 "# ambiguous contigs" : "<span>is the number of contigs that have reference alignments of equal quality in multiple locations on the reference.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4770 "Ambiguous contigs length" : "<span>is the total number of bases contained in all ambiguous contigs.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4771
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4772 "Genome fraction (%)" : "<span>is the total number of aligned bases in the reference, divided by the genome size. A base in the reference genome is counted as aligned if there is at least one contig with at least one alignment to this base. Contigs from repeat regions may map to multiple places, and thus may be counted multiple times in this quantity.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4773 "GC (%)" : "<span>is the total number of G and C nucleotides in the assembly, divided by the total length of the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4774 "Reference GC (%)" : "<span>is the total number of G and C nucleotides in the reference, divided by the total length of the reference.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4775
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4776 "# mismatches per 100 kbp" : "<span>is the average number of mismatches per 100,000 aligned bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4777 "# mismatches" : "<span>is the number of mismatches in all aligned bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4778 "# indels per 100 kbp" : "<span>is the average number of indels per 100,000 aligned bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4779 "# indels" : "<span>is the number of indels in all aligned bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4780 "# indels (<= 5 bp)" : "<span>is the number of indels of length less than or equal to 5 bp.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4781 "# indels (> 5 bp)" : "<span>is the number of indels of length greater than 5 bp.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4782 "Indels length" : "<span>is the number of total bases contained in all indels.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4783
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4784 "# genomic features" : "<span>is the number of genomic features (genes, transcripts, CDS) in the assembly (complete and partial), based on a user-provided annotated list of gene positions in the reference genome. A feature counts as 'partially covered' if the assembly contains at least 100 bp of this feature but not the whole feature.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4785 "# operons" : "<span>is the number of operons in the assembly (complete and partial), based on a user-provided annotated list of operon positions in the reference genome. An operon counts as 'partially covered' if the assembly contains at least 100 bp of this operon but not the whole operon.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4786 "# predicted genes (unique)" : "<span>is the number of unique genes in the assembly found by a gene prediction tool.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4787 "# predicted genes (>= 0 bp)" : "<span>is the number of found genes having length greater than or equal to 0 bp.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4788
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4789 "Complete BUSCO (%)" : "<span>is the percent of BUSCO (Universal Single-Copy Ortholog) genes found in the assembly in a complete form.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4790 "Partial BUSCO (%)" : "<span>is the percent of BUSCO (Universal Single-Copy Ortholog) genes found in the assembly in a partial form.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4791
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4792 "Cumulative length" : "<span>plot shows the growth of assembly contig lengths. On the x-axis, contigs are ordered from largest (contig #1) to smallest. The y-axis gives the size of the x largest contigs in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4793 "Nx" : "<span>plot shows the Nx metric value as x varies from 0 to 100.</span> <span>Nx is the minimum contig length <b>y</b> such that using contigs of length at least <b>y</b> accounts for at least x% of the total assembly length.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4794 "NGx" : "<span>plot shows the NGx metric value as x varies from 0 to 100.</span> <span>NGx is the minimum contig length <b>y</b> such that using contigs of length at least <b>y</b> accounts for at least x% of the bases of the reference genome. This metric is computed only if a reference genome is provided.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4795 "NAx" : "<span>plot shows the NAx metric value as x varies from 0 to 100.</span> <span>NAx is computed similarly to Nx, but based on lengths of aligned blocks instead of contig lengths. Contigs are broken into aligned blocks at misassembly breakpoints. NAx is the minimum block length <b>y</b> such that using blocks of length at least <b>y</b> accounts for at least x% of the bases of the assembly. This metric is computed only if a reference genome is provided.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4796 "NGAx" : "<span>plot shows the NGAx metric value as x varies from 0 to 100.</span><span>NGAx is computed similarly to NGx, but based on lengths of aligned blocks instead of contig lengths. Contigs are broken at misassembly breakpoints. NGAx is the minimum block length <b>y</b> such that using blocks of length at least <b>y</b> accounts for at least x% of the bases of the reference genome. This metric is computed only if a reference genome is provided.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4797 "GC content" : "<span>plot shows the distribution of GC percentage among the contigs, i.e., the total number of bases in contigs with such GC content. Typically, the distribution is approximately Gaussian. However, for some genomes it is not Gaussian. For assembly projects with contaminants, the GC distribution of the contaminants often differs from the reference genome and may give a superposition of multiple curves with different peaks.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4798
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4799 "Duplication ratio" : "<span>is the total number of aligned bases in the assembly, divided by the total number of aligned bases in the reference (see the <b>Genome fraction (%)</b> metric). If the assembly contains many contigs that cover the same regions of the reference, its <i>Duplication ratio</i> may be much larger than 1. This may occur due to overestimating repeat multiplicities and due to small overlaps between contigs, among other reasons.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4800 "Largest alignment" : "<span>is the length of the largest continuous alignment in the assembly. This metric is always equal to the <i>Largest contig</i> metric but it can be smaller if the largest contig of the assembly contains a misassembly event.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4801 "Total aligned length" : "<span>is the total number of aligned bases in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4802 "Avg contig read support" : "<span>is the average coverage of contigs that have large unique alignments to the reference. Read coverage is extracted from contig names (SPAdes/Velvet naming scheme only).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4803
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4804 "# N's" : "<span>is the total number of uncalled bases (N's) in the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4805 "# N's per 100 kbp" : "<span>is the average number of uncalled bases (N's) per 100,000 assembly bases.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4806
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4807 "# mapped" : "<span>is the number of reads that mapped to the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4808 "Mapped (%)" : "<span>is the percent of reads that mapped to the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4809 "# properly paired" : "<span>is the number of reads that mapped within expected range and orientation of each other to the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4810 "Properly paired (%)" : "<span>is the percent of reads that mapped within expected range and orientation of each other to the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4811 "# singletons" : "<span>is the number of reads which do not overlap any other reads.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4812 "Singletons (%)" : "<span>is the percent of reads which do not overlap any other reads.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4813 "# misjoint mates" : "<span>is the number of reads with mate mapped to a different contig.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4814 "Misjoint mates (%)" : "<span>is the percent of reads with mate mapped to a different contig.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4815 "Avg. coverage depth" : "<span>is the average depth of coverage.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4816 "Coverage >= 1x (%)" : "<span>is the total number of bases with at least 1x coverage, divided by the total length of the assembly.</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4817
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4818 "# similar correct contigs" : "<span>is the number of correct contigs similar among > 50% assemblies (see Icarus for visualization).</span>",
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4819 "# similar misassembled blocks" : "<span>is the number of misassembled blocks similar among > 50% assemblies (see Icarus for visualization).</span>"
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4820 }
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4821
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4822 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4823 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4824 </div>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4825 </body>
eb95c9ca5c60 planemo upload commit fd67555ae5bcff6d9052259771f805c4cd8124d3-dirty
ifb-elixirfr
parents:
diff changeset
4826 </html>