annotate test-data/quast/quast_report.html @ 3:73aea20004ff draft default tip

planemo upload commit 8721cd95e02dd6b3a02e2eb549cd8ff6b1675ff8-dirty
author pimarin
date Sun, 23 Jul 2023 13:54:14 +0000
parents 421032d8dd5d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1 <!DOCTYPE html>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2 <html lang="en">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3 <head>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4 <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
5
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
6 <style rel="stylesheet">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
7 /*!
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
8 * Bootstrap v2.0.4
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
9 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
10 * Copyright 2012 Twitter, Inc
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
11 * Licensed under the Apache License v2.0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
12 * http://www.apache.org/licenses/LICENSE-2.0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
13 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
14 * Designed and built with all the love in the world @twitter by @mdo and @fat.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
15 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
16 .clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
17 .clearfix:after{clear:both;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
18 .hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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);}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
21 .tooltip.top{margin-top:-2px;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
22 .tooltip.right{margin-left:2px;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
23 .tooltip.bottom{margin-top:2px;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
24 .tooltip.left{margin-left:-2px;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
30 .tooltip-arrow{position:absolute;width:0;height:0;}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
31
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
32 </style>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
33
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
34 <style rel="stylesheet">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
35 /* Main things */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
36 html, body, div, span, h1, h3, h4, h5, h6, blockquote, pre,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
37 em, sub, sup, dl, dt, dd, ol, ul, li,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
38 fieldset, form, label,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
39 table, caption, tbody, tfoot, thead,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
40 article, aside, canvas, details, figure, figcaption, footer, header, hgroup,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
41 menu, nav, output, section, time {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
42 margin: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
43 padding: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
44 border: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
45 font-size: 100%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
46 font: inherit;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
47 vertical-align: baseline;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
48 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
49 body {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
50 margin: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
51 font-family: Lucida Grande, Verdana, Arial, sans-serif;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
52 font-size: 12px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
53 color: black;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
54 padding-bottom: 30px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
55 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
56 a {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
57 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
58 /*color: #0c4f72;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
59 color: #0077B5;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
60 border-bottom: 1px solid #487b95;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
61 border-color: #487b95; /* #487b95 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
62 border-color: rgba(12, 79, 114, 0.2); /* #0c4f72; */ /* #a0d2eb; */ /*rgba(0, 88, cc, 0.3);*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
63 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
64 a:visited {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
65 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
66 color: #8C66B2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
67 border-bottom: 1px solid #8c66b2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
68 border-color: #8c66b2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
69 border-color: rgba(102, 51, 153, 0.2);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
70 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
71 a:hover {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
72 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
73 color: #b33; /* #0088cc; */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
74 border-bottom: 1px solid #ffcccc;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
75 border-color: #ffcccc;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
76 border-color: rgba(255, 0, 0, 0.2); /* #55b2e0; */ /*#005580;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
77 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
78 a.dark_bg_link {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
79 color: white; /* #0088cc; */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
80 border-bottom: 1px solid #cccccc;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
81 border-color: #cccccc;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
82 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
83 a.dark_bg_link:hover {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
84 color: white; /* #0088cc; */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
85 border-bottom: 1px solid white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
86 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
87
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
88 .leading_link_dot {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
89 border-bottom: white solid 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
90 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
91
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
92 a.header_link, a.header_link:hover, a.header_link:visited {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
93 color: black;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
94 border-bottom: 1px solid #bbb;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
95 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
96
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
97
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
98 .dotted-link {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
99 cursor: pointer;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
100 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
101 /*color: #0c4f72;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
102 color: #0077B5;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
103 border-bottom: 1px dashed #487b95;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
104 border-color: #487b95; /* #487b95 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
105 border-color: rgba(12, 79, 114, 0.2);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
106 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
107 .dotted-link:hover {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
108 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
109 color: #b33 !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
110 border-bottom: 1px dashed #b33 !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
111 border-color: rgba(255, 0, 0, 0.2) !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
112 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
113 .js:visited {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
114 color: #0077B5;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
115 border-bottom: 1px dashed #487b95;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
116 border-color: #487b95;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
117 border-color: rgba(12, 79, 114, 0.2);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
118 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
119
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
120 .selected-switch {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
121 background-color: #fafad2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
122 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
123
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
124 .json-code {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
125 display: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
126 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
127 .smallcapitals {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
128 font-size: .875em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
129 letter-spacing: .15em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
130 margin-right: -.15em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
131 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
132 .highlight {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
133 background-color:#FFF9B5;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
134 padding: 0 3px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
135 margin-left: -3px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
136 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
137
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
138 ul.list {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
139 list-style-type: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
140 padding: 0 0 0 2em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
141 margin: -0.5em 0 0 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
142 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
143 ul.list li {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
144 margin-bottom: 0.7em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
145 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
146
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
147 ul.mdash {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
148 margin: -1em 0 0 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
149 padding: 0 0 0 2em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
150 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
151 ul.mdash li {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
152 margin-bottom: 0.7em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
153 list-style-type: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
154 text-indent: -1.3em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
155 behavior: expression(!this.before ? this.before = this.innerHTML = '&mdash;&nbsp;' + this.innerHTML : '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
156 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
157 ul.mdash li:before {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
158 content: '\2014\a0';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
159 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
160
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
161 .small_line_indent {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
162 height: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
163 margin-top: -7px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
164 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
165 /************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
166
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
167 /* Tooltips */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
168 .tooltip {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
169 font-size: 0.9em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
170 margin-bottom: 5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
171 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
172 .tooltip.in {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
173 opacity: 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
174 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
175 .tooltip-inner {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
176 text-align: left;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
177 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
178 .tooltip-link,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
179 .tooltip-link:visited {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
180 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
181 color: #000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
182 border-bottom: 1px dashed #bbb;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
183 cursor: hand;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
184 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
185 .tooltip-link:hover {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
186 text-decoration: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
187 color: #b33;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
188 border-bottom: 1px dashed #b33;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
189 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
190 /************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
191
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
192 /*********/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
193
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
194 .hs {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
195 /* Полупробел для
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
196 разделения разрядов чисел:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
197 10<span class="hs"></span>000 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
198 margin-left: .2em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
199 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
200
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
201 .rhs {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
202 /* Полупробел на случай,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
203 если реальный пробел важен,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
204 например между ценой и валютой:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
205 1<span class="rhs">&nbsp;</span>$ */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
206 font-size: 50%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
207 line-height: 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
208 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
209
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
210 /*9490<span class="rhs"> </span>€<br/>*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
211 /*12<span class="hs"></span>650<span class="rhs"> </span>$<br/>*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
212 /*379<span class="hs"></span>000<span*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
213 /*class="rhs"> </span><span class="b-rub">Р</span><br/>*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
214 /*100<span class="hs"></span>500<span class="rhs"> </span>+*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
215
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
216 /* for wrapping long words with no spaces */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
217 /* http://stackoverflow.com/questions/3247358/css-how-do-i-wrap-text-with-no-whitespace-inside-a-td */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
218 .wrapword {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
219 white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
220 white-space: -pre-wrap; /* Opera 4-6 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
221 white-space: -o-pre-wrap; /* Opera 7 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
222 white-space: pre-wrap; /* css-3 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
223 word-wrap: break-word; /* Internet Explorer 5.5+ */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
224 word-break: break-all;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
225 white-space: normal;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
226 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
227
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
228
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
229 .space_1px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
230 height: 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
231 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
232 .space_2px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
233 height: 2px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
234 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
235 .space_3px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
236 height: 3px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
237 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
238 .space_4px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
239 height: 4px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
240 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
241 .space_5px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
242 height: 5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
243 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
244 .space_6px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
245 height: 6px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
246 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
247 .space_7px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
248 height: 7px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
249 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
250 .space_8px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
251 height: 8px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
252 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
253 .space_9px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
254 height: 9px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
255 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
256 .space_10px {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
257 height: 10px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
258 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
259 .layout-table {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
260 width: 99%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
261 border-spacing: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
262 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
263
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
264 .layout-table td.layout-table-td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
265 vertical-align: top;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
266 padding: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
267 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
268 .layout-table td.layout-table-fst-td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
269 min-width: 400px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
270 padding-right: 50px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
271 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
272 .layout-table td.layout-table-snd-td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
273 min-width: 200px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
274 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
275 .layout-table td.layout-table-trd-td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
276 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
277
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
278 .top-panel {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
279 background-color: #444;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
280 color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
281 min-width: 650px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
282 padding: 8px 10px 0 147px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
283 min-height: 70px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
284 text-shadow: -1px -1px 0 #111;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
285 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
286 .top-panel span {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
287 color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
288 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
289 .top-panel a {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
290 color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
291 border-bottom: 1px solid white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
292 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
293 #to_main_menu_button a {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
294 border-bottom: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
295 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
296 .page_title {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
297 margin-top: -3px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
298 margin-bottom: -3px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
299 color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
300 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
301 .page_subtitle {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
302 line-height: 100%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
303 white-space: nowrap;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
304 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
305 .content {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
306 margin-left: 147px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
307 width: 90%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
308 /*padding-top: 20px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
309 margin-bottom: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
310 /*padding-bottom: 50px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
311 /*{# padding-right: 20px;#}*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
312 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
313 .p_after_content {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
314 margin-left: 147px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
315 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
316 .links_after_content{
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
317 font-size: 14px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
318 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
319
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
320 p {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
321 display: block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
322 font-size: 12px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
323 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
324
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
325 h1 {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
326 display: block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
327 font-size: 26px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
328 padding: 0 -3px 0 5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
329 -webkit-margin-before: 5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
330 -webkit-margin-after: 0px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
331 -webkit-margin-start: 0px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
332 -webkit-margin-end: 0px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
333 font-weight: bold;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
334 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
335
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
336 #header {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
337 display: block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
338 width: 100%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
339 margin-bottom: 10px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
340 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
341
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
342 .logo_img {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
343 height: 40px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
344 margin-bottom: -10px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
345 margin-left: -6px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
346 margin-right: -7px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
347 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
348 </style>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
349
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
350 <style rel="stylesheet">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
351 .report-and-plots {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
352 margin-top: 15px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
353 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
354
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
355 /****************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
356 /* REPORT TABLE */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
357 .report {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
358 margin: 0 100px 50px 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
359 float: left;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
360 font-size: 1em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
361 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
362
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
363 #main_report {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
364 /*min-width: 600px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
365 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
366
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
367 /*#extended_link {*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
368 /*margin-top: 5px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
369 /*}*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
370
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
371 #ref_report {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
372 /*min-width: 300px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
373 margin-right: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
374 margin-bottom: 20px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
375 /*margin-right: 200px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
376 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
377
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
378 .report td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
379 margin: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
380 padding: 2px 0.6em 0 14px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
381 /*min-width: 100px;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
382 max-width: 400px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
383 white-space: nowrap;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
384 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
385 .report td.number {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
386 text-align: right;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
387 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
388
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
389 .report tr.top_row_tr td,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
390 .report tr.group_header td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
391 font-weight: bold;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
392 border-bottom: 1px solid #ddd;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
393 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
394 .report tr.group_header td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
395 height: 20px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
396 vertical-align: bottom;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
397 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
398
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
399 #ref_report tr.top_row_tr td,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
400 #ref_report tr.group_header td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
401 font-weight: normal;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
402 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
403
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
404 .report tr td:first-child {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
405 padding-left: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
406 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
407 .report tr td:last-child {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
408 padding-right: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
409 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
410
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
411 .report tr.row_hidden, tr.group_empty {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
412 display: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
413 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
414
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
415 .report tr.secondary_hidden {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
416 display: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
417 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
418
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
419 /*.report td.secondary_td {*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
420 /*padding-left: 10px !important;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
421 /*}*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
422
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
423 span.heatmap_legend {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
424 font-size: 11px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
425 display: inline-block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
426 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
427
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
428 #heatmap_header {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
429 margin-right: 30px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
430 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
431
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
432 #combined_reference_length {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
433 padding-top: 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
434 padding-bottom: 15px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
435 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
436
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
437 span.metric-name.expandable {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
438 margin-left: -13px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
439 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
440
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
441 span.metric-name.secondary {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
442 margin-left: 13px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
443 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
444
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
445 span.metric-name.expandable.collapsed::before {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
446 content: '+ ';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
447 color: #CCC;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
448 cursor: pointer;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
449 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
450
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
451 span.metric-name.expandable.expanded::before {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
452 content: '\2212\a0'; /* &minus&nbsp */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
453 color: #CCC;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
454 cursor: pointer;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
455 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
456
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
457 .report_legend {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
458 padding-left: 15px; /* compensate drag handles */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
459 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
460
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
461 #contigs_are_ordered {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
462 z-index: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
463 position: relative;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
464 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
465
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
466
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
467 /*.report .report-table-header {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
468 font-weight: bold;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
469 }*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
470
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
471 /*.report thead td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
472 border-bottom: 1px solid #bbb;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
473 }*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
474
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
475
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
476 /*************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
477 /* Draggable */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
478 table.moving_table {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
479 box-shadow: -0px 0px 5px 1px #888888;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
480 -moz-box-shadow: -0px 0px 5px 1px #888888;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
481 -webkit-box-shadow: -0px 0px 5px 1px #888888;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
482 /*outline: 1px solid #888888;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
483 background-color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
484 z-index: 3 !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
485 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
486
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
487 table.draggable .drag_handle {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
488 padding: 2px 1px 0 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
489 margin: 0 2px 0 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
490
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
491 cursor: grab;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
492 cursor: -moz-grab;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
493 cursor: -webkit-grab;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
494 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
495
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
496 table.draggable .drag_handle .drag_image {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
497 height: 9px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
498 width: 9px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
499 display: inline-block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
500 background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAIAAABv85FHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAiElEQVQImV2OsQ3FIAxEz2AhCAukyATZf5ZMQI8okZUjhfWj6F/pd09n6b1f1wUgxkgSAACS53lqSmnfdxHBLyJCMucsc877vv201nobKSUl2VoLIeATksdxKEmf+UqOxczGGDHGP7Ztm5qZmfmkYx8upehaq/fu4P2WZK1VAdRaAbjqXghBVR9BvlQcgtQsKgAAAABJRU5ErkJggg==") no-repeat;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
501 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
502
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
503 table.draggable .drag_handle:active,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
504 table.draggable td.cell_of_moving_table .drag_handle {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
505 cursor: grabbing !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
506 cursor: -moz-grabbing !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
507 cursor: -webkit-grabbing !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
508 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
509
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
510 /* Override the styles for the first and the last columns of the table.report.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
511 The cloned table contains a single column which is both first and last,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
512 and we don't need it to inherit those styles. */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
513 table.draggable td.cell_of_moving_table {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
514 padding-left: 14px !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
515 padding-right: 0.6em !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
516 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
517
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
518 table.draggable td.hovered_column_td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
519 background-color: #cccccc;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
520 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
521
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
522 table.draggable td.second_through_last_col_headers_td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
523 padding-left: 0 !important; /* compensate handle images */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
524 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
525
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
526 table.draggable td.cell_of_empty_space * {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
527 visibility: hidden;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
528 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
529
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
530 table.draggable td.cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
531 border: none !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
532 /*border-left: 1px solid #888888;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
533 border-right: 1px solid #888888;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
534 margin-right: -1px !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
535 margin-left: -1px !important; */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
536 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
537
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
538 /*table.draggable td.bottom_cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
539 border-bottom: 1px solid #888888 !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
540 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
541
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
542 table.draggable td.top_cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
543 border-top: 1px solid #888888 !important;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
544 /*margin-top: -1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
545 }*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
546
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
547 table.draggable td.top_cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
548 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
549
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
550 table.draggable td.left_to_cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
551 /*outline-left: 1px solid #888888;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
552 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
553
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
554 table.draggable td.right_to_cell_of_empty_space {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
555 /*outline-right: 1px solid #888888;*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
556 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
557
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
558 /********/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
559 /* META */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
560 #main_ref_genome {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
561
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
562 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
563
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
564 table#refgenome td.last_row {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
565 border-top: 1px solid #ddd;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
566 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
567
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
568 /************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
569 /* PLOTTING */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
570 .plot-switch {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
571 margin-left: 10px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
572 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
573
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
574 .plot-mis-type-switch {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
575 margin-left: 23px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
576 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
577
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
578 .plot-wrapper {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
579 padding-right: 80px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
580 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
581
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
582 .plot-header {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
583 margin-left: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
584 font-weight: bold;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
585 height: 1.5em;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
586 display: block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
587 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
588
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
589 .plots {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
590 margin-left: -30px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
591 margin-right: 70px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
592 margin-top: 2px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
593 margin-bottom: 50px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
594 float: left;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
595 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
596 .plots td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
597 vertical-align: top;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
598 white-space: nowrap;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
599 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
600
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
601 .plots div#plots-switches, tr#plots-into-tr p {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
602 padding-left: 30px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
603 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
604
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
605 #legend-placeholder {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
606 min-width: 80px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
607 margin-top: -2px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
608 margin-left: -5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
609 position: relative;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
610 z-index: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
611 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
612
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
613 .legendColorBox div {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
614 display: none;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
615 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
616
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
617 #legend-placeholder td {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
618 vertical-align: top;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
619 white-space: nowrap;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
620 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
621
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
622 #plot-placeholder {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
623 width: 986px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
624 height: 600px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
625
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
626 /* for auto sizing plots when resizing the page
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
627 min-width: 500px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
628 min-height: 500px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
629 width: 100%;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
630 min-height: 400px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
631 height: 50%; */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
632
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
633 margin-left: -55px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
634 margin-right: 20px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
635 float: left;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
636
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
637 z-index: 2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
638 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
639
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
640 #change-assembly {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
641 white-space: nowrap;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
642 width: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
643 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
644
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
645 /*************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
646 /* Plot tips */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
647 #plot_tip {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
648 position: absolute;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
649 opacity: 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
650 padding: 2px 5px 2px 5px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
651
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
652 z-index: 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
653 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
654
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
655 #plot_tip_vertical_rule, #plot_tip_horizontal_rule {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
656 position: absolute;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
657 border: 1px solid #BBB;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
658 z-index: -2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
659 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
660
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
661 #plot_tip_vertical_rule {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
662 border-left: 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
663 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
664
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
665 #plot_tip_horizontal_rule {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
666 border-top: 1px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
667 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
668
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
669 .white_stroked {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
670 color: black;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
671 background-color: white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
672 text-shadow:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
673 -3px -3px 0 white,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
674 3px -3px 0 white,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
675 -3px 3px 0 white,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
676 3px 3px 0 white;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
677 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
678
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
679 img.icon_plot {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
680 width: 14px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
681 height: 12px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
682 display: inline-block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
683 content: '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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==");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
685 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
686
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
687 #sortRefsBtn label {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
688 display: block;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
689 margin-left: 20px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
690 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
691 #sortRefsBtn input {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
692 float: left;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
693 margin-left: -20px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
694 margin-right: 7px;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
695 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
696
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
697 #mincontig {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
698 margin-bottom: 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
699 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
700 </style>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
701
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
702
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
703 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
704 /*! jQuery v1.8.2 jquery.com | jquery.org/license */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
706 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
707
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
708 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
710 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
711
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
712 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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})()};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
714 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
715
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
716 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
717 /*
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
718 * jQuery.flot.dashes
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
719 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
720 * options = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
721 * series: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
722 * dashes: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
723 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
724 * // show
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
725 * // default: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
726 * // Whether to show dashes for the series.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
727 * show: <boolean>,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
728 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
729 * // lineWidth
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
730 * // default: 2
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
731 * // The width of the dashed line in pixels.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
732 * lineWidth: <number>,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
733 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
734 * // dashLength
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
735 * // default: 10
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
736 * // Controls the length of the individual dashes and the amount of
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
737 * // space between them.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
738 * // If this is a number, the dashes and spaces will have that length.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
739 * // If this is an array, it is read as [ dashLength, spaceLength ]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
740 * dashLength: <number> or <array[2]>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
741 * }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
742 * }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
743 * }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
744 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
745 (function($){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
746
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
747 function init(plot) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
748
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
749 plot.hooks.processDatapoints.push(function(plot, series, datapoints) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
750
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
751 if (!series.dashes.show) return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
752
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
753 plot.hooks.draw.push(function(plot, ctx) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
754
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
755 var plotOffset = plot.getPlotOffset(),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
756 axisx = series.xaxis,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
757 axisy = series.yaxis;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
758
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
759 function plotDashes(xoffset, yoffset) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
760
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
761 var points = datapoints.points,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
762 ps = datapoints.pointsize,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
763 prevx = null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
764 prevy = null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
765 dashRemainder = 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
766 dashOn = true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
767 dashOnLength,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
768 dashOffLength;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
769
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
770 if (series.dashes.dashLength[0]) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
771 dashOnLength = series.dashes.dashLength[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
772 if (series.dashes.dashLength[1]) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
773 dashOffLength = series.dashes.dashLength[1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
774 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
775 dashOffLength = dashOnLength;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
776 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
777 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
778 dashOffLength = dashOnLength = series.dashes.dashLength;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
779 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
780
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
781 ctx.beginPath();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
782
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
783 for (var i = ps; i < points.length; i += ps) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
784
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
785 var x1 = points[i - ps],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
786 y1 = points[i - ps + 1],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
787 x2 = points[i],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
788 y2 = points[i + 1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
789
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
790 if (x1 == null || x2 == null) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
791
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
792 // clip with ymin
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
793 if (y1 <= y2 && y1 < axisy.min) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
794 if (y2 < axisy.min) continue; // line segment is outside
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
795 // compute new intersection point
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
796 x1 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
797 y1 = axisy.min;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
798 } else if (y2 <= y1 && y2 < axisy.min) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
799 if (y1 < axisy.min) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
800 x2 = (axisy.min - y1) / (y2 - y1) * (x2 - x1) + x1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
801 y2 = axisy.min;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
802 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
803
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
804 // clip with ymax
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
805 if (y1 >= y2 && y1 > axisy.max) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
806 if (y2 > axisy.max) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
807 x1 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
808 y1 = axisy.max;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
809 } else if (y2 >= y1 && y2 > axisy.max) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
810 if (y1 > axisy.max) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
811 x2 = (axisy.max - y1) / (y2 - y1) * (x2 - x1) + x1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
812 y2 = axisy.max;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
813 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
814
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
815 // clip with xmin
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
816 if (x1 <= x2 && x1 < axisx.min) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
817 if (x2 < axisx.min) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
818 y1 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
819 x1 = axisx.min;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
820 } else if (x2 <= x1 && x2 < axisx.min) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
821 if (x1 < axisx.min) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
822 y2 = (axisx.min - x1) / (x2 - x1) * (y2 - y1) + y1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
823 x2 = axisx.min;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
824 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
825
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
826 // clip with xmax
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
827 if (x1 >= x2 && x1 > axisx.max) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
828 if (x2 > axisx.max) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
829 y1 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
830 x1 = axisx.max;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
831 } else if (x2 >= x1 && x2 > axisx.max) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
832 if (x1 > axisx.max) continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
833 y2 = (axisx.max - x1) / (x2 - x1) * (y2 - y1) + y1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
834 x2 = axisx.max;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
835 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
836
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
837 if (x1 != prevx || y1 != prevy) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
838 ctx.moveTo(axisx.p2c(x1) + xoffset, axisy.p2c(y1) + yoffset);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
839 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
840
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
841 var ax1 = axisx.p2c(x1) + xoffset,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
842 ay1 = axisy.p2c(y1) + yoffset,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
843 ax2 = axisx.p2c(x2) + xoffset,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
844 ay2 = axisy.p2c(y2) + yoffset,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
845 dashOffset;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
846
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
847 function lineSegmentOffset(segmentLength) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
848
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
849 var c = Math.sqrt(Math.pow(ax2 - ax1, 2) + Math.pow(ay2 - ay1, 2));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
850
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
851 if (c <= segmentLength) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
852 return {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
853 deltaX: ax2 - ax1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
854 deltaY: ay2 - ay1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
855 distance: c,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
856 remainder: segmentLength - c
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
857 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
858 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
859 var xsign = ax2 > ax1 ? 1 : -1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
860 ysign = ay2 > ay1 ? 1 : -1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
861 return {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
862 deltaX: xsign * Math.sqrt(Math.pow(segmentLength, 2) / (1 + Math.pow((ay2 - ay1)/(ax2 - ax1), 2))),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
863 deltaY: ysign * Math.sqrt(Math.pow(segmentLength, 2) - Math.pow(segmentLength, 2) / (1 + Math.pow((ay2 - ay1)/(ax2 - ax1), 2))),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
864 distance: segmentLength,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
865 remainder: 0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
866 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
867 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
868 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
869 //-end lineSegmentOffset
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
870
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
871 do {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
872
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
873 dashOffset = lineSegmentOffset(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
874 dashRemainder > 0 ? dashRemainder :
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
875 dashOn ? dashOnLength : dashOffLength);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
876
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
877 if (dashOffset.deltaX != 0 || dashOffset.deltaY != 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
878 if (dashOn) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
879 ctx.lineTo(ax1 + dashOffset.deltaX, ay1 + dashOffset.deltaY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
880 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
881 ctx.moveTo(ax1 + dashOffset.deltaX, ay1 + dashOffset.deltaY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
882 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
883 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
884
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
885 dashOn = !dashOn;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
886 dashRemainder = dashOffset.remainder;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
887 ax1 += dashOffset.deltaX;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
888 ay1 += dashOffset.deltaY;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
889
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
890 } while (dashOffset.distance > 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
891
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
892 prevx = x2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
893 prevy = y2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
894 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
895
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
896 ctx.stroke();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
897 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
898 //-end plotDashes
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
899
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
900 ctx.save();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
901 ctx.translate(plotOffset.left, plotOffset.top);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
902 ctx.lineJoin = 'round';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
903
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
904 var lw = series.dashes.lineWidth,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
905 sw = series.shadowSize;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
906
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
907 // FIXME: consider another form of shadow when filling is turned on
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
908 if (lw > 0 && sw > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
909 // draw shadow as a thick and thin line with transparency
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
910 ctx.lineWidth = sw;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
911 ctx.strokeStyle = "rgba(0,0,0,0.1)";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
912 // position shadow at angle from the mid of line
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
913 var angle = Math.PI/18;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
914 plotDashes(Math.sin(angle) * (lw/2 + sw/2), Math.cos(angle) * (lw/2 + sw/2));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
915 ctx.lineWidth = sw/2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
916 plotDashes(Math.sin(angle) * (lw/2 + sw/4), Math.cos(angle) * (lw/2 + sw/4));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
917 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
918
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
919 ctx.lineWidth = lw;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
920 ctx.strokeStyle = series.color;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
921
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
922 if (lw > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
923 plotDashes(0, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
924 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
925
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
926 ctx.restore();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
927
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
928 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
929 //-end draw hook
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
930
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
931 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
932 //-end processDatapoints hook
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
933
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
934 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
935 //-end init
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
936
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
937 $.plot.plugins.push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
938 init: init,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
939 options: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
940 series: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
941 dashes: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
942 show: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
943 lineWidth: 2,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
944 dashLength: 10
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
945 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
946 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
947 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
948 name: 'dashes',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
949 version: '0.1'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
950 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
951
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
952 })(jQuery)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
953
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
954
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
955 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
956
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
957 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
958
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
959 var cumulative = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
960 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
961
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
962 maxX: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
963 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
964 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
965 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
966 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
967 colors: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
968
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
969 draw: function(name, title, colors, filenames, listsOfLengths, refLengths, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
970 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
971
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
972 $(scalePlaceholder).empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
973
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
974 if (!this.isInitialized) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
975 // div.html(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
976 // "<span class='plot-header'>" + addTooltipIfDefinitionExists(glossary, title) + "</span>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
977 // "<div class='plot-placeholder' id='cumulative-plot-placeholder'></div>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
978 // );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
979 cumulative.series = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
980 var plotsN = filenames.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
981 var refLength = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
982 if (refLengths) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
983 for (var i = 0, size = refLengths.length; i < size; i++)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
984 refLength += refLengths[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
985 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
986 if (refLength) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
987 cumulative.maxY = refLength;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
988 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
989
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
990 cumulative.colors = colors;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
991
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
992 function addCumulativeLenData(label, index, color, lengths, isRef) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
993 if (!(lengths instanceof Array))
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
994 lengths = [lengths];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
995 var size = lengths.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
996 var points = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
997 data: new Array(size + 1),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
998 label: label,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
999 number: index,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1000 color: color
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1001 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1002
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1003 points.data[0] = [0, 0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1004
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1005 var y = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1006 for (var j = 0; j < size; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1007 y += lengths[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1008 points.data[j+1] = [j+1, y];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1009 if (y > cumulative.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1010 cumulative.maxY = y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1011 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1012 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1013
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1014 if (size > cumulative.maxX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1015 cumulative.maxX = size;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1016 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1017 if (isRef){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1018 points.isReference = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1019 points.dashes = {show: true, lineWidth: 1};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1020 if (size < cumulative.maxX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1021 points.data[size + 1] = [cumulative.maxX, y];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1022 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1023 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1024 return points;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1025 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1026
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1027 for (var i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1028 var lengths = listsOfLengths[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1029 var asm_name = filenames[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1030 var color = colors[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1031 cumulative.series[i] = addCumulativeLenData(asm_name, i, color, lengths);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1032 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1033
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1034 // var lineColors = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1035 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1036 // for (i = 0; i < colors.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1037 // lineColors.push(changeColor(colors[i], 0.9, false));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1038 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1039
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1040 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1041 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1042 cumulative.series[i].dashes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1043 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1044 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1045 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1046 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1047 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1048 cumulative.series[i].lines = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1049 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1050 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1051 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1052 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1053 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1054
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1055 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1056 cumulative.colors.push(cumulative.series[i].color);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1057 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1058
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1059 //cumulative.maxYTick = getMaxDecimalTick(cumulative.maxY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1060
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1061 if (refLengths) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1062 size = refLengths.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1063 var ref_label = 'reference,&nbsp;' + toPrettyString(refLength, 'bp');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1064 cumulative.series.push(addCumulativeLenData(ref_label, i, '#000000', refLengths, true));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1065 cumulative.colors.push('#000000');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1066 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1067
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1068
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1069 // if (referenceLength) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1070 // yaxes.push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1071 // ticks: [referenceLength],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1072 // min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1073 // max: maxYTick,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1074 // position: 'right',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1075 //// labelWidth: 50,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1076 // reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1077 // tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1078 // return '<div style="">' + toPrettyStringWithDimension(referenceLength, 'bp') +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1079 // ' <span style="margin-left: -0.2em;">(reference)</span></div>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1080 // },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1081 // minTickSize: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1082 // });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1083 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1084 var yaxis = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1085 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1086 //max: cumulative.maxYTick,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1087 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1088 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1089 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1090 color: '#000000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1091 tickFormatter: getBpTickFormatter(cumulative.maxY),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1092 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1093 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1094 var yaxes = [yaxis];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1095
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1096 cumulative.showWithData = function(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1097 var plot = $.plot(placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1098 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1099 colors: cumulative.colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1100 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1101 container: $('useless-invisible-element-that-does-not-even-exist'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1102 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1103 // legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1104 // container: legendPlaceholder,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1105 // position: 'se',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1106 // labelBoxBorderColor: '#FFF',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1107 // labelFormatter: labelFormatter,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1108 // },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1109 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1110 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1111 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1112 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1113 mouseActiveRadius: 1000
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1114 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1115 yaxes: yaxes,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1116 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1117 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1118 max: cumulative.maxX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1119 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1120 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1121 tickFormatter: getContigNumberTickFormatter(cumulative.maxX, tickX),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1122 minTickSize: tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1123 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1124 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1125
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1126 bindTip(placeholder, series, plot, ordinalNumberToPrettyString, tickX, 'contig', 'bottom right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1127 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1128
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1129 cumulative.isInitialized = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1130 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1131
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1132 addLegendClickEvents(cumulative, filenames.length, showPlotWithInfo, refLengths);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1133
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1134 showPlotWithInfo(cumulative);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1135
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1136 $('#contigs_are_ordered').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1137 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1138 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1139
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1140 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1141
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1142 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1143
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1144 var nx = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1145 nx: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1146 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1147 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1148 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1149 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1150 showWithData: null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1151 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1152
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1153 nax: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1154 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1155 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1156 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1157 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1158 showWithData: null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1159 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1160
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1161 ngx: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1162 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1163 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1164 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1165 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1166 showWithData: null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1167 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1168
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1169 ngax: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1170 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1171 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1172 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1173 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1174 showWithData: null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1175 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1176
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1177 draw: function (name, title, colors, filenames, data, refPlotValue, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1178 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1179
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1180 $(scalePlaceholder).empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1181
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1182 var coordX = data.coord_x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1183 var coordY = data.coord_y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1184
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1185 var cur_filenames = data.filenames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1186 var info = nx[name];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1187
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1188 if (!info.isInitialized) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1189 var plotsN = cur_filenames.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1190 info.series = new Array(plotsN);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1191
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1192 for (var i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1193 var index = $.inArray(cur_filenames[order[i]], filenames);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1194 var plot_coordX = coordX[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1195 var plot_coordY = coordY[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1196 var size = plot_coordX.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1197
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1198 info.series[i] = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1199 data: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1200 label: filenames[index],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1201 number: index,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1202 color: colors[index]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1203 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1204 info.series[i].data.push([0.0, plot_coordY[0]]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1205 var currentLen = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1206 var x = 0.0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1207
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1208 for (var k = 0; k < size; k++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1209 info.series[i].data.push([plot_coordX[k], plot_coordY[k]]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1210 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1211
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1212 if (info.series[i].data[0][1] > info.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1213 info.maxY = info.series[i].data[0][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1214 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1215
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1216 var lastPt = info.series[i].data[info.series[i].data.length-1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1217 info.series[i].data.push([lastPt[0], 0]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1218 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1219
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1220 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1221 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1222 info.series[i].dashes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1223 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1224 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1225 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1226 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1227 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1228 info.series[i].lines = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1229 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1230 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1231 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1232 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1233 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1234
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1235 // for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1236 // plotsData[i].points = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1237 // show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1238 // radius: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1239 // fill: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1240 // fillColor: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1241 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1242 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1243
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1244 info.showWithData = function(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1245 var plot = $.plot(placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1246 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1247 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1248 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1249 container: $('useless-invisible-element-that-does-not-even-exist'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1250 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1251 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1252 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1253 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1254 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1255 mouseActiveRadius: 1000
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1256 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1257 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1258 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1259 // max: info.maxY,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1260 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1261 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1262 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1263 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1264 tickFormatter: getBpTickFormatter(info.maxY),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1265 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1266 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1267 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1268 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1269 max: 100,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1270 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1271 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1272 tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1273 if (val == 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1274 return '&nbsp;x<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>100%'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1275 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1276 return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1277 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1278 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1279 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1280 minTickSize: tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1281 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1282 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1283
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1284 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1285 firstLabel.prepend(title + '<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1286
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1287 bindTip(placeholder, series, plot, toPrettyString, 1, '%', 'top right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1288
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1289 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1290
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1291 info.isInitialized = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1292 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1293
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1294 addLegendClickEvents(info, filenames.length, showPlotWithInfo);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1295 showPlotWithInfo(info);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1296 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1297 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1298
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1299
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1300
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1301 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1302
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1303 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1304
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1305 var normal_scale_span =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1306 "<span class='selected-switch'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1307 'Normal' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1308 "</span>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1309 var normal_scale_a =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1310 "<a class='dotted-link' onClick='setNormalScale()'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1311 'Normal' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1312 "</a>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1313 var log_scale_span =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1314 "<span class='selected-switch'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1315 'logarithmic' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1316 "</span>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1317 var log_scale_a =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1318 "<a class='dotted-link' onClick='setLogScale()'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1319 'logarithmic' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1320 "</a>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1321
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1322 var show_all_span =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1323 "<span class='selected-switch gc'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1324 'Back to overview' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1325 "</span>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1326 var show_all_a =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1327 "&nbsp;&nbsp;&nbsp;<a class='dotted-link' onClick='showAll()'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1328 'Back to overview' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1329 "</a>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1330
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1331 var gc = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1332 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1333
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1334 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1335 plot: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1336 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1337 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1338 minPow: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1339 ticks: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1340 placeholder: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1341 legendPlaceholder: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1342 colors: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1343 yAxisLabeled: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1344
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1345 show_all_el: show_all_span,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1346 reference: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1347
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1348 normal_scale_el: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1349 log_scale_el: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1350
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1351 draw: function(name, title, colors, filenames, gcInfos, reflen, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1352 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1353 gc.normal_scale_el = normal_scale_span;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1354 gc.log_scale_el = log_scale_a;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1355 $(scalePlaceholder).html(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1356 "<div id='change-scale' style='margin-right: 3px; visibility: hidden;'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1357 "<span id='normal_scale_label'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1358 gc.normal_scale_el +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1359 "</span>&nbsp;/&nbsp;" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1360 "<span id='log_scale_label'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1361 gc.log_scale_el +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1362 "</span> scale" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1363 "</div>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1364 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1365
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1366 var refIndex = gcInfos.reference_index;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1367 if (!gc.isInitialized) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1368 gc.legendPlaceholder = legendPlaceholder;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1369 gc.placeholder = placeholder;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1370 gc.colors = colors;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1371 gc.filenames = filenames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1372
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1373 var bin_size = 1.0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1374 var plotsN = filenames.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1375 gc.series = new Array(plotsN + 1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1376 gc.series[0] = new Array(plotsN);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1377
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1378 gc.maxY = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1379 var minY = Number.MAX_VALUE;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1380
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1381 function updateMinY(y) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1382 if (y < minY && y != 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1383 minY = y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1384 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1385 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1386 function updateMaxY(y) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1387 if (y > gc.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1388 gc.maxY = y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1389 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1390 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1391
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1392 for (var i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1393 gc.series[0][i] = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1394 data: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1395 label: filenames[order[i]],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1396 number: order[i],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1397 color: colors[order[i]]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1398 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1399 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1400
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1401 function makeSeriesFromDistributions(distributionsXandY, series_i, plot_i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1402 var distributionsX = distributionsXandY[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1403 var distributionsY = distributionsXandY[1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1404
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1405 for (var j = 0; j < distributionsX.length; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1406 var x = distributionsX[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1407 var y = distributionsY[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1408 gc.series[series_i][plot_i].data.push([x, y]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1409 updateMinY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1410 updateMaxY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1411 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1412 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1413
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1414 function makeSeries(listsOfGCInfo, listOfGcDistributions, seriesIdx) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1415 for (var i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1416 if (listsOfGCInfo) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1417 makeSeriesFromInfo(listsOfGCInfo[order[i]], seriesIdx, i);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1418 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1419 makeSeriesFromDistributions(listOfGcDistributions[order[i]], seriesIdx, i);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1420 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1421 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1422 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1423
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1424 var listsOfGCInfo = gcInfos.lists_of_gc_info;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1425 var listOfGcDistributions = gcInfos.list_of_GC_distributions;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1426 makeSeries(listsOfGCInfo, listOfGcDistributions, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1427
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1428 function makeSeriesFromInfo(GC_info, series_i, i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1429 var cur_bin = 0.0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1430
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1431 var x = cur_bin;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1432 var y = filterAndSumGcInfo(GC_info, function(GC_percent) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1433 return GC_percent == cur_bin;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1434 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1435 gc.series[series_i][i].data.push([x, y]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1436
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1437 updateMinY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1438 updateMaxY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1439
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1440 while (cur_bin < 100.0 - bin_size) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1441 cur_bin += bin_size;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1442
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1443 x = cur_bin;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1444 y = filterAndSumGcInfo(GC_info, function(GC_percent) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1445 return GC_percent > (cur_bin - bin_size) && GC_percent <= cur_bin;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1446 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1447 gc.series[series_i][i].data.push([x, y]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1448
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1449 updateMinY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1450 updateMaxY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1451 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1452
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1453 x = 100.0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1454 y = filterAndSumGcInfo(GC_info, function(GC_percent) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1455 return GC_percent > cur_bin && GC_percent <= 100.0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1456 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1457
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1458 gc.series[series_i][i].data.push([x, y]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1459
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1460 updateMinY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1461 updateMaxY(y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1462 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1463
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1464 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1465 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1466 gc.series[0][i].dashes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1467 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1468 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1469 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1470 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1471 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1472 gc.series[0][i].lines = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1473 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1474 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1475 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1476 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1477 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1478
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1479 if (refIndex) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1480 gc.reference = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1481 gc.series[0].push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1482 data: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1483 label: 'reference',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1484 isReference: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1485 number: filenames.length,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1486 lines: {},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1487 dashes: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1488 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1489 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1490 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1491 color: '#000000'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1492 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1493 if (listsOfGCInfo) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1494 makeSeriesFromInfo(listsOfGCInfo[refIndex], 0, refIndex);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1495 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1496 makeSeriesFromDistributions(listOfGcDistributions[refIndex], 0, refIndex);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1497 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1498 gc.colors.push('#000000')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1499 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1500
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1501 if (gcInfos.list_of_GC_contigs_distributions) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1502 listOfGcDistributions = gcInfos.list_of_GC_contigs_distributions;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1503 var maxY = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1504 for (var file_n = 0; file_n < filenames.length; file_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1505 gc.series[file_n + 1] = new Array(1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1506 gc.series[file_n + 1][0] = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1507 data: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1508 label: filenames[order[file_n]],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1509 number: order[file_n],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1510 color: colors[order[file_n]],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1511 bars: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1512 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1513 lineWidth: 0.6,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1514 fill: 0.6,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1515 barWidth: 5
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1516 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1517 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1518
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1519 var distributionsX = listOfGcDistributions[file_n][0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1520 var distributionsY = listOfGcDistributions[file_n][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1521
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1522 for (var j = 0; j < distributionsX.length; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1523 var x = distributionsX[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1524 var y = distributionsY[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1525 gc.series[file_n + 1][0].data.push([x, y]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1526 maxY = Math.max(maxY, y);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1527 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1528 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1529 for (var file_n = 0; file_n < filenames.length; file_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1530 gc.series[file_n + 1][0].maxY = maxY;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1531 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1532 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1533 // Calculate the minimum possible non-zero Y to clip useless bottoms
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1534 // of logarithmic plots.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1535 var maxYTick = getMaxDecimalTick(gc.maxY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1536 gc.minPow = Math.round(Math.log(minY) / Math.log(10));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1537 gc.ticks = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1538 for (var pow = gc.minPow; Math.pow(10, pow) < maxYTick; pow++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1539 gc.ticks.push(Math.pow(10, pow));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1540 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1541 gc.ticks.push(Math.pow(10, pow));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1542
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1543 gc.isInitialized = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1544 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1545
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1546 gc.showWithData = showInNormalScaleWithData;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1547 if (gcInfos.list_of_GC_contigs_distributions) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1548 createLegend(gc.filenames, gc.colors, 0, gc.reference);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1549 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1550 addLegendClickEvents(gc, filenames.length, showPlotWithInfo, false, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1551
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1552 showPlotWithInfo(gc, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1553
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1554 $('#change-scale').css('visibility', 'visible');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1555 $('#gc_info').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1556 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1557 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1558
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1559 function showAll() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1560 $('#change-scale').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1561 $('#gc_info').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1562 $('#gc_contigs_info').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1563 createLegend(gc.filenames, gc.colors, 0, gc.reference);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1564
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1565 gc.show_all_el = show_all_span;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1566 gc.showWithData = gc.log_scale_el == log_scale_a ? showInNormalScaleWithData : showInLogarithmicScaleWithData;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1567
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1568 $('#show_all_label').html(gc.show_all_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1569 showPlotWithInfo(gc, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1570 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1571
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1572 function showPlot(index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1573 $('#change-scale').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1574 $('#gc_info').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1575 $('#gc_contigs_info').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1576 createLegend([gc.filenames[index - 1]], [gc.colors[index - 1]], index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1577
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1578 gc.show_all_el = show_all_a;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1579 gc.showWithData = showOneAssembly;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1580
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1581 $('#show_all_label').html(gc.show_all_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1582 showPlotWithInfo(gc, index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1583 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1584
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1585 function showOneAssembly(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1586 if (series == null) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1587 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1588 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1589
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1590 gc.plot = $.plot(gc.placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1591 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1592 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1593 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1594 container: $('useless-invisible-element-that-does-not-even-exist')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1595 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1596 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1597 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1598 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1599 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1600 mouseActiveRadius: 1000
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1601 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1602 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1603 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1604 max: series[0].maxY * 1.1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1605 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1606 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1607 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1608 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1609 tickFormatter: getJustNumberTickFormatter(gc.maxY),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1610 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1611 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1612 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1613 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1614 max: 100,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1615 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1616 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1617 tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1618 if (val == 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1619 return '&nbsp;100% GC'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1620 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1621 return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1622 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1623 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1624 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1625 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1626 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1627 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1628
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1629 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1630 firstLabel.append(' contigs');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1631 unBindTips(gc.placeholder);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1632 bindTip(gc.placeholder, series, gc.plot, getIntervalToPrettyString(5), 1, '%<span class="rhs">&nbsp;</span>GC', 'top right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1633 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1634
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1635 function showInNormalScaleWithData(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1636 if (series == null || gc.maxY == null)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1637 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1638
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1639 gc.yAxisLabeled = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1640
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1641 gc.plot = $.plot(gc.placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1642 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1643 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1644 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1645 container: $('useless-invisible-element-that-does-not-even-exist'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1646 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1647 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1648 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1649 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1650 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1651 mouseActiveRadius: 1000,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1652 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1653 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1654 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1655 // max: gc.maxY + 0.1 * gc.maxY,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1656 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1657 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1658 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1659 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1660 tickFormatter: windowsTickFormatter,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1661 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1662 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1663 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1664 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1665 max: 100,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1666 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1667 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1668 tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1669 if (val == 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1670 return '&nbsp;100% GC'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1671 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1672 return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1673 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1674 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1675 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1676 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1677 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1678 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1679
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1680 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1681 firstLabel.append(' windows');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1682 bindTip(gc.placeholder, series, gc.plot, toPrettyString, 1, '%<span class="rhs">&nbsp;</span>GC', 'top right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1683 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1684
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1685
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1686 function showInLogarithmicScaleWithData(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1687 if (series == null || gc.maxY == null || gc.minPow == null) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1688 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1689 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1690
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1691 gc.yAxisLabeled = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1692
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1693 gc.plot = $.plot(gc.placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1694 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1695 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1696 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1697 container: $('useless-invisible-element-that-does-not-even-exist'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1698 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1699 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1700 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1701 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1702 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1703 mouseActiveRadius: 1000
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1704 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1705 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1706 min: Math.pow(10, gc.minPow),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1707 // max: gc.maxY,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1708 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1709 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1710 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1711 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1712 tickFormatter: windowsTickFormatter,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1713 minTickSize: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1714 ticks: gc.ticks,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1715
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1716 transform: function(v) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1717 return Math.log(v + 0.0001)/*move away from zero*/ / Math.log(10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1718 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1719 inverseTransform: function(v) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1720 return Math.pow(v, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1721 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1722 tickDecimals: 3
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1723 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1724 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1725 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1726 max: 100,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1727 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1728 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1729 tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1730 if (val == 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1731 return '&nbsp;100%<span class="rhs">&nbsp;</span>GC'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1732 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1733 return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1734 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1735 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1736 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1737 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1738 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1739 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1740
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1741 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1742 firstLabel.append(' windows');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1743 bindTip(gc.placeholder, series, gc.plot, toPrettyString, 1, '% GC', 'top right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1744 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1745
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1746
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1747 function setLogScale() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1748 gc.normal_scale_el = normal_scale_a;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1749 gc.log_scale_el = log_scale_span;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1750 gc.showWithData = showInLogarithmicScaleWithData;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1751
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1752 $('#normal_scale_label').html(gc.normal_scale_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1753 $('#log_scale_label').html(gc.log_scale_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1754 showPlotWithInfo(gc, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1755 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1756
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1757
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1758 function setNormalScale() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1759 gc.normal_scale_el = normal_scale_span;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1760 gc.log_scale_el = log_scale_a;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1761 gc.showWithData = showInNormalScaleWithData;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1762
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1763 $('#normal_scale_label').html(gc.normal_scale_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1764 $('#log_scale_label').html(gc.log_scale_el);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1765 showPlotWithInfo(gc, 0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1766 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1767
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1768
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1769
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1770 function filterAndSumGcInfo(GC_info, condition) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1771 var contigs_lengths_cur_bin = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1772 for (var j = 0; j < GC_info.length; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1773 var GC = GC_info[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1774 var contig_length = GC[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1775 var GC_percent = GC[1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1776
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1777 if (condition(GC_percent) == true) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1778 contigs_lengths_cur_bin.push(contig_length);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1779 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1780 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1781 var val_bp = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1782 for (var j = 0; j < contigs_lengths_cur_bin.length; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1783 val_bp += contigs_lengths_cur_bin[j];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1784 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1785 return val_bp;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1786 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1787
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1788 function createLegend(labels, colors, index, reference) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1789 var selectedAssemblies = getSelectedAssemblies(labels);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1790 $('#legend-placeholder').empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1791 var selectors = "";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1792
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1793 labels.forEach(function(label, i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1794 var link = index ? '' : '<span id="' + labels[i] + '-switch"' + "class='plot-gc-type-switch dotted-link'>by contigs<br></span><br>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1795 var assemblyIdx = gc.filenames.indexOf(label);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1796 addLabelToLegend(assemblyIdx, label, selectedAssemblies, colors, link);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1797 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1798 if (reference) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1799 isChecked = (selectedAssemblies.length > 0 && selectedAssemblies.indexOf(gc.filenames.length.toString())) != -1 ? 'checked="checked"' : "";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1800 $('#legend-placeholder').append(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1801 '<div id="reference-label">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1802 '<label for="reference" style="color: #000000;">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1803 '<input type="checkbox" name="' + gc.filenames.length +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1804 '" checked="' + isChecked + '" id="reference">&nbsp;' + 'reference' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1805 '</label>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1806 '</div>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1807 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1808 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1809 if (index > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1810 for (var filenames_n = 0; filenames_n < gc.filenames.length; filenames_n++){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1811 selectors += '<br><span id="' + gc.filenames[filenames_n] + '-switch" ' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1812 "class='plot-switch dotted-link'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1813 gc.filenames[filenames_n] + "</span>";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1814 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1815 $('#legend-placeholder').append(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1816 "<br><br><div id='change-assembly' style='margin-right: 3px;'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1817 "<span id='show_all_label'>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1818 gc.show_all_el +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1819 "</span><br>" + selectors +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1820 "</div>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1821 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1822 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1823 addLinksToSwitches(index - 1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1824 addLegendClickEvents(gc, gc.series.length, showPlotWithInfo, false, index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1825 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1826
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1827 function addLinksToSwitches(index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1828 var filenames = gc.filenames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1829 for (filenames_n = 0; filenames_n < filenames.length; filenames_n++){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1830 var switchSpan = document.getElementById(filenames[filenames_n] + "-switch");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1831 $(switchSpan).click(getToggleSwitchFunction(filenames_n + 1));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1832 if (filenames_n == index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1833 switchSpan.className = 'plot-switch selected-switch gc';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1834 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1835 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1836 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1837
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1838 function getToggleSwitchFunction(index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1839 return function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1840 if (index > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1841 showPlot(index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1842 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1843 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1844 showAll();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1845 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1846 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1847 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1848 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1849
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1850 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1851
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1852 var frc = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1853 genes: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1854 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1855
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1856 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1857 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1858 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1859 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1860
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1861 yAxisLabeled: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1862 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1863
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1864 operons: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1865 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1866
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1867 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1868 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1869 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1870 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1871
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1872 yAxisLabeled: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1873 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1874
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1875 misassemblies: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1876 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1877
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1878 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1879 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1880 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1881 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1882
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1883 yAxisLabeled: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1884 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1885
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1886 draw: function (name, title, colors, filenames, data, refGenesNumber, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1887 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1888 // div.html(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1889 // "<span class='plot-header'>" + kind[0].toUpperCase() + kind.slice(1) + "s covered</span>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1890 // "<div class='plot-placeholder' id='" + kind + "s-plot-placeholder'></div>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1891 // );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1892 $(scalePlaceholder).empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1893
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1894 var info = frc[name];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1895 var coordX = data.coord_x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1896 var coordY = data.coord_y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1897
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1898 info.yAxisLabeled = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1899 var cur_filenames = data.filenames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1900 if (!info.isInitialized) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1901 var plotsN = cur_filenames.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1902 info.series = new Array(plotsN);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1903
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1904 info.maxY = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1905 info.maxX = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1906
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1907 for (var i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1908 var index = $.inArray(cur_filenames[order[i]], filenames);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1909 var plot_coordX = coordX[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1910 var plot_coordY = coordY[order[i]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1911 var featureSpace = plot_coordX[plot_coordX.length - 1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1912 var maxY = plot_coordY[plot_coordY.length - 1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1913
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1914 info.series[i] = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1915 data: [],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1916 label: filenames[index],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1917 number: index,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1918 color: colors[index]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1919 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1920
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1921 info.series[i].data.push([0.0, plot_coordY[0]]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1922
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1923 if (featureSpace > info.maxX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1924 info.maxX = featureSpace;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1925 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1926 for (var k = 0; k < plot_coordX.length; k++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1927 info.series[i].data.push([plot_coordX[k], plot_coordY[k]]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1928 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1929
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1930 if (maxY > info.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1931 info.maxY = maxY;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1932 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1933 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1934
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1935 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1936 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1937 info.series[i].dashes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1938 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1939 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1940 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1941 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1942 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1943 info.series[i].lines = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1944 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1945 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1946 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1947 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1948 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1949
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1950 info.showWithData = function(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1951 var plot = $.plot(placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1952 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1953 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1954 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1955 container: $('useless-invisible-element-that-does-not-even-exist')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1956 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1957 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1958 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1959 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1960 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1961 mouseActiveRadius: 1000,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1962 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1963 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1964 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1965 max: Math.max(100, info.maxY),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1966 labelWidth: 145,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1967 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1968 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1969 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1970 tickFormatter: getPercentTickFormatter(Math.max(100, info.maxY)),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1971 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1972 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1973 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1974 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1975 max: info.maxX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1976 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1977 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1978 tickFormatter: getJustNumberTickFormatter(info.maxX, ' ' + name),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1979 minTickSize: tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1980 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1981 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1982
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1983 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1984 firstLabel.prepend('Genome coverage<span class="rhs">&nbsp;</span>=<span class="rhs">&nbsp;</span>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1985
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1986 bindTip(placeholder, series, plot, frcNumberToPrettyString, tickX, name, 'bottom right', false, '%');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1987 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1988
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1989 info.isInitialized = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1990 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1991
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1992 addLegendClickEvents(info, filenames.length, showPlotWithInfo, refGenesNumber);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1993 showPlotWithInfo(info);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1994 $('#frc_info').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1995 $('.frc_plot_name').html(name);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1996 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1997 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1998
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
1999
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2000
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2001 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2002
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2003 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2004
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2005 /**********/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2006 /* COLORS */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2007
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2008 // var colors = ["#FF5900", "#008FFF", "#168A16", "#7C00FF", "#00B7FF", "#FF0080", "#7AE01B", "#782400", "#E01B6A"];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2009 var standard_colors = [
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2010 '#FF0000', //red
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2011 '#0000FF', //blue
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2012 '#008000', //green
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2013 '#FFA500', //orange
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2014 '#FF00FF', //fushua
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2015 '#CCCC00', //yellow
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2016 '#800000', //maroon
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2017 '#00CCCC', //aqua
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2018 '#808080', //gray
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2019 '#800080', //purple
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2020 '#808000', //olive
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2021 '#000080', //navy
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2022 '#008080', //team
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2023 '#00FF00', //lime
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2024 ];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2025
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2026 function distinctColors(count) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2027 var colors = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2028 for(var hue = 0; hue < 360; hue += 360 / count) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2029 var color = hsvToRgb(hue, 100, 100);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2030 var colorStr = '#' + color[0].toString(16) + color[1].toString(16) + color[2].toString(16);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2031 colors.push();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2032 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2033 return colors;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2034 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2035
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2036 /**************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2037 /* FORMATTING */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2038 function isIntegral(num) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2039 return num % 1 === 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2040 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2041
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2042 function isFractional(num) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2043 return !isIntegral(num);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2044 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2045
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2046 function getIntervalToPrettyString(interval) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2047 return function(num, unit) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2048 return intervalToPrettyString(interval, num, unit);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2049 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2050 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2051
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2052 function intervalToPrettyString(interval, num, unit) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2053 if (typeof num === 'number') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2054 var str = toPrettyString(num);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2055 str += '-' + toPrettyString(num + interval);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2056 str += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2057 return str;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2058 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2059 return num;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2060 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2061 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2062
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2063 function toPrettyString(num, unit) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2064 if (typeof num === 'number') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2065 var str;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2066 if (num <= 9999) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2067 if (isFractional(num)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2068 if (isIntegral(num * 10)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2069 str = num.toFixed(1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2070 } else if (isIntegral(num * 100) || num >= 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2071 str = num.toFixed(2);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2072 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2073 str = num.toFixed(3);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2074 if (str.slice(-1) == '0')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2075 str = str.slice(0, -1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2076 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2077 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2078 str = num.toFixed(0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2079 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2080 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2081 str = num.toFixed(0).replace(/(\d)(?=(\d\d\d)+(?!\d))/g,'$1<span class="hs"></span>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2082 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2083 str += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2084 return str;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2085 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2086 return num;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2087 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2088 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2089
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2090 //elif isinstance(value, float):
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2091 // if value == 0.0:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2092 // return '0'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2093 // if human_readable:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2094 // if unit == '%':
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2095 // value *= 100
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2096 // precision = 2
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2097 // for i in range(10, 1, -1):
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2098 // if abs(value) < 1./(10**i):
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2099 // precision = i + 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2100 // break
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2101 // return '{value:.{precision}f}{unit_str}'.format(**locals())
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2102 // else:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2103 // return str(value)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2104
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2105
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2106 function refToPrettyString(num, refs) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2107 return refs[Math.round(num)-1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2108 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2109
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2110 function ordinalNumberToPrettyString(num, unit, tickX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2111 num = num * tickX;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2112 var numStr = num.toString();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2113 var lastDigit = numStr[numStr.length-1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2114 var beforeLastDigit = numStr[numStr.length-2];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2115
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2116 var res = toPrettyString(num);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2117
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2118 if (lastDigit == '1' && beforeLastDigit != '1') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2119 res += "st";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2120 } else if (lastDigit == '2' && beforeLastDigit != '1') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2121 res += "nd";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2122 } else if (lastDigit == '3' && beforeLastDigit != '1') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2123 res += "rd";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2124 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2125 res += 'th';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2126 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2127
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2128 res += (unit ? '<span class="rhs">&nbsp;</span>' + unit : '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2129
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2130 return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2131 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2132
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2133 function frcNumberToPrettyString(num, unit, tickX, index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2134 if (index % 2 == 0 && num > 0) num--;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2135 return toPrettyString(num) + ' ' + unit;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2136 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2137
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2138 function getMaxDecimalTick(maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2139 var maxYTick = maxY;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2140 if (maxY <= 100000000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2141 maxYTick = Math.ceil((maxY+1)/10000000000)*10000000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2142 } if (maxY <= 10000000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2143 maxYTick = Math.ceil((maxY+1)/1000000000)*1000000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2144 } if (maxY <= 1000000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2145 maxYTick = Math.ceil((maxY+1)/100000000)*100000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2146 } if (maxY <= 100000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2147 maxYTick = Math.ceil((maxY+1)/10000000)*10000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2148 } if (maxY <= 10000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2149 maxYTick = Math.ceil((maxY+1)/1000000)*1000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2150 } if (maxY <= 1000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2151 maxYTick = Math.ceil((maxY+1)/100000)*100000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2152 } if (maxY <= 100000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2153 maxYTick = Math.ceil((maxY+1)/10000)*10000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2154 } if (maxY <= 10000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2155 maxYTick = Math.ceil((maxY+1)/1000)*1000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2156 } if (maxY <= 1000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2157 maxYTick = Math.ceil((maxY+1)/100)*100.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2158 } if (maxY <= 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2159 maxYTick = Math.ceil((maxY+1)/10)*10.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2160 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2161 return maxYTick;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2162 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2163
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2164 function getBpTickFormatter(maxY, additionalText) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2165 additionalText = additionalText || '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2166
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2167 return function(val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2168 var res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2169 if (val == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2170 res = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2171
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2172 } else if (axis.max >= 1000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2173 res = val / 1000000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2174
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2175 if (val > axis.max - 1 || val + axis.tickSize >= 1000000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2176 res = additionalText + toPrettyString(res, 'Mbp');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2177 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2178 res = toPrettyString(res);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2179 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2180 } else if (axis.max >= 1000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2181 res = val / 1000;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2182
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2183 if (val > axis.max - 1 || val + axis.tickSize >= 1000000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2184 res = additionalText + toPrettyString(res, 'kbp');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2185 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2186 res = toPrettyString(res);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2187 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2188 } else if (axis.max >= 1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2189 res = val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2190
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2191 if (val > axis.max - 1 || val + axis.tickSize >= 1000) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2192 res = additionalText + toPrettyString(res, 'bp');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2193 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2194 res = toPrettyString(res);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2195 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2196 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2197 return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2198 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2199 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2200
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2201 function windowsTickFormatter(v, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2202 return toPrettyString(v);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2203 // var val = v.toFixed(0);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2204 // if (!gc.yAxisLabeled && val > gc.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2205 // gc.yAxisLabeled = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2206 // var res = val + ' window';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2207 // if (val > 1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2208 // res += 's'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2209 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2210 // return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2211 // } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2212 // return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2213 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2214 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2215
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2216 function getBpLogTickFormatter(maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2217 return getBpTickFormatter(maxY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2218 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2219
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2220 function getContigNumberTickFormatter(maxX, tickX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2221 return function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2222 if (typeof axis.tickSize == 'number' && val > maxX - axis.tickSize) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2223 return "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + ordinalNumberToPrettyString(val, 'contig', tickX);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2224 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2225 return val * tickX;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2226 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2227 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2228 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2229
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2230 function getJustNumberTickFormatter(maxY, additionalText) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2231 return function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2232 additionalText = additionalText || '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2233 if (val > axis.max - axis.tickSize) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2234 res = toPrettyString(val) + additionalText;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2235 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2236 res = toPrettyString(val);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2237 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2238 return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2239 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2240 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2241
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2242 function getPercentTickFormatter(maxY, additionalText) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2243 return function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2244 additionalText = additionalText || '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2245 if (val > maxY + 1 || val == 100) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2246 res = additionalText + toPrettyString(val, '%');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2247 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2248 res = toPrettyString(val);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2249 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2250 return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2251 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2252 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2253
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2254 function trim(str) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2255 return str.replace(/^\s+/g, '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2256 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2257
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2258 function initial_spaces_to_nbsp(str, metricName) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2259 if (metricName.length > 0 && metricName[0] == ' ') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2260 str = '&nbsp;&nbsp;&nbsp;' + str;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2261 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2262 return str;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2263 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2264
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2265 function containsObject(obj, list) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2266 var i;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2267 for (i = 0; i < list.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2268 if (list[i] === obj) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2269 return true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2270 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2271 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2272
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2273 return false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2274 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2275
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2276 function addLegendClickEvents(info, numLegendItems, showPlotWithInfo, showReference, index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2277 if (showReference) numLegendItems++;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2278 for (var i = 0; i < numLegendItems; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2279 $('#legend-placeholder input[name=' + i + ']').click(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2280 showPlotWithInfo(info, index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2281 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2282 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2283 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2284
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2285 /*********************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2286 /* GLOSSARY TOOLTIPS */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2287 function addTooltipIfDefinitionExists(glossary, metricName) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2288 metricName = trim(metricName);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2289
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2290 if (containsObject(metricName, Object.keys(glossary))) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2291 return '<a class="tooltip-link" rel="tooltip" title="' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2292 metricName + ' ' + glossary[metricName] + '">' + metricName + '</a>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2293 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2294 return metricName;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2295 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2296 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2297
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2298 /*************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2299 /* PLOT TIPS */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2300 function bindTip(placeholder, series, plot, xToPrettyStringFunction, tickX, xUnit, position, summaryPlots, unitY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2301 var prevPoint = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2302 var prevIndex = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2303
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2304 $(placeholder).bind("plothover", function(event, pos, item) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2305 if (dragTable && dragTable.isDragging)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2306 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2307
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2308 if (item) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2309 if (prevPoint != item.dataIndex || (summaryPlots && item.seriesIndex != prevIndex)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2310 prevPoint = item.dataIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2311 prevIndex = item.seriesIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2312 var x = item.datapoint[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2313
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2314 showTip(item.pageX, item.pageY, plot.offset(),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2315 plot.width(), plot.height(),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2316 series, item.seriesIndex, x, item.dataIndex,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2317 xToPrettyStringFunction(x, xUnit, tickX, item.dataIndex) + ':',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2318 position, summaryPlots, unitY);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2319 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2320 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2321 $('#plot_tip').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2322 $('#plot_tip_vertical_rule').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2323 $('#plot_tip_horizontal_rule').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2324 prevPoint = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2325 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2326 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2327 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2328
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2329 function unBindTips(placeholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2330 $(placeholder).unbind("plothover");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2331 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2332
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2333 var tipElementExists = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2334 function showTip(pageX, pageY, offset, plotWidth, plotHeight,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2335 series, centralSeriesIndex, xPos, xIndex, xStr, position, summaryPlots, unitY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2336 const LINE_HEIGHT = 16; // pixels
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2337
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2338 position = ((position != null) ? position : 'bottom right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2339 // pageY -= LINE_HEIGHT * (centralSeriesIndex + 1.5);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2340
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2341 var directions = position.split(' ');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2342
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2343 if (!tipElementExists) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2344 $('<div id="plot_tip" class="white_stroked"></div>').appendTo('body');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2345
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2346 $('<div id="plot_tip_vertical_rule"></div>').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2347 height: plotHeight,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2348 }).appendTo('body');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2349
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2350 $('<div id="plot_tip_horizontal_rule"></div>').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2351 width: plotWidth,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2352 }).appendTo('body');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2353
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2354 tipElementExists = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2355 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2356
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2357 $('#plot_tip').html('').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2358 top: pageY + 5 - ((directions[0] == 'top') ? LINE_HEIGHT * (series.length + 2) : 0),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2359 left: pageX + 10,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2360 }).show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2361
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2362 $('#plot_tip_vertical_rule').html('').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2363 top: offset.top,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2364 left: pageX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2365 }).show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2366
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2367 $('#plot_tip_horizontal_rule').html('').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2368 top: pageY,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2369 left: offset.left,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2370 }).show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2371
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2372 $('<div>' + xStr + '</div>').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2373 height: LINE_HEIGHT,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2374 }).appendTo('#plot_tip');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2375
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2376 var sortedYsAndColors = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2377 for (var i = 0; i < series.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2378 if (!summaryPlots || (summaryPlots && series[i].data[xIndex] != undefined && series[i].data[xIndex][1] != null)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2379 sortedYsAndColors.push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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] :
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2381 findNearestPoint(series[i].data, xPos)),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2382 color: series[i].color,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2383 label: (series[i].isReference ? 'Reference' : series[i].label),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2384 isCurrent: i == centralSeriesIndex,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2385 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2386 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2387 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2388 sortedYsAndColors.sort(function(a, b) { return a.y < b.y;});
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2389
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2390 for (i = 0; i < sortedYsAndColors.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2391 var item = sortedYsAndColors[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2392
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2393 $('<div id="tip_line' + i + '">' + toPrettyString(item.y) + (unitY ? unitY : '') +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2394 ', <span style="color: ' + item.color + ';">' + item.label + '</span></div>').css({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2395 height: LINE_HEIGHT,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2396 "font-weight": item.isCurrent ? "bold" : "normal",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2397 }).appendTo('#plot_tip');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2398 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2399 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2400
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2401 function findNearestPoint(points, x) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2402 for (var i = 0; i < points.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2403 if (points[i][0] >= x) return points[i][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2404 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2405 return points[points.length-1][1]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2406 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2407
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2408 function addLabelToLegend(idx, label, selectedLabels, colors, link) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2409 var isChecked = (selectedLabels.length > 0 && selectedLabels.indexOf(idx.toString())) != -1 ? 'checked="checked"' : "";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2410 $('#legend-placeholder').append('<div>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2411 '<label for="' + label + '" style="color: ' + colors[idx] + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2412 '<input type="checkbox" name="' + idx + '"' + isChecked + ' id="' + label + '">&nbsp;' + label + '</label>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2413 (link ? '<br>' + link : '') + '</div>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2414 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2415
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2416 function getSelectedAssemblies(labels) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2417 var selectedAssemblies = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2418 var labelsMatch = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2419 var legendLabels = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2420 $('#legend-placeholder input[type="checkbox"]').each(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2421 legendLabels.push($(this).attr('id'));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2422 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2423 if (labels.every(function(label, i) { return ($.inArray(label, legendLabels) != -1 || label == 'reference')}) ) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2424 labelsMatch = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2425 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2426 if (labelsMatch) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2427 $('#legend-placeholder input:checked[type="checkbox"]').each(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2428 selectedAssemblies.push($(this).attr('name'));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2429 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2430 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2431 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2432 selectedAssemblies = Array.apply(null, {length: labels}).map(Number.call, Number);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2433 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2434 return selectedAssemblies;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2435 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2436
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2437 // Cookie functions based on http://www.quirksmode.org/js/cookies.html
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2438 // Cookies won't work for local files.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2439
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2440 var createCookie = function(name, value, days) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2441 var expires = '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2442 if (days) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2443 var date = new Date();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2444 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2445 expires = '; expires=' + date.toGMTString();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2446 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2447 var path = document.location.pathname;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2448 document.cookie = name + '=' + value + expires + '; path=' + path;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2449 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2450
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2451 var readCookie = function(name) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2452 var nameEQ = name + '=';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2453 var ca = document.cookie.split(';');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2454 for(var i = 0; i < ca.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2455 var c = ca[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2456 while (c.charAt(0) == ' ') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2457 c = c.substring(1, c.length);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2458 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2459 if (c.indexOf(nameEQ) == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2460 return c.substring(nameEQ.length, c.length);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2461 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2462 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2463 return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2464 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2465
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2466 var eraseCookie = function(name) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2467 createCookie(name, '', -1);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2468 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2469
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2470
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2471 // Dean's forEach: http://dean.edwards.name/base/forEach.js
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2472 /*forEach, version 1.0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2473 Copyright 2006, Dean Edwards
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2474 License: http://www.opensource.org/licenses/mit-license.php */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2475
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2476 // array-like enumeration
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2477 if (!Array.forEach) { // mozilla already supports this
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2478 Array.forEach = function(array, block, context) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2479 for (var i = 0; i < array.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2480 block.call(context, array[i], i, array);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2481 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2482 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2483 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2484
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2485 // generic enumeration
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2486 Function.prototype.forEach = function(object, block, context) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2487 for (var key in object) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2488 if (typeof this.prototype[key] == "undefined") {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2489 block.call(context, object[key], key, object);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2490 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2491 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2492 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2493
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2494 // character enumeration
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2495 String.forEach = function(string, block, context) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2496 Array.forEach(string.split(""), function(chr, index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2497 block.call(context, chr, index, string);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2498 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2499 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2500
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2501 // globally resolve forEach enumeration
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2502 var forEach = function(object, block, context) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2503 if (object) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2504 if (object instanceof Function) { // functions have a "length" property
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2505 Function.forEach(object, block, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2506
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2507 } else if (object.each instanceof Function) { // jQuery
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2508 object.each(function(i, elt) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2509 block(elt);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2510 }, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2511
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2512 } else if (object.forEach instanceof Function) { // the object implements a custom forEach method
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2513 object.forEach(block, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2514
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2515 } else if (typeof object == "string") { // a string
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2516 String.forEach(object, block, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2517
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2518 } else if (typeof object.length == "number") { // array-like object
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2519 Array.forEach(object, block, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2520
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2521 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2522 Object.forEach(object, block, context);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2523 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2524 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2525 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2526
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2527
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2528 jQuery.fn.exists = function(){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2529 return jQuery(this).length > 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2530 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2531
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2532
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2533 function Range(from, to) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2534 var r = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2535 for (var i = from; i < to; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2536 r.push(i);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2537 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2538 return r;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2539 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2540
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2541
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2542
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2543 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2544
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2545 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2546 /**
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2547 * HSV to RGB color conversion
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2548 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2549 * H runs from 0 to 360 degrees
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2550 * S and V run from 0 to 100
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2551 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2552 * Ported from the excellent java algorithm by Eugene Vishnevsky at:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2553 * http://www.cs.rit.edu/~ncs/color/t_convert.html
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2554 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2555 function hsvToRgb(h, s, v) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2556 var r, g, b;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2557 var i;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2558 var f, p, q, t;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2559
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2560 // Make sure our arguments stay in-range
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2561 h = Math.max(0, Math.min(360, h));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2562 s = Math.max(0, Math.min(100, s));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2563 v = Math.max(0, Math.min(100, v));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2564
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2565 // We accept saturation and value arguments from 0 to 100 because that's
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2566 // how Photoshop represents those values. Internally, however, the
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2567 // saturation and value are calculated from a range of 0 to 1. We make
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2568 // That conversion here.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2569 s /= 100;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2570 v /= 100;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2571
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2572 if(s == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2573 // Achromatic (grey)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2574 r = g = b = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2575 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2576 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2577
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2578 h /= 60; // sector 0 to 5
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2579 i = Math.floor(h);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2580 f = h - i; // factorial part of h
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2581 p = v * (1 - s);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2582 q = v * (1 - s * f);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2583 t = v * (1 - s * (1 - f));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2584
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2585 switch(i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2586 case 0:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2587 r = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2588 g = t;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2589 b = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2590 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2591
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2592 case 1:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2593 r = q;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2594 g = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2595 b = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2596 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2597
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2598 case 2:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2599 r = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2600 g = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2601 b = t;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2602 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2603
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2604 case 3:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2605 r = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2606 g = q;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2607 b = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2608 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2609
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2610 case 4:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2611 r = t;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2612 g = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2613 b = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2614 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2615
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2616 default: // case 5:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2617 r = v;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2618 g = p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2619 b = q;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2620 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2621
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2622 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2623 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2624
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2625 function hslToRgb(h, s, l){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2626 var r, g, b;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2627
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2628 if(s == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2629 r = g = b = l; // achromatic
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2630 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2631 function hue2rgb(p, q, t){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2632 if(t < 0) t += 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2633 if(t > 1) t -= 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2634 if(t < 1/6) return p + (q - p) * 6 * t;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2635 if(t < 1/2) return q;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2636 if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2637 return p;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2638 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2639
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2640 var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2641 var p = 2 * l - q;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2642 r = hue2rgb(p, q, h + 1/3);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2643 g = hue2rgb(p, q, h);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2644 b = hue2rgb(p, q, h - 1/3);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2645 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2646
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2647 return [Math.round(r * 255), Math.round(g * 255), Math.round(b * 255)];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2648 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2649 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2650
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2651 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2652
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2653 var gns = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2654 features: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2655 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2656
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2657 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2658 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2659 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2660 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2661
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2662 yAxisLabeled: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2663 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2664
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2665 operons: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2666 isInitialized: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2667
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2668 maxY: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2669 maxYTick: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2670 series: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2671 showWithData: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2672
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2673 yAxisLabeled: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2674 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2675
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2676 draw: function (name, title, colors, filenames, data, refFeaturesNumber, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2677 placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2678 // div.html(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2679 // "<span class='plot-header'>" + kind[0].toUpperCase() + kind.slice(1) + "s covered</span>" +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2680 // "<div class='plot-placeholder' id='" + kind + "s-plot-placeholder'></div>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2681 // );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2682 $(scalePlaceholder).empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2683
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2684 var info = gns[name];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2685
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2686 info.yAxisLabeled = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2687 var cur_filenames = data.filenames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2688 if (!info.isInitialized) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2689 var filesFeatureInContigs = data.filesFeatureInContigs;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2690 var kind = data.kind;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2691
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2692 var plotsN = cur_filenames.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2693 info.series = new Array(plotsN);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2694
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2695 info.maxY = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2696 info.maxX = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2697
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2698 if (refFeaturesNumber) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2699 info.maxY = refFeaturesNumber;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2700 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2701
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2702 for (var fi = 0; fi < plotsN; fi++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2703 var index = $.inArray(cur_filenames[order[fi]], filenames);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2704 var filename = filenames[index];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2705 var featureInContigs = filesFeatureInContigs[filename];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2706
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2707 info.series[fi] = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2708 data: [[0, 0]],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2709 label: filenames[index],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2710 number: index,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2711 color: colors[index]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2712 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2713
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2714 var contigNo = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2715 var totalFull = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2716
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2717 for (var k = 0; k < featureInContigs.length; k++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2718 contigNo += 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2719 totalFull += featureInContigs[k];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2720
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2721 info.series[fi].data.push([contigNo, totalFull]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2722
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2723 if (info.series[fi].data[k][1] > info.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2724 info.maxY = info.series[fi].data[k][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2725 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2726 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2727
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2728 if (featureInContigs.length > info.maxX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2729 info.maxX = featureInContigs.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2730 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2731 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2732
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2733 for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2734 if (typeof broken_scaffolds_labels !== undefined && $.inArray(filenames[order[i]], broken_scaffolds_labels) != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2735 info.series[i].dashes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2736 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2737 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2738 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2739 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2740 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2741 info.series[i].lines = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2742 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2743 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2744 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2745 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2746 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2747
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2748 // for (i = 0; i < plotsN; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2749 // plotsData[i].points = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2750 // show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2751 // radius: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2752 // fill: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2753 // fillColor: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2754 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2755 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2756
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2757 if (refFeaturesNumber) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2758 info.series.push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2759 data: [[0, refFeaturesNumber], [info.maxX, refFeaturesNumber]],
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2760 label: 'reference,&nbsp;' + toPrettyString(refFeaturesNumber, 'features'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2761 isReference: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2762 dashes: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2763 show: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2764 lineWidth: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2765 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2766 yaxis: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2767 number: filenames.length,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2768 color: '#000000'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2769 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2770
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2771 colors.push('#000000');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2772 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2773
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2774 info.showWithData = function(series, colors) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2775 var plot = $.plot(placeholder, series, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2776 shadowSize: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2777 colors: colors,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2778 legend: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2779 container: $('useless-invisible-element-that-does-not-even-exist'),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2780 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2781 grid: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2782 borderWidth: 1,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2783 hoverable: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2784 autoHighlight: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2785 mouseActiveRadius: 1000,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2786 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2787 yaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2788 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2789 // max: info.maxY,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2790 labelWidth: 120,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2791 reserveSpace: true,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2792 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2793 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2794 tickFormatter: function (val, axis) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2795 // if (!info.yAxisLabeled && val > info.maxY) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2796 // info.yAxisLabeled = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2797 // var res = val + ' ' + kind;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2798 // if (val > 1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2799 // res += 's'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2800 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2801 // return res;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2802 // } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2803 return val;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2804 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2805 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2806 minTickSize: 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2807 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2808 xaxis: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2809 min: 0,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2810 max: info.maxX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2811 lineWidth: 0.5,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2812 color: '#000',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2813 tickFormatter: getContigNumberTickFormatter(info.maxX, tickX),
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2814 minTickSize: tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2815 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2816 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2817
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2818 var firstLabel = $('.yAxis .tickLabel').last();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2819 firstLabel.append(' ' + name);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2820
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2821 bindTip(placeholder, series, plot, ordinalNumberToPrettyString, tickX, 'contig', 'bottom right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2822 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2823
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2824 info.isInitialized = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2825 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2826
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2827 addLegendClickEvents(info, filenames.length, showPlotWithInfo, refFeaturesNumber);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2828
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2829 showPlotWithInfo(info);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2830
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2831 $('#contigs_are_ordered').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2832 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2833 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2834
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2835
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2836
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2837 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2838
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2839 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2840 /*
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2841 DT v1.0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2842 June 26, 2008
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2843 Dan Vanderkam, http://danvk.org/DT/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2844 http://code.google.com/p/DT/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2845
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2846 This is code was based on:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2847 - Stuart Langridge's SortTable (kryogenix.org/code/browser/sorttable)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2848 - Mike Hall's draggable class (http://www.brainjar.com/dhtml/drag/)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2849 - A discussion of permuting table columns on comp.lang.javascript
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2850
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2851 Licensed under the MIT license.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2852 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2853
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2854 // Here's the notice from Mike Hall's draggable script:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2855 //*****************************************************************************
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2856 // Do not remove this notice.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2857 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2858 // Copyright 2001 by Mike Hall.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2859 // See http://www.brainjar.com for terms of use.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2860 //*****************************************************************************
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2861
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2862 var classes = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2863 cell_of_emptySpace: 'cell_of_empty_space',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2864 cell_of_movingTable: 'cell_of_moving_table',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2865 newTable: 'moving_table',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2866 handle: 'drag_handle',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2867 hoveredCell: 'hovered_column_td',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2868 assemblyName: 'assembly_name',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2869
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2870 bottomCell_of_emptySpace: 'bottom_cell_of_empty_space',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2871 topCell_of_emptySpace: 'top_cell_of_empty_space',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2872 leftToCell_of_emptySpace: 'left_to_cell_of_empty_space',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2873 rightToCell_of_emptySpace: 'right_to_cell_of_empty_space',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2874
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2875 mainReportTable_id: 'main_report_table',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2876 totalReportJson_id: 'total-report-json',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2877 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2878
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2879 var dragTable = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2880 isDragging: false,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2881
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2882 // How far should the mouse move before it's considered a drag, not a click?
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2883 dragRadius2: 0, // 100,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2884 setMinDragDistance: function(x) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2885 DT.dragRadius2 = x * x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2886 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2887
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2888 // How long should cookies persist? (in days)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2889 cookieDays: 365,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2890 setCookieDays: function(x) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2891 DT.cookieDays = x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2892 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2893
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2894 // Determine browser and version.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2895 // TODO: eliminate browser sniffing except where it's really necessary.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2896 Browser: function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2897 var ua, s, i;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2898
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2899 this.isIE = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2900 this.isNS = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2901 this.version = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2902 ua = navigator.userAgent;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2903
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2904 s = "MSIE";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2905 if ((i = ua.indexOf(s)) >= 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2906 this.isIE = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2907 this.version = parseFloat(ua.substr(i + s.length));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2908 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2909 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2910
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2911 s = "Netscape6/";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2912 if ((i = ua.indexOf(s)) >= 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2913 this.isNS = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2914 this.version = parseFloat(ua.substr(i + s.length));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2915 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2916 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2917
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2918 // Treat any other "Gecko" browser as NS 6.1.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2919 s = "Gecko";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2920 if ((i = ua.indexOf(s)) >= 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2921 this.isNS = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2922 this.version = 6.1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2923 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2924 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2925 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2926 browser: null,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2927
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2928 // Detect all draggable tables and attach handlers to their headers.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2929 init: function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2930 // Don't initialize twice
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2931 if (arguments.callee.done)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2932 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2933 else
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2934 arguments.callee.done = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2935
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2936 // if (_dgtimer)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2937 // clearInterval(_dgtimer);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2938
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2939 if (!document.createElement || !document.getElementsByTagName)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2940 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2941
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2942 DT.dragObj.zIndex = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2943 DT.browser = new DT.Browser();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2944 forEach(document.getElementsByTagName('table'), function(table) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2945 if ($(table).hasClass('draggable')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2946 DT.makeDraggable(table);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2947 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2948 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2949 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2950
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2951 // The thead business is taken straight from sorttable.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2952 makeDraggable: function(table) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2953 DT.dragObj.table = table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2954
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2955 if (table.getElementsByTagName('thead').length == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2956 thead = document.createElement('thead');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2957 thead.appendChild(table.rows[0]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2958 table.insertBefore(thead, table.firstChild);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2959 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2960
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2961 // Safari doesn't support table.tHead, sigh
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2962 if (table.tHead == null) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2963 table.tHead = table.getElementsByTagName('thead')[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2964 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2965
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2966 var handles = $('.' + classes.handle) || table.tHead.rows[0].cells;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2967
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2968 forEach(handles, function(handle) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2969 handle.onmousedown = DT.dragStart;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2970 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2971 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2972
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2973 // Global object to hold drag information.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2974 dragObj: {},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2975
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2976 getEventPosition: function(event) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2977 var x, y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2978 if (DT.browser.isIE) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2979 x = window.event.clientX + document.documentElement.scrollLeft
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2980 + document.body.scrollLeft;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2981 y = window.event.clientY + document.documentElement.scrollTop
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2982 + document.body.scrollTop;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2983 return {x: x, y: y};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2984 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2985 return {x: event.pageX, y: event.pageY};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2986 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2987
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2988 // Determine the position of this element on the page. Many thanks to Magnus
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2989 // Kristiansen for help making this work with "position: fixed" elements.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2990 getPositionOnThePage: function(elt, stopAtRelative) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2991 var ex = 0, ey = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2992 do {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2993 var curStyle = DT.browser.isIE ? elt.currentStyle
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2994 : window.getComputedStyle(elt, '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2995 var supportFixed = !(DT.browser.isIE &&
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2996 DT.browser.version < 7);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2997 if (stopAtRelative && curStyle.position == 'relative') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2998 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
2999 } else if (supportFixed && curStyle.position == 'fixed') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3000 // Get the fixed el's offset
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3001 ex += parseInt(curStyle.left, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3002 ey += parseInt(curStyle.top, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3003 // Compensate for scrolling
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3004 ex += document.body.scrollLeft;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3005 ey += document.body.scrollTop;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3006 // End the loop
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3007 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3008 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3009 ex += elt.offsetLeft;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3010 ey += elt.offsetTop;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3011 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3012 } while (elt = elt.offsetParent);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3013 return {x: ex, y: ey};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3014 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3015
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3016 // MouseDown handler -- sets up the appropriate mousemove/mouseup handlers
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3017 // and fills in the global DT.dragObj object.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3018 dragStart: function(event, id) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3019 DT.isDragging = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3020
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3021 var drag_obj = DT.dragObj;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3022
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3023 var browser = DT.browser;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3024 var clicked_node = browser.isIE ? window.event.srcElement : event.target;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3025 var pos = DT.getEventPosition(event);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3026
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3027 var table = $(clicked_node).closest('table')[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3028 var top_cell = $(clicked_node).closest('td, th')[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3029 drag_obj.topCell = top_cell;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3030 drag_obj.table = table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3031
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3032 var col_index = top_cell.cellIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3033 drag_obj.movingColIndex = drag_obj.startIndex = col_index;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3034 drag_obj.movingColWidth = $(top_cell).width();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3035
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3036 // Since a column header can't be dragged directly, duplicate its contents
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3037 // in a div and drag that instead.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3038 var new_table = DT.fullCopy(table, false);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3039
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3040 // Copy the entire column
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3041 var forEachSection = function(table, func) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3042 if (table.tHead) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3043 func(table.tHead);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3044 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3045 forEach(table.tBodies, function(tbody) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3046 func(tbody);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3047 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3048 if (table.tFoot) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3049 func(table.tFoot);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3050 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3051 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3052
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3053 forEachSection(table, function(sec) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3054 var new_sec = DT.fullCopy(sec, false);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3055
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3056 forEach(sec.rows, function(row) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3057 var cell = row.cells[col_index];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3058 var new_tr = DT.fullCopy(row, false);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3059 if (row.offsetHeight) new_tr.style.height = row.offsetHeight + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3060 var new_td = DT.fullCopy(cell, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3061 if (cell.offsetWidth) new_td.style.width = cell.offsetWidth + "px !important";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3062 new_tr.appendChild(new_td);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3063 new_sec.appendChild(new_tr);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3064 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3065
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3066 new_table.appendChild(new_sec);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3067 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3068
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3069 var obj_pos = DT.getPositionOnThePage(top_cell, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3070 new_table.style.position = "absolute";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3071 new_table.style.left = obj_pos.x + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3072 new_table.style.top = obj_pos.y + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3073 // new_table.style.width = dragObj.origNode.offsetWidth + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3074 // new_table.style.height = dragObj.origNode.offsetHeight + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3075
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3076 // Hold off adding the element until this is clearly a drag.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3077 drag_obj.addedNode = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3078
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3079 drag_obj.tableContainer = drag_obj.table.parentNode || document.body;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3080 drag_obj.newTable = new_table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3081
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3082 // Save starting positions of cursor and element.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3083 drag_obj.startPos = pos;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3084 drag_obj.prevPos = pos;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3085 drag_obj.elStartLeft = parseInt(drag_obj.newTable.style.left, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3086 drag_obj.elStartTop = parseInt(drag_obj.newTable.style.top, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3087
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3088 if (isNaN(drag_obj.elStartLeft)) drag_obj.elStartLeft = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3089 if (isNaN(drag_obj.elStartTop)) drag_obj.elStartTop = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3090
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3091 // Update element's z-index.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3092 drag_obj.newTable.style.zIndex = ++drag_obj.zIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3093
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3094 // Capture mousemove and mouseup events on the page.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3095 if (browser.isIE) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3096 document.attachEvent("onmousemove", DT.dragMove);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3097 document.attachEvent("onmouseup", DT.dragEnd);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3098 window.event.cancelBubble = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3099 window.event.returnValue = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3100 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3101 document.addEventListener("mousemove", DT.dragMove, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3102 document.addEventListener("mouseup", DT.dragEnd, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3103 event.preventDefault();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3104 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3105 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3106
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3107 // Move the floating column header with the mouse
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3108 // TODO: Reorder columns as the mouse moves for a more interactive feel.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3109 dragMove: function(event) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3110 var x, y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3111 var drag_obj = DT.dragObj;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3112 var col_index = drag_obj.movingColIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3113
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3114 // Get cursor position with respect to the page.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3115 var pos = DT.getEventPosition(event);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3116
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3117 var full_dx = drag_obj.startPos.x - pos.x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3118 var full_dy = drag_obj.startPos.y - pos.y;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3119
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3120 if (!drag_obj.addedNode && full_dx * full_dx + full_dy * full_dy > DT.dragRadius2) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3121 // Real dragging has began, the following block performs once
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3122
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3123 // Attach a moving table
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3124 drag_obj.tableContainer.insertBefore(drag_obj.newTable, drag_obj.table);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3125 drag_obj.addedNode = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3126
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3127 // Add classes for the dragged column (original and the clone)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3128 $(drag_obj.newTable).addClass(classes.newTable);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3129 $(DT.getColumn(drag_obj.newTable)).addClass(classes.cell_of_movingTable);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3130
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3131 $(DT.getColumn(drag_obj.table, col_index)).addClass(classes.cell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3132 $(DT.getColumn(drag_obj.table, col_index)[0]).addClass(classes.topCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3133 var visibleCells = $(DT.getColumn(drag_obj.table, col_index)).filter(':visible');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3134 $(visibleCells[visibleCells.length - 1]).addClass(classes.bottomCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3135
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3136 DT.addStylesForAdjacentColumns(col_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3137 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3138
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3139 // Move drag element by the same amount the cursor has moved.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3140 var style = drag_obj.newTable.style;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3141 style.left = (drag_obj.elStartLeft + pos.x - drag_obj.startPos.x) + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3142 style.top = (drag_obj.elStartTop + pos.y - drag_obj.startPos.y) + "px";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3143
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3144 if (DT.browser.isIE) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3145 window.event.cancelBubble = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3146 window.event.returnValue = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3147 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3148 event.preventDefault();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3149 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3150
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3151 // If moving over an adjacent column, do swapping, swapping with the adjacent column
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3152 var column_pos_x = DT.getPositionOnThePage(DT.getColumn(drag_obj.newTable)[0]).x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3153 var column_center_x = column_pos_x + drag_obj.movingColWidth / 2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3154 var hovered_col_index = DT.getColumnAtPosition(drag_obj.table, column_center_x);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3155
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3156 var dx = drag_obj.prevPos.x - pos.x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3157
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3158 if (DT.isSuitableColumnToSwap(hovered_col_index, col_index)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3159 if (dx < 0 && hovered_col_index > col_index || // moving right
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3160 dx > 0 && hovered_col_index < col_index) { // moving left
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3161 DT.removeStylesForAdjacentColumns(col_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3162 DT.moveColumn(drag_obj.table, col_index, hovered_col_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3163 DT.addStylesForAdjacentColumns(hovered_col_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3164 drag_obj.movingColIndex = hovered_col_index;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3165 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3166 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3167 drag_obj.prevPos = pos;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3168 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3169
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3170 removeStylesForAdjacentColumns: function(oldIndex) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3171 var table = DT.dragObj.table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3172 var rows = table.rows;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3173 var oldColumn = DT.getColumn(table, oldIndex);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3174 $(DT.getColumn(table, oldIndex - 1)).removeClass(classes.leftToCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3175 $(DT.getColumn(table, oldIndex + 1)).removeClass(classes.rightToCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3176 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3177
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3178 addStylesForAdjacentColumns: function(index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3179 var table = DT.dragObj.table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3180 var rows = table.rows;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3181 var column = DT.getColumn(table, index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3182 $(DT.getColumn(table, index - 1)).addClass(classes.leftToCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3183 $(DT.getColumn(table, index + 1)).addClass(classes.rightToCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3184 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3185
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3186 // Stop capturing mousemove and mouseup events.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3187 // Determine which (if any) column we're over and shuffle the table.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3188 dragEnd: function(event) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3189 if (DT.browser.isIE) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3190 document.detachEvent("onmousemove", DT.dragMove);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3191 document.detachEvent("onmouseup", DT.dragEnd);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3192 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3193 document.removeEventListener("mousemove", DT.dragMove, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3194 document.removeEventListener("mouseup", DT.dragEnd, true);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3195 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3196
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3197 var drag_obj = DT.dragObj;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3198 var col_index = drag_obj.movingColIndex;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3199
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3200 // If the floating header wasn't added, the mouse didn't move far enough.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3201 if (drag_obj.addedNode) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3202 // TODO: Move with animation
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3203 var final_pos = DT.getPositionOnThePage(DT.getColumn(drag_obj.table, col_index)[0]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3204
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3205 $(drag_obj.newTable).animate({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3206 left: final_pos.x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3207 top: final_pos.y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3208 }, 'fast', function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3209 $(drag_obj.newTable).remove();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3210 $(DT.getColumn(drag_obj.table, col_index)).removeClass(classes.cell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3211 $(DT.getColumn(drag_obj.table, col_index)[0]).removeClass(classes.topCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3212 var visibleCells = $(DT.getColumn(drag_obj.table, col_index)).filter(':visible');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3213 $(visibleCells[visibleCells.length - 1]).removeClass(classes.bottomCell_of_emptySpace);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3214
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3215 DT.removeStylesForAdjacentColumns(col_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3216 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3217
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3218 DT.storeDrag(drag_obj.table);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3219 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3220 DT.isDragging = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3221 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3222
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3223 moveColumn: function(table, index, nextIndex) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3224 forEach(table.rows, function(row) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3225 var startCell = $(row.cells[index]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3226 var finishCell = $(row.cells[nextIndex]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3227
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3228 // startCell.animate({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3229 // left: finishCell.offset().left,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3230 // }, 'slow', function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3231 if (nextIndex > index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3232 startCell.before(finishCell);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3233 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3234 startCell.after(finishCell);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3235 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3236 // });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3237 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3238 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3239
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3240 // clone an element, copying its style and class.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3241 fullCopy: function(elt, deep) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3242 if (!elt) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3243 return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3244 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3245 var new_elt = elt.cloneNode(deep);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3246 new_elt.className = elt.className;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3247 $(new_elt).addClass('clone');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3248 forEach(elt.style, function(value, key, object) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3249 if (value == null) return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3250 if (typeof(value) == "string" && value.length == 0) return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3251
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3252 new_elt.style[key] = elt.style[key];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3253 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3254 return new_elt;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3255 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3256
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3257 getColumn: function(table, index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3258 index = typeof index !== 'undefined' ? index : 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3259
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3260 if (index < 0 || index >= table.rows[0].cells.length) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3261 return [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3262
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3263 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3264 var column = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3265 forEach(table.rows, function(row) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3266 column.push(row.cells[index]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3267 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3268 return column;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3269 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3270 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3271
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3272 isSuitableColumnToSwap: function(targetIndex, movingColIndex) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3273 if (targetIndex != -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3274 if (typeof movingColIndex === 'undefined' || targetIndex != movingColIndex) { // check if equals the moving one
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3275 var top_cell = $(DT.getColumn(DT.dragObj.table, targetIndex)[0]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3276 if (top_cell.find('.' + classes.handle).addBack('.' + classes.handle).exists()) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3277 return true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3278 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3279 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3280 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3281 return false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3282 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3283
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3284 // Which column does the x value fall inside of? x should include scrollLeft.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3285 getColumnAtPosition: function(table, x) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3286 var header = table.tHead.rows[0].cells;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3287 for (var i = 0; i < header.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3288 //var left = header[i].offsetLeft;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3289 var pos = DT.getPositionOnThePage(header[i]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3290 //if (left <= x && x <= left + header[i].offsetWidth) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3291 var px = pos.x;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3292 var ow = header[i].offsetWidth;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3293 var xpow = pos.x + header[i].offsetWidth;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3294 if (pos.x <= x && x <= pos.x + header[i].offsetWidth) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3295 return i;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3296 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3297 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3298 return -1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3299 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3300
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3301 // Store a column swap in a cookie for posterity.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3302 storeDrag: function(table) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3303 var order = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3304 forEach(table.rows[0].cells, function(cell) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3305 var pos = cell.getAttribute('position');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3306 if (pos)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3307 order.push(pos);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3308 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3309
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3310 var order_string = order[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3311 for (var i = 1; i < order.length; i++)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3312 order_string += ' ' + order[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3313
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3314 DT.storeInCookies(order_string);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3315 DT.sendOrderToServer(order_string);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3316 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3317
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3318 storeInCookies: function(string) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3319 if (navigator.cookieEnabled) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3320 var cookieName = 'order';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3321 createCookie(cookieName, string, DT.cookieDays);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3322 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3323 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3324
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3325 sendOrderToServer: function(string) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3326 if (document.reportId) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3327 $.ajax({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3328 type: 'GET',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3329 url: '/reorder-report-columns',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3330 dataType: 'json',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3331 data: {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3332 reportId: document.reportId,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3333 order: string,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3334 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3335 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3336 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3337 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3338 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3339
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3340 var DT = dragTable;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3341
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3342 /* ******************************************************************
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3343 Supporting functions: bundled here to avoid depending on a library
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3344 ****************************************************************** */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3345
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3346
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3347 //// Dean Edwards/Matthias Miller/John Resig
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3348 //// has a hook for DT.init already been added? (see below)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3349 //var dgListenOnLoad = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3350 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3351 ///* for Mozilla/Opera9 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3352 //if (document.addEventListener) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3353 // dgListenOnLoad = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3354 // document.addEventListener("DOMContentLoaded", DT.init, false);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3355 //}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3356 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3357 ///* for Internet Explorer */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3358 ///*@cc_on @*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3359 ///*@if (@_win32)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3360 // dgListenOnLoad = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3361 // document.write("<script id=__dt_onload defer src=//0)><\/script>");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3362 // var script = document.getElementById("__dt_onload");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3363 // script.onreadystatechange = function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3364 // if (this.readyState == "complete") {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3365 // DT.init(); // call the onload handler
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3366 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3367 // };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3368 ///*@end @*/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3369 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3370 ///* for Safari */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3371 //if (/WebKit/i.test(navigator.userAgent)) { // sniff
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3372 // dgListenOnLoad = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3373 // var _dgtimer = setInterval(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3374 // if (/loaded|complete/.test(document.readyState)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3375 // DT.init(); // call the onload handler
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3376 // }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3377 // }, 10);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3378 //}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3379 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3380 ///* for other browsers */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3381 ///* Avoid this unless it's absolutely necessary (it breaks sorttable) */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3382 //if (!dgListenOnLoad) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3383 // window.onload = DT.init;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3384 //}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3385
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3386 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3387
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3388 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3389 /*! HTML5 Shiv vpre3.6 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3390 Uncompressed source: https://github.com/aFarkas/html5shiv */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3392 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3393
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3394 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3395 /**
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3396 * Bootstrap.js by @fat & @mdo
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3397 * plugins: bootstrap-tooltip.js
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3398 * Copyright 2012 Twitter, Inc.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3399 * http://www.apache.org/licenses/LICENSE-2.0.txt
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3400 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3402 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3403
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3404 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3405 /*!
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3406 * Bootstrap.js by @fat & @mdo
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3407 * Copyright 2012 Twitter, Inc.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3408 * http://www.apache.org/licenses/LICENSE-2.0.txt
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3409 */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3411 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3412
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3413 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3414 /* ===========================================================
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3415 * bootstrap-tooltip.js v2.0.4
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3416 * http://twitter.github.com/bootstrap/javascript.html#tooltips
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3417 * Inspired by the original jQuery.tipsy by Jason Frame
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3418 * ===========================================================
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3419 * Copyright 2012 Twitter, Inc.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3420 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3421 * Licensed under the Apache License, Version 2.0 (the "License");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3422 * you may not use this file except in compliance with the License.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3423 * You may obtain a copy of the License at
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3424 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3425 * http://www.apache.org/licenses/LICENSE-2.0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3426 *
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3427 * Unless required by applicable law or agreed to in writing, software
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3428 * distributed under the License is distributed on an "AS IS" BASIS,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3429 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3430 * See the License for the specific language governing permissions and
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3431 * limitations under the License.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3432 * ========================================================== */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3433
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3434
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3435 !function ($) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3436
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3437 "use strict"; // jshint ;_;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3438
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3439
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3440 /* TOOLTIP PUBLIC CLASS DEFINITION
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3441 * =============================== */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3442
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3443 var Tooltip = function (element, options) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3444 this.init('tooltip', element, options)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3445 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3446
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3447 Tooltip.prototype = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3448
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3449 constructor: Tooltip
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3450
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3451 , init: function (type, element, options) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3452 var eventIn
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3453 , eventOut;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3454
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3455 this.type = type;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3456 this.$element = $(element);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3457 this.options = this.getOptions(options);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3458 this.enabled = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3459
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3460 if (this.options.trigger != 'manual') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3461 eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3462 eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3463 this.$element.on(eventIn, this.options.selector, $.proxy(this.enter, this));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3464 this.$element.on(eventOut, this.options.selector, $.proxy(this.leave, this));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3465 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3466
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3467 this.options.selector ?
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3468 (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3469 this.fixTitle();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3470 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3471
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3472 , getOptions: function (options) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3473 options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data())
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3474
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3475 if (options.delay && typeof options.delay == 'number') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3476 options.delay = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3477 show: options.delay
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3478 , hide: options.delay
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3479 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3480 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3481
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3482 return options;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3483 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3484
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3485 , enter: function (e) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3486 if (dragTable && dragTable.isDragging)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3487 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3488
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3489 var self = $(e.currentTarget)[this.type](this._options).data(this.type);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3490
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3491 if (!self.options.delay || !self.options.delay.show) self.show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3492
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3493 clearTimeout(this.timeout);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3494 self.hoverState = 'in';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3495 this.timeout = setTimeout(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3496 function() { if (self.hoverState == 'in') self.show(); },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3497 self.options.delay.show
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3498 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3499 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3500
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3501 , leave: function (e) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3502 var self = $(e.currentTarget)[this.type](this._options).data(this.type);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3503
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3504 if (this.timeout) clearTimeout(this.timeout);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3505 if (!self.options.delay || !self.options.delay.hide) self.hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3506
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3507 self.hoverState = 'out';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3508 this.timeout = setTimeout(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3509 function() { if (self.hoverState == 'out') self.hide() },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3510 self.options.delay.hide
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3511 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3512 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3513
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3514 , show: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3515 var $tip
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3516 , inside
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3517 , pos
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3518 , actualWidth
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3519 , actualHeight
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3520 , placement
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3521 , tp;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3522
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3523 if (this.hasContent() && this.enabled) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3524 $tip = this.tip();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3525 this.setContent();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3526
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3527 if (this.options.animation) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3528 $tip.addClass('fade');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3529 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3530
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3531 placement = typeof this.options.placement == 'function' ?
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3532 this.options.placement.call(this, $tip[0], this.$element[0]) :
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3533 this.options.placement;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3534
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3535 inside = /in/.test(placement);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3536
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3537 $tip
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3538 .remove()
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3539 .css({ top: 0, left: 0, display: 'block' })
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3540 .appendTo(inside ? this.$element : document.body);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3541
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3542 pos = this.getPosition(inside);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3543
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3544 actualWidth = $tip[0].offsetWidth;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3545 actualHeight = $tip[0].offsetHeight;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3546
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3547 switch (inside ? placement.split(' ')[1] : placement) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3548 case 'bottom':
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3549 tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3550 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3551 case 'top': // modificated by Vlad Saveliev: +4px to top position
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3552 tp = {top: pos.top - actualHeight + 4, left: pos.left + pos.width / 2 - actualWidth / 2};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3553 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3554 case 'left':
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3555 tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3556 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3557 case 'right':
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3558 tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3559 break;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3560 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3561
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3562 $tip
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3563 .css(tp)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3564 .addClass(placement)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3565 .addClass('in');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3566 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3567 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3568
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3569 , isHTML: function(text) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3570 // html string detection logic adapted from jQuery
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3571 return typeof text != 'string'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3572 || ( text.charAt(0) === "<"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3573 && text.charAt( text.length - 1 ) === ">"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3574 && text.length >= 3
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3575 ) || /^(?:[^<]*<[\w\W]+>[^>]*$)/.exec(text);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3576 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3577
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3578 , setContent: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3579 var $tip = this.tip()
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3580 , title = this.getTitle();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3581
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3582 $tip.find('.tooltip-inner')[this.isHTML(title) ? 'html' : 'text'](title);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3583 $tip.removeClass('fade in top bottom left right');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3584 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3585
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3586 , hide: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3587 var that = this
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3588 , $tip = this.tip();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3589
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3590 $tip.removeClass('in');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3591
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3592 function removeWithAnimation() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3593 var timeout = setTimeout(function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3594 $tip.off($.support.transition.end).remove()
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3595 }, 500);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3596
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3597 $tip.one($.support.transition.end, function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3598 clearTimeout(timeout);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3599 $tip.remove();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3600 })
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3601 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3602
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3603 $.support.transition && this.$tip.hasClass('fade') ?
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3604 removeWithAnimation() :
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3605 $tip.remove()
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3606 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3607
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3608 , fixTitle: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3609 var $e = this.$element;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3610 if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3611 $e.attr('data-original-title', $e.attr('title') || '').removeAttr('title');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3612 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3613 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3614
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3615 , hasContent: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3616 return this.getTitle();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3617 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3618
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3619 , getPosition: function (inside) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3620 return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3621 width: this.$element[0].offsetWidth
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3622 , height: this.$element[0].offsetHeight
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3623 })
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3624 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3625
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3626 , getTitle: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3627 var title
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3628 , $e = this.$element
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3629 , o = this.options;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3630
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3631 title = $e.attr('data-original-title')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3632 || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3633
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3634 return title;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3635 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3636
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3637 , tip: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3638 return this.$tip = this.$tip || $(this.options.template);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3639 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3640
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3641 , validate: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3642 if (!this.$element[0].parentNode) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3643 this.hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3644 this.$element = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3645 this.options = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3646 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3647 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3648
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3649 , enable: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3650 this.enabled = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3651 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3652
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3653 , disable: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3654 this.enabled = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3655 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3656
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3657 , toggleEnabled: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3658 this.enabled = !this.enabled;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3659 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3660
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3661 , toggle: function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3662 this[this.tip().hasClass('in') ? 'hide' : 'show']();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3663 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3664
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3665 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3666
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3667
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3668 /* TOOLTIP PLUGIN DEFINITION
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3669 * ========================= */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3670
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3671 $.fn.tooltip = function ( option ) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3672 return this.each(function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3673 var $this = $(this)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3674 , data = $this.data('tooltip')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3675 , options = typeof option == 'object' && option;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3676 if (!data) $this.data('tooltip', (data = new Tooltip(this, options)));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3677 if (typeof option == 'string') data[option]();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3678 })
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3679 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3680
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3681 $.fn.tooltip.Constructor = Tooltip;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3682
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3683 $.fn.tooltip.defaults = {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3684 animation: true
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3685 , placement: 'top'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3686 , selector: false
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3687 , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3688 , trigger: 'hover'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3689 , title: ''
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3690 , delay: 0
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3691 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3692
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3693 }(window.jQuery);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3694
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3695 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3696
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3697 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3698 function showPlotWithInfo(info, index) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3699 var newSeries = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3700 var newColors = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3701 var oldSeries = info.series;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3702 var usingSeries;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3703 var sortOrder;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3704 if ($("input[name=sortRefs]")[0])
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3705 sortOrder = getSortOrder();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3706 if (index != undefined) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3707 oldSeries = info.series[index];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3708 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3709 if (sortOrder == 'alphabet') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3710 usingSeries = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3711 sortedRefs = info.references.slice(0).sort();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3712 for(var i = 0; i < oldSeries.length; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3713 usingSeries.push($.extend(true, {}, oldSeries[i]));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3714 for(var j = 0; j < info.references.length; j++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3715 usingSeries[i].data[j][1] = oldSeries[i].data[info.references.indexOf(sortedRefs[j])][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3716 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3717 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3718 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3719 else usingSeries = oldSeries;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3720 $('#legend-placeholder').find('input[type="checkbox"]:checked').each(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3721 var number = $(this).attr('name');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3722 if (number && usingSeries && usingSeries.length > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3723 var i = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3724 do {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3725 var series = usingSeries[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3726 i++;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3727 } while (i <= usingSeries.length && (series == null || series.number != number));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3728 //
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3729 if (i <= usingSeries.length) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3730 newSeries.push(series);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3731 newColors.push(series.color);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3732 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3733 console.log('no series with number ' + number);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3734 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3735 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3736 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3737 if (sortOrder) sortReferences(sortOrder, info);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3738
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3739 if (newSeries.length === 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3740 newSeries.push({
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3741 data: []
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3742 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3743 newColors.push('#FFF');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3744 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3745
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3746 info.showWithData(newSeries, newColors);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3747 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3748
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3749 function recoverOrderFromCookies() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3750 if (!navigator.cookieEnabled)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3751 return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3752
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3753 var order_string = readCookie("order");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3754 if (!order_string)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3755 return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3756
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3757 var order = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3758 var fail = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3759 forEach(order_string.split(' '), function(val) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3760 val = parseInt(val);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3761 if (isNaN(val))
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3762 fail = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3763 else
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3764 order.push(val);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3765 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3766
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3767 if (fail)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3768 return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3769
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3770 return order;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3771 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3772
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3773
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3774 function readJson(what) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3775 var result;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3776 try {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3777 result = JSON.parse($('#' + what + '-json').html());
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3778 } catch (e) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3779 result = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3780 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3781 return result;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3782 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3783
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3784
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3785 function getToggleFunction(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3786 return function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3787 this.parentNode.getElementsByClassName('selected-switch')[0].className = 'plot-switch dotted-link';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3788 this.className = 'plot-switch selected-switch';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3789 togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3790 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3791 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3792
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3793 function togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3794 var plotPlaceholder = document.getElementById('plot-placeholder');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3795 var legendPlaceholder = document.getElementById('legend-placeholder');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3796 var scalePlaceholder = document.getElementById('scale-placeholder');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3797
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3798 var glossary = JSON.parse($('#glossary-json').html());
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3799
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3800 if (name === 'cumulative') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3801 $(plotPlaceholder).addClass('cumulative-plot-placeholder');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3802 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3803 $(plotPlaceholder).removeClass('cumulative-plot-placeholder');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3804 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3805
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3806 $('#contigs_are_ordered').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3807 $('#gc_info').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3808 $('#gc_contigs_info').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3809 $('#frc_info').hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3810
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3811 var selectedAssemblies = getSelectedAssemblies(assembliesNames);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3812 var sortBtnClass;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3813 if ($("input[name=sortRefs]")[0]) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3814 sortBtnClass = getSortRefsRule();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3815 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3816 $('#legend-placeholder').empty();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3817 assembliesNames.forEach(function(filename, i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3818 addLabelToLegend(i, filename, selectedAssemblies, colors);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3819 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3820 if (refPlotValue) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3821 $('#legend-placeholder').append(
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3822 '<div id="reference-label">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3823 '<label for="reference" style="color: #000000;">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3824 '<input type="checkbox" name="' + assembliesNames.length +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3825 '" checked="checked" id="reference">&nbsp;' + 'reference' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3826 '</label>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3827 '</div>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3828 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3829 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3830 if (sortBtnClass) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3831 addSortRefsBtn(sortBtnClass);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3832 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3833
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3834 drawPlot(name, title, colors, assembliesNames, data, refPlotValue, tickX,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3835 plotPlaceholder, legendPlaceholder, glossary, order, scalePlaceholder);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3836 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3837
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3838 function makePlot(firstPlot, assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3839 var switchSpan = document.createElement('span');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3840 switchSpan.id = name + '-switch';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3841 switchSpan.innerHTML = title;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3842 var plotsSwitchesDiv = document.getElementById('plots-switches');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3843 plotsSwitchesDiv.appendChild(switchSpan);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3844
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3845 if (firstPlot) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3846 switchSpan.className = 'plot-switch selected-switch';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3847 togglePlots(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3848 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3849 switchSpan.className = 'plot-switch dotted-link';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3850 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3851
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3852 $(switchSpan).click(getToggleFunction(assembliesNames, order, name, title, drawPlot, data, refPlotValue, tickX));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3853 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3854 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3855
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3856 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3857 String.prototype.trunc =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3858 function(n){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3859 return this.substr(0, n-1) + (this.length > n ? '&hellip;' : '');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3860 };
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3861
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3862
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3863 function getColor (hue, lightness) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3864 lightness = lightness ? lightness : 92;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3865 var rgb = hslToRgb(hue / 360, 0.8, lightness / 100);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3866 return '#' + rgb[0].toString(16) + rgb[1].toString(16) + rgb[2].toString(16);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3867 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3868
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3869 function getMedian (x) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3870 if (x.length == 0) return null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3871 if (x.length % 2 == 1) return x[(x.length - 1) / 2];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3872 else return (x[(x.length / 2) - 1] + x[(x.length / 2)]) / 2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3873 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3874
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3875 function toggleSecondary(event, caller) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3876 event = event || window.event;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3877 if(event.target.nodeName == "IMG") return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3878 if (!caller.hasClass('primary') || caller.hasClass('not_extend')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3879 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3880 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3881 var nextRow = caller.next('.content-row');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3882 $(caller).find('.metric-name').toggleClass('collapsed').toggleClass('expanded');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3883
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3884 while (!nextRow.hasClass('primary') && (nextRow.length > 0)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3885 nextRow.toggleClass('secondary_hidden');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3886 nextRow.find('.left_column_td').css('background-color', '#E8E8E8');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3887 nextRow = nextRow.next('.content-row');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3888 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3889 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3890
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3891 function setUpHeatMap(table) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3892
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3893 (function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3894 $(function () {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3895 $('tr.group_empty').removeClass('row_hidden');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3896 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3897 })();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3898
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3899 $('#main_report').append(table);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3900 var rows = $('#main_report_table').find('.content-row');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3901 var showHeatmap = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3902 for (var rows_n = 0; rows_n < rows.length; rows_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3903 if ($(rows[rows_n]).find('td[number]').length > 1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3904 showHeatmap = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3905 break
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3906 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3907 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3908
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3909 if (showHeatmap) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3910 var canvas = document.getElementById('gradientHeatmap');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3911 var context = canvas.getContext('2d');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3912 context.rect(0, 0, canvas.width, canvas.height);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3913
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3914 var gradient = context.createLinearGradient(0, 0, canvas.width, canvas.height);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3915 gradient.addColorStop(0, getColor(0, 65));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3916 gradient.addColorStop(0.5, 'white');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3917 gradient.addColorStop(1, getColor(240, 65));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3918 canvas.style.border = "0px solid rgba(0, 0, 0, .1)";
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3919 context.fillStyle = gradient;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3920 context.fill();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3921 $('#heatmaps_chbox').change(function(){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3922 if($(this).is(':checked')) toggleHeatMap('on');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3923 else toggleHeatMap('off');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3924 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3925 toggleHeatMap('on');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3926 $('#heatmap_header').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3927 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3928 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3929
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3930 function toggleHeatMap(state){
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3931 var rows = $('#main_report_table').find('.content-row');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3932 for (var rows_n = 0; rows_n < rows.length; rows_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3933 var cells = $(rows[rows_n]).find('td[number]');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3934 if (state == 'on') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3935 var quality = $(rows[rows_n]).attr('quality');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3936 heatMapOneRow(cells, quality);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3937 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3938 else cells.each(function (i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3939 $(this).css('background', 'white');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3940 $(this).css('color', 'black');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3941 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3942 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3943 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3944
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3945 function heatMapOneRow (cells, quality) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3946 if (quality == 'Equal')
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3947 return;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3948 var BLUE_HUE = 240;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3949 var BLUE_OUTER_BRT = 55;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3950 var BLUE_INNER_BRT = 65;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3951
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3952 var RED_HUE = 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3953 var RED_OUTER_BRT = 50;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3954 var RED_INNER_BRT = 60;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3955
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3956 var MIN_NORMAL_BRT = 80;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3957 var MEDIAN_BRT = 100;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3958
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3959 var numbers = $.map(cells, function (cell) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3960 return parseFloat($(cell).attr('number'));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3961 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3962
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3963 var min = Math.min.apply(null, numbers);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3964 var max = Math.max.apply(null, numbers);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3965
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3966 var topHue = BLUE_HUE;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3967 var lowHue = RED_HUE;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3968
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3969 var innerTopBrt = BLUE_INNER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3970 var outerTopBrt = BLUE_OUTER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3971 var innerLowBrt = RED_INNER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3972 var outerLowBrt = RED_OUTER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3973
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3974 if (quality == 'Less is better') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3975 topHue = RED_HUE;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3976 lowHue = BLUE_HUE;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3977
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3978 innerTopBrt = RED_INNER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3979 outerTopBrt = RED_OUTER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3980 innerLowBrt = BLUE_INNER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3981 outerLowBrt = BLUE_OUTER_BRT;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3982 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3983
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3984 var twoCols = cells.length == 2;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3985
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3986 if (max == min) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3987 $(cells).css('color', MEDIAN_BRT);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3988 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3989 var sortedValues = numbers.slice().sort(function(a, b) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3990 return a - b;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3991 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3992 var median = getMedian(sortedValues);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3993 var l = numbers.length;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3994 var q1 = sortedValues[Math.floor((l - 1) / 4)];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3995 var q3 = sortedValues[Math.floor((l - 1) * 3 / 4)];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3996
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3997 var d = q3 - q1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3998 var low_outer_fence = q1 - 3 * d;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
3999 var low_inner_fence = q1 - 1.5 * d;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4000 var top_inner_fence = q3 + 1.5 * d;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4001 var top_outer_fence = q3 + 3 * d;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4002 cells.each(function (i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4003 var number = numbers[i];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4004 if (number < low_outer_fence) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4005 $(this).css('background', getColor(lowHue, twoCols ? null : outerLowBrt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4006 if (twoCols != true) $(this).css('color', 'white');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4007 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4008 else if (number < low_inner_fence) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4009 $(this).css('background', getColor(lowHue, twoCols ? null : innerLowBrt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4010 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4011 else if (number < median) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4012 var k = (MEDIAN_BRT - MIN_NORMAL_BRT) / (median - low_inner_fence);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4013 var brt = Math.round(MEDIAN_BRT - (median - number) * k);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4014 $(this).css('background', getColor(lowHue, twoCols ? null : brt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4015 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4016 else if (number > top_inner_fence) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4017 $(this).css('background', getColor(topHue, twoCols ? null : innerTopBrt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4018 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4019 else if (number > top_outer_fence) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4020 $(this).css('background', getColor(topHue, twoCols ? null : outerTopBrt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4021 if (twoCols != true) $(this).css('color', 'white');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4022 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4023 else if (number > median) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4024 var k = (MEDIAN_BRT - MIN_NORMAL_BRT) / (top_inner_fence - median);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4025 var brt = Math.round(MEDIAN_BRT - (number - median) * k);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4026 $(this).css('background', getColor(topHue, twoCols ? null : brt));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4027 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4028 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4029 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4030 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4031 function extendedClick() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4032 $('.row_to_hide').toggleClass('row_hidden');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4033
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4034 var link = $('#extended_report_link');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4035 if (link.html() == 'Extended report') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4036 link.html('Short report');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4037 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4038 link.html('Extended report');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4039 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4040 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4041
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4042 function buildExtendedLinkClick() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4043 return '<p id="extended_link"><a class="dotted-link" id="extended_report_link" onclick="extendedClick($(this))">Extended report</a></p>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4044 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4045
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4046 function appendIcarusLinks() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4047 if (icarusLinks = readJson('icarus')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4048 if (icarusLinks.links != undefined) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4049 var links = '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4050 for (var link_n = 0; link_n < icarusLinks.links.length; link_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4051 //links += '<a href="' + icarusLinks.links[link_n] + '">' + icarusLinks.links_names[link_n] + '</a><br>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4053 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4054 $('#icarus').html(links);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4055 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4056 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4057 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4058
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4059 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4060
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4061
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4062 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4063 var colors = ["#FF0000"];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4064 var broken_scaffolds_labels = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4065 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4066 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4067 function addRow(metric, mainMetrics, rowName, group_n, order, glossary, isExpandable, isPrimary) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4068 (function(group_n) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4069 var id_group = '#group_' + group_n;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4070 $(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4071 $(id_group).removeClass('group_empty');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4072 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4073 })(group_n);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4074
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4075 var table = '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4076 metricName = metric.metricName;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4077 var quality = metric.quality;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4078 var values = metric.values;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4079
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4080 var trClass = 'content-row';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4081 if (metric.isMain || $.inArray(metricName, mainMetrics) > -1) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4082 (function(group_n) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4083 var id_group = '#group_' + group_n;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4084 $(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4085 $(id_group).removeClass('row_hidden');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4086 $(id_group).removeClass('row_to_hide');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4087 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4088 })(group_n);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4089 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4090 trClass = 'content-row row_hidden row_to_hide';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4091 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4092 var tdClass = '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4093 if (!isPrimary) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4094 trClass += ' secondary_hidden';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4095 tdClass = 'secondary_td';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4096 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4097 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4098 trClass += ' primary';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4099 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4100 if (isExpandable) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4101 table +=
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4102 '<tr class="' + trClass + '" quality="' + quality + '" onclick="toggleSecondary(event, $(this))">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4103 '<td class="left_column_td ' + tdClass + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4104 '<span class="metric-name expandable collapsed">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4105 initial_spaces_to_nbsp(addTooltipIfDefinitionExists(glossary, rowName.trunc(55)), metricName) +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4106 '</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4107 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4108 else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4109 table +=
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4110 '<tr class="' + trClass + '" quality="' + quality + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4111 '<td class="left_column_td"><span class="metric-name">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4112 initial_spaces_to_nbsp(addTooltipIfDefinitionExists(glossary, rowName.trunc(55)), metricName) +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4113 '</span>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4114 '</td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4115 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4116 for (var val_n = 0; val_n < values.length; val_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4117 value = values[order[val_n]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4118
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4119 if (value === null || value === '') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4120 table += '<td><span>-</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4121 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4122 if (typeof value === 'number') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4123 table +=
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4124 '<td number="' + value + '"><span>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4125 + toPrettyString(value) + '</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4126 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4127 var result = /([0-9\.]+)(.*)/.exec(value);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4128 var num = parseFloat(result[1]);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4129 var rest = result[2];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4130 // alert('value = ' + value + ' result = ' + result);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4131
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4132 // var num = parseFloat(value);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4133
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4134 if (num !== null) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4135 table += '<td number="' + num + '"><span>' + toPrettyString(num) + rest + '</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4136 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4137 table += '<td><span>' + value + '</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4138 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4139 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4140 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4141 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4142 return table;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4143 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4144
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4145 function getSubRows(subReports, groupName, metricName) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4146 rows = [];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4147 if (subReports) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4148 for (var report_n = 0; report_n < subReports.length; report_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4149 subReport = subReports[report_n];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4150 for (var group_n = 0; group_n < subReport.length; group_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4151 if (subReport[group_n][0] != groupName)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4152 continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4153 metrics = subReport[group_n][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4154 for (var metric_n = 0; metric_n < metrics.length; metric_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4155 if (metrics[metric_n].metricName == metricName)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4156 rows.push(metrics[metric_n])
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4157 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4158 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4159 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4160 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4161 return rows;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4162 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4163
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4164 function buildTotalReport(assembliesNames, totalReport, order, glossary, qualities, mainMetrics) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4165 var report = totalReport.report,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4166 date = totalReport.date,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4167 minContig = totalReport.minContig,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4168 referenceName = totalReport.referenceName,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4169 subReports = totalReport.subreports,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4170 subReferences = totalReport.subreferences;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4171 $('#report_date').html('<p>' + date + '</p>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4172 var extraInfo = '<p>All statistics are based on contigs of size >= ' + minContig +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4174 $('#extrainfo').html(extraInfo);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4175 $('#plot-caption').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4176
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4177 var table = '';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4178 table += '<table cellspacing="0" class="report_table draggable" id="main_report_table">';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4179
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4180 if (referenceName) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4181 $('#reference_name').show().find('.val').html(referenceName);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4182 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4183
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4184 if (report[0][0] == 'Genome statistics') { // if first section is empty (no reference), swap it and w/o reference statistics
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4185 var genomeMetrics = report[0][1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4186 var isSectionEmpty = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4187 for (var index = 0; index < genomeMetrics.length; index++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4188 if (genomeMetrics[index].isMain || $.inArray(genomeMetrics[index].metric_name, mainMetrics) > -1)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4189 isSectionEmpty = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4190 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4191 if (isSectionEmpty) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4192 for (var group_n = 0; group_n < report.length; group_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4193 if (report[group_n][0] == 'Statistics without reference') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4194 report[0] = report.splice(group_n, 1, report[0])[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4195 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4196 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4197 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4198 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4199
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4200 for (var group_n = 0; group_n < report.length; group_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4201 var group = report[group_n];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4202 var groupName = group[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4203 var metrics = group[1];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4204 var width = assembliesNames.length + 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4205
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4206 if (groupName == 'Reference statistics') {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4207 var referenceValues = {};
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4208 for (var metric_n = 0; metric_n < metrics.length; metric_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4209 var metric = metrics[metric_n];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4210 var metricName = metric.metricName;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4211 var value = metric.values[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4212 referenceValues[metricName] = value;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4213 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4214 var refLen = referenceValues['Reference length'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4215 var refFragments = referenceValues['Reference fragments'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4216 var refGC = referenceValues['Reference GC (%)'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4217 var refFeatures = referenceValues['Reference genomic features'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4218 var refOperons = referenceValues['Reference operons'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4219 var refChr = referenceValues['Reference chromosomes'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4220 var totalReads = referenceValues['# total reads'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4221 var refMappedReads = referenceValues['Reference mapped (%)'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4222 var refPairedReads = referenceValues['Reference properly paired (%)'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4223 var estRefLen = referenceValues['Estimated reference length'];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4224
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4225 if (refLen)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4226 $('#reference_length').show().find('.val').html(toPrettyString(refLen));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4227 else if (estRefLen)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4228 $('#est_reference_length').show().find('.val').html(toPrettyString(estRefLen));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4229 if (refFragments) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4230 $('#reference_fragments').show().find('.val').html(refFragments);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4231 if (refFragments > 1)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4232 $('#reference_fragments').find('.plural_ending').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4233 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4234 if (refGC)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4235 $('#reference_gc').show().find('.val').html(toPrettyString(refGC));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4236 if (refFeatures)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4237 $('#reference_features').show().find('.val').html(toPrettyString(refFeatures));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4238 if (refOperons)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4239 $('#reference_operons').show().find('.val').html(toPrettyString(refOperons));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4240 if (refChr) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4241 $('#reference_chr').show().find('.val').html(refChr);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4242 if (refChr > 1)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4243 $('#reference_chr').find('.plural_ending').show();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4244 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4245 if (totalReads)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4246 $('#total_reads').show().find('.val').html(toPrettyString(totalReads));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4247 if (refMappedReads !== undefined)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4248 $('#reference_mapped_reads').show().find('.val').html(toPrettyString(refMappedReads));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4249 if (refPairedReads !== undefined)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4250 $('#reference_paired_reads').show().find('.val').html(toPrettyString(refPairedReads));
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4251 continue;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4252 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4253
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4254 if (group_n == 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4255 table += '<tr class="top_row_tr"><td id="top_left_td" class="left_column_td"><span>' + groupName + '</span></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4256
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4257 for (var assembly_n = 0; assembly_n < assembliesNames.length; assembly_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4258 var assemblyName = assembliesNames[order[assembly_n]];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4259 if (assemblyName.length > 30) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4260 assemblyName =
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4261 '<span class="tooltip-link" rel="tooltip" title="' + assemblyName + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4262 assemblyName.trunc(30) +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4263 '</span>'
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4264 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4265
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4266 table += '<td class="second_through_last_col_headers_td" position="' + order[assembly_n] + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4267 '<span class="drag_handle"><span class="drag_image"></span></span>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4268 '<span class="assembly_name">' + assemblyName + '</span>' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4269 '</td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4270 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4271
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4272 } else {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4273 table +=
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4274 '<tr class="group_header row_to_hide row_hidden group_empty" id="group_' + group_n + '">' +
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4275 '<td class="left_column_td"><span>' + groupName + '</span></td>'; //colspan="' + width + '"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4276 for (var i = 1; i < width; i++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4277 table += '<td></td>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4278 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4279 table += '</tr>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4280 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4281
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4282 for (metric_n = 0; metric_n < metrics.length; metric_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4283 isExpandable = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4284 isPrimary = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4285 metricName = metrics[metric_n].metricName;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4286 subRows = getSubRows(subReports, groupName, metricName);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4287 if (subRows && subRows.length > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4288 isExpandable = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4289 table += addRow(metrics[metric_n], mainMetrics, metricName, group_n, order, glossary, isExpandable, isPrimary);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4290 for (var rows_n = 0; rows_n < subRows.length; rows_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4291 isExpandable = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4292 isPrimary = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4293 table += addRow(subRows[rows_n], mainMetrics, subReferences[rows_n], group_n, order, glossary, isExpandable, isPrimary);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4294 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4295 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4296 else table += addRow(metrics[metric_n], mainMetrics, metricName, group_n, order, glossary, isExpandable, isPrimary);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4297 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4298 table += '</tr>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4299 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4300 table += '</table>';
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4301
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4302 table += buildExtendedLinkClick();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4303
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4304 setUpHeatMap(table);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4305 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4306
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4307 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4308
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4309
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4310 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4311
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4312 function buildReport() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4313 var assembliesNames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4314 var order;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4315
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4316 var totalReport = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4317 var qualities = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4318 var mainMetrics = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4319 var contigsLens = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4320 var coordNx = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4321 var contigsLensNx = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4322 var alignedContigsLens = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4323 var refLengths = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4324 var contigs = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4325 var featuresInContigs = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4326 var operonsInContigs = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4327 var gcInfos = null;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4328
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4329 var glossary = JSON.parse($('#glossary-json').html());
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4330
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4331 var plotsSwitchesDiv = document.getElementById('plots-switches');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4332 var toRemoveRefLabel = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4333 var firstPlot = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4334
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4335 /****************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4336 /* Total report */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4337
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4338 if (!(totalReport = readJson('total-report'))) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4339 console.log("Error: cannot read #total-report-json");
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4340 return 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4341 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4342
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4343 assembliesNames = totalReport.assembliesNames;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4344
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4345 order = recoverOrderFromCookies() || totalReport.order || Range(0, assembliesNames.length);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4346
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4347 buildTotalReport(assembliesNames, totalReport, order, glossary, qualities, mainMetrics);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4348
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4349 if (refLengths = readJson('reference-length'))
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4350 refLengths = refLengths.reflen;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4351
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4352 /****************/
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4353 /* Plots */
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4354
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4355 while (assembliesNames.length > colors.length) { // colors is defined in utils.js
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4356 colors = colors.concat(colors);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4357 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4358
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4359 $(plotsSwitchesDiv).html('<b>Plots:</b>');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4360
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4361 var selectedAssemblies = Array.apply(null, {length: assembliesNames}).map(Number.call, Number);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4362 assembliesNames.forEach(function(filename, i) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4363 addLabelToLegend(i, filename, selectedAssemblies, colors)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4364 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4365
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4366 var tickX = 1;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4367 if (tickX = readJson('tick-x'))
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4368 tickX = tickX.tickX;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4369
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4370 if (contigsLens = readJson('contigs-lengths')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4371 makePlot(firstPlot, assembliesNames, order, 'cumulative', 'Cumulative length', cumulative.draw, contigsLens.lists_of_lengths, refLengths, tickX);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4372 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4373 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4374
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4375 if (coordNx = readJson('coord-nx')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4376 makePlot(firstPlot, assembliesNames, order, 'nx', 'Nx', nx.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4377 coord_x: coordNx.coord_x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4378 coord_y: coordNx.coord_y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4379 filenames: coordNx.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4380 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4381 null, null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4382 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4383 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4384 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4385
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4386 if (coordNx = readJson('coord-nax')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4387 makePlot(firstPlot, assembliesNames, order, 'nax', 'NAx', nx.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4388 coord_x: coordNx.coord_x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4389 coord_y: coordNx.coord_y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4390 filenames: coordNx.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4391 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4392 null, null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4393 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4394 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4395 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4396
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4397 if (coordNx = readJson('coord-ngx')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4398 makePlot(firstPlot, assembliesNames, order, 'ngx', 'NGx', nx.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4399 coord_x: coordNx.coord_x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4400 coord_y: coordNx.coord_y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4401 filenames: coordNx.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4402 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4403 null, null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4404 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4405 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4406 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4407
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4408 if (coordNx = readJson('coord-ngax')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4409 makePlot(firstPlot, assembliesNames, order, 'ngax', 'NGAx', nx.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4410 coord_x: coordNx.coord_x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4411 coord_y: coordNx.coord_y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4412 filenames: coordNx.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4413 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4414 null, null
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4415 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4416 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4417 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4418
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4419 if (coordMisassemblies = readJson('coord-misassemblies')) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4420 makePlot(firstPlot, assembliesNames, order, 'misassemblies', 'Misassemblies', frc.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4421 coord_x: coordMisassemblies.coord_x,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4422 coord_y: coordMisassemblies.coord_y,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4423 filenames: coordMisassemblies.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4424 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4425 null, 1
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4426 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4427 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4428 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4429
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4430 featuresInContigs = readJson('features-in-contigs');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4431 operonsInContigs = readJson('operons-in-contigs');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4432 // if (genesInContigs || operonsInContigs)
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4433 // contigs = readJson('contigs');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4434
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4435 if (featuresInContigs) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4436 makePlot(firstPlot, assembliesNames, order, 'features', 'Genomic features', gns.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4437 filesFeatureInContigs: featuresInContigs.features_in_contigs,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4438 kind: 'gene',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4439 filenames: featuresInContigs.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4440 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4441 featuresInContigs.ref_features_number, tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4442 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4443 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4444 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4445 if (operonsInContigs) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4446 makePlot(firstPlot, assembliesNames, order, 'operons', 'Operons', gns.draw, {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4447 filesFeatureInContigs: operonsInContigs.operons_in_contigs,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4448 kind: 'operon',
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4449 filenames: operonsInContigs.filenames
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4450 },
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4451 operonsInContigs.ref_operons_number, tickX
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4452 );
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4453 firstPlot = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4454 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4455 gcInfos = readJson('gc');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4456 if (gcInfos && (gcInfos.lists_of_gc_info || gcInfos.list_of_GC_distributions)) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4457 makePlot(firstPlot, assembliesNames, order, 'gc', 'GC content', gc.draw, gcInfos, gcInfos.reference_index);
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4458 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4459
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4460 var noReference = true;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4461 var report = totalReport.report;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4462 for (var group_n = 0; group_n < report.length; group_n++) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4463 var group = report[group_n];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4464 var groupName = group[0];
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4465 if (groupName == 'Reference statistics' && group[1].length > 0) {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4466 noReference = false;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4467 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4468 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4469 if (noReference) extendAll();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4470 appendIcarusLinks();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4471 return 0;
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4472 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4473
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4474 function extendAll() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4475 $('.row_to_hide').toggleClass('row_hidden');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4476
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4477 var link = $('#extended_report_link');
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4478 link.hide();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4479 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4480 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4481
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4482
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4483 <script type="text/javascript">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4484 $(function() {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4485
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4486 buildReport();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4487
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4488 dragTable.init();
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4489
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4490 $("[rel=tooltip]").tooltip({ animation: false, });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4491 });
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4492 </script>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4493 </head>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4494
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4495 <body>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4496 <div class="top-panel">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4497 <table class="layout-table">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4498 <tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4499 <td class='layout-table-td'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4500 <div class="page_title">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4501 <h1>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4502 QUAST
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4503 </h1>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4504 <p class="page_subtitle">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4505 <b>Quality Assessment Tool for Genome Assemblies</b>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4506 by <a href="http://cab.spbu.ru" class='dark_bg_link'>CAB</a>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4507 </p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4508 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4509 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4510 </tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4511 </table>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4512 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4513 <div class="content">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4514 <div id='header'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4515 <p id='report_date'></p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4516
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4517 <p id='icarus'></p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4518 <p id='extrainfo'>Loading...</p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4519 <p id='per_ref_msg'></p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4520 <p id='krona'></p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4521
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4522 <p id="data_set_p">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4523 <span style="display: none;" id="reference_name">Aligned to
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4524 "<span class='val'></span>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4525 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4526
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4527 <span style="display: none;" id="combined_reference_name">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4528 Combined reference
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4529 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4530
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4531 <span style="display: none;" id="est_reference_length">Estimated reference size:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4532 <span class='val'></span><span class='rhs'>&nbsp;</span>bp
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4533 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4534
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4535 <span style="display: none;" id="reference_length">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4536 <span class='val'></span><span class='rhs'>&nbsp;</span>bp
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4537 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4538
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4539 <span style="display: none;" id="combined_reference_files">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4540 <span class='val'></span><span class='rhs'>&nbsp;</span>reference<span style="display: none;" class='plural_ending'>s</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4541 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4542
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4543 <span style="display: none;" id="reference_fragments">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4544 <span class='val'></span><span class='rhs'>&nbsp;</span>fragment<span style="display: none;" class='plural_ending'>s</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4545 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4546
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4547 <span style="display: none;" id="reference_gc">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4548 <span class='val'></span><span class='rhs'>&nbsp;</span>% G+C
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4549 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4550
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4551 <span style="display: none;" id="reference_chr">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4552 <span class='val'></span> chromosome<span style="display: none;" class='plural_ending'>s</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4553 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4554
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4555 <span style="display: none;" id="total_reads"><br>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4556 <span class='val'></span> reads
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4557 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4558
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4559 <span style="display: none;" id="reference_mapped_reads">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4560 <span class='val'></span>% mapped
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4561 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4562
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4563 <span style="display: none;" id="reference_paired_reads">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4564 <span class='val'></span>% properly paired
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4565 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4566
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4567 <span style="display: none;" id="reference_features"><br>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4568 <span class='val'></span> genomic features
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4569 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4570
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4571 <span style="display: none;" id="reference_operons">|
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4572 <span class='val'></span> operons
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4573 </span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4574 </p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4575 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4576
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4577 <noscript>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4578 <div style="margin-left: 0;">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4579 Unfortunately, <span style="font-weight: bold">JavaScript</span> in your
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4580 browser <span style="font-weight: bold">is disabled</span> or is not supported.</br>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4581 We need JavaScript to build report and plots.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4582 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4583 </noscript>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4584
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4585 <div class='report-and-plots'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4586 <div class='report' id='main_report'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4587 <div id="heatmap_header" style='display: none; float: left;'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4588 <div style="padding-right: 10px; display: inline-block; vertical-align:top;">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4589 <canvas id="gradientHeatmap" width="150" height="6"></canvas>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4590 <div style="margin-left: 0; text-align: justify;">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4591 <span class="heatmap_legend">Worst</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4592 <span style="margin-left: -5px;" class="heatmap_legend">Median</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4593 <span class="heatmap_legend">Best</span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4594 <span class="heatmap_legend" style='width: 100%; height: 0;'></span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4595 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4596 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4597 <label for="heatmaps_chbox"><input type="checkbox" checked="checked" id="heatmaps_chbox">Show heatmap</label>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4598 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4599 <div style="clear: both;"></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4600 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4601 <div class='plots'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4602 <table style='margin: -3px;'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4603 <tr id='all-switches'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4604 <td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4605 <div id='plots-switches'></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4606 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4607 <td style='text-align: right; padding-right: 22px;'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4608 <span id='scale-placeholder'></span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4609 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4610 </tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4611 <tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4612 <td colspan="2">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4613 <div id='plot-placeholder' style=''></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4614 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4615 <td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4616 <div id='legend-placeholder'></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4617 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4618 </tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4619 <tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4620 <td colspan="3" id="plot-caption" style="display: none;">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4621 <p id="contigs_are_ordered">Contigs are ordered from largest (contig #1) to smallest.</p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4622 <p id="frc_info">FRCurve:
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4623 Y is the total number of aligned bases divided by the reference length,
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4624 in the contigs having the total number of <span class="frc_plot_name"></span> at most X.</p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4625 <p id="gc_info">Contigs are broken into nonoverlapping 100 bp windows.
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4626 Plot shows number of windows for each GC percentage.</p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4627 <p id="gc_contigs_info">Plot shows number of contigs with GC percentage in a certain range.</p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4628 </td>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4629 </tr>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4630 </table>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4631 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4632
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4633 <p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4634 <span id="main_ref_genome"></span>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4635 </p>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4636
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4637 <div style="clear: left"></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4638 <div style="clear: right"></div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4639
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4640 <div class='json-code'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4641 <div id='total-report-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4643 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4644 <div id='qualities-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4645 {{ qualities }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4646 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4647 <div id='main-metrics-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4648 {{ mainMetrics }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4649 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4650
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4651 <div id="contigs-lengths-json">
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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]]}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4653 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4654 <div id='assemblies-lengths-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4655 {{ assembliesLengths }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4656 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4657 <div id='reference-length-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4658 {{ referenceLength }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4659 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4660 <div id='tick-x-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4661 {"tickX":1}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4662 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4663 <div id='coord-nx-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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"]}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4665 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4666 <div id='coord-ngx-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4667 {{ coordNGx }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4668 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4669 <div id='coord-nax-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4670 {{ coordNAx }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4671 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4672 <div id='coord-ngax-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4673 {{ coordNGAx }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4674 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4675 <div id='coord-misassemblies-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4676 {{ coordmisassemblies }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4677 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4678 <div id='features-in-contigs-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4679 {{ featuresInContigs }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4680 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4681 <div id='operons-in-contigs-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4682 {{ operonsInContigs }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4683 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4684 <div id='summary-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4685 [{{ num_contigs }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4686 {{ Largest_alignment }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4687 {{ Total_aligned_length }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4688 {{ num_misassemblies }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4689 {{ Misassembled_contigs_length }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4690 {{ num_mismatches_per_100_kbp }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4691 {{ num_indels_per_100_kbp }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4692 {{ num_N's_per_100_kbp }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4693 {{ Genome_fraction }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4694 {{ Duplication_ratio }},
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4695 {{ NGA50 }}]
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4696 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4697 <div id='misassemblies-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4698 {{ allMisassemblies }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4699 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4700 <div id='krona-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4701 {{ krona }}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4702 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4703 <div id='gc-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4705 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4706 <div id='icarus-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4707 {"links":["icarus_viewers/contig_size_viewer.html"],"links_names":["View in Icarus contig browser"]}
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4708 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4709 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4710 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4711
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4712 <div class='json-code'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4713 <div id='glossary-json'>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4714 {
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4715 "# contigs" : "<span>is the total number of contigs in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4716 "Largest contig" : "<span>is the length of the longest contig in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4717 "Total length" : "<span>is the total number of bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4718 "Reference length" : "<span>is the total number of bases in the reference.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4719
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4722
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4725
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4728
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4731
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4734
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4735 "auN" : "<span>is the area under the Nx curve.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4736 "auNG" : "<span>is the area under the NGx curve.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4737 "auNA" : "<span>is the area under the NAx curve.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4738 "auNGA" : "<span>is the area under the NGAx curve.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4739
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4740 "Average %IDY" : "<span>is the average of alignment identity percent (alignment accuracy) among all contigs.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4743 "# misassembled contigs" : "<span>is the number of contigs that contain misassembly events.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4745
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4759 "# intergenomic misassemblies" : "<span>is the number of all found and putative (possible) interspecies translocations.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4760 "# structural variations" : "<span>is the number of misassemblies matched with structural variations.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4763
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4764 "# fully unaligned contigs" : "<span>is the number of contigs that have no alignment to the reference sequence.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4768
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4770 "Ambiguous contigs length" : "<span>is the total number of bases contained in all ambiguous contigs.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4771
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4775
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4776 "# mismatches per 100 kbp" : "<span>is the average number of mismatches per 100,000 aligned bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4777 "# mismatches" : "<span>is the number of mismatches in all aligned bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4778 "# indels per 100 kbp" : "<span>is the average number of indels per 100,000 aligned bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4779 "# indels" : "<span>is the number of indels in all aligned bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4780 "# indels (<= 5 bp)" : "<span>is the number of indels of length less than or equal to 5 bp.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4781 "# indels (> 5 bp)" : "<span>is the number of indels of length greater than 5 bp.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4782 "Indels length" : "<span>is the number of total bases contained in all indels.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4783
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4786 "# predicted genes (unique)" : "<span>is the number of unique genes in the assembly found by a gene prediction tool.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4788
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4791
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4798
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4801 "Total aligned length" : "<span>is the total number of aligned bases in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4803
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4804 "# N's" : "<span>is the total number of uncalled bases (N's) in the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4806
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4807 "# mapped" : "<span>is the number of reads that mapped to the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4808 "Mapped (%)" : "<span>is the percent of reads that mapped to the assembly.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4811 "# singletons" : "<span>is the number of reads which do not overlap any other reads.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4812 "Singletons (%)" : "<span>is the percent of reads which do not overlap any other reads.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4813 "# misjoint mates" : "<span>is the number of reads with mate mapped to a different contig.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4814 "Misjoint mates (%)" : "<span>is the percent of reads with mate mapped to a different contig.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4815 "Avg. coverage depth" : "<span>is the average depth of coverage.</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
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>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4817
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4818 "# similar correct contigs" : "<span>is the number of correct contigs similar among > 50% assemblies (see Icarus for visualization).</span>",
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4819 "# similar misassembled blocks" : "<span>is the number of misassembled blocks similar among > 50% assemblies (see Icarus for visualization).</span>"
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4820 }
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4821
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4822 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4823 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4824 </div>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4825 </body>
421032d8dd5d planemo upload commit 0a5fc6ee1a42b0c1c413de143a01559cb491c2e5-dirty
pimarin
parents:
diff changeset
4826 </html>