aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gn2/wqflask/__init__.py2
-rw-r--r--gn2/wqflask/correlation/corr_scatter_plot.py3
-rw-r--r--gn2/wqflask/static/new/javascript/draw_corr_scatterplot.js69
-rw-r--r--gn2/wqflask/static/new/javascript/get_traits_from_collection.js6
-rw-r--r--gn2/wqflask/static/new/javascript/show_trait.js2
-rw-r--r--gn2/wqflask/templates/corr_scatterplot.html177
-rw-r--r--gn2/wqflask/templates/gn_editor.html7
-rw-r--r--gn2/wqflask/templates/gn_editor_commit.html8
-rw-r--r--gn2/wqflask/templates/gn_editor_results_page.html31
-rw-r--r--gn2/wqflask/templates/gsearch_gene.html40
-rw-r--r--gn2/wqflask/templates/mapping_results.html12
-rw-r--r--gn2/wqflask/templates/show_trait_calculate_correlations.html2
-rw-r--r--gn2/wqflask/templates/show_trait_statistics.html2
-rw-r--r--gn2/wqflask/views.py4
14 files changed, 210 insertions, 155 deletions
diff --git a/gn2/wqflask/__init__.py b/gn2/wqflask/__init__.py
index d959598d..af386317 100644
--- a/gn2/wqflask/__init__.py
+++ b/gn2/wqflask/__init__.py
@@ -110,7 +110,7 @@ app.jinja_env.globals.update(
# Registering blueprints
-app.register_blueprint(gn_docs_blueprint, url_prefix="/gn_docs")
+app.register_blueprint(gn_docs_blueprint, url_prefix="/gn-docs")
app.register_blueprint(glossary_blueprint, url_prefix="/glossary")
app.register_blueprint(references_blueprint, url_prefix="/references")
app.register_blueprint(links_blueprint, url_prefix="/links")
diff --git a/gn2/wqflask/correlation/corr_scatter_plot.py b/gn2/wqflask/correlation/corr_scatter_plot.py
index ab130cc5..79905cc2 100644
--- a/gn2/wqflask/correlation/corr_scatter_plot.py
+++ b/gn2/wqflask/correlation/corr_scatter_plot.py
@@ -45,6 +45,8 @@ class CorrScatterPlot:
if self.dataset_1.group.f1list != None:
primary_samples += self.dataset_1.group.f1list
+ self.effect_plot = True if 'effect' in params else False
+
if 'dataid' in params:
trait_data_dict = json.loads(Redis.get(params['dataid']))
trait_data = {key:webqtlCaseData.webqtlCaseData(key, float(trait_data_dict[key])) for (key, value) in trait_data_dict.items() if trait_data_dict[key] != "x"}
@@ -116,6 +118,7 @@ class CorrScatterPlot:
self.js_data = dict(
data=self.data,
+ effect_plot=self.effect_plot,
rdata=self.rdata,
indIDs=self.indIDs,
trait_1=self.trait_1.dataset.name + ": " + str(self.trait_1.name),
diff --git a/gn2/wqflask/static/new/javascript/draw_corr_scatterplot.js b/gn2/wqflask/static/new/javascript/draw_corr_scatterplot.js
index f883c0d9..fa896621 100644
--- a/gn2/wqflask/static/new/javascript/draw_corr_scatterplot.js
+++ b/gn2/wqflask/static/new/javascript/draw_corr_scatterplot.js
@@ -24,8 +24,6 @@ if (y_val_range >= 2 && y_val_range < 8){
y_tick_digits = 'f'
}
-console.log("y_digits:", y_tick_digits)
-
var layout = {
height: 700,
width: 800,
@@ -42,7 +40,7 @@ var layout = {
visible: true,
linecolor: 'black',
linewidth: 1,
- ticklen: 4,
+ ticklen: 6,
tickformat: x_tick_digits
},
yaxis: {
@@ -52,7 +50,7 @@ var layout = {
visible: true,
linecolor: 'black',
linewidth: 1,
- ticklen: 4,
+ ticklen: 6,
tickformat: y_tick_digits,
automargin: true
},
@@ -140,12 +138,8 @@ var modebar_options = {
cofactor1_dict = {}
ranked_cofactor1_dict = {}
-//cofactor1_values = []
-//ranked_cofactor1_values = []
cofactor2_dict = {}
ranked_cofactor2_dict = {}
-//cofactor2_values = []
-//ranked_cofactor2_values = []
cofactor3_dict = {}
ranked_cofactor3_dict = {}
@@ -176,6 +170,13 @@ function drawg() {
}
}
+ // Change some plot settings if the plot is an Effect Size plot
+ if (js_data.effect_plot) {
+ layout['width'] = 500
+ layout['xaxis']['nticks'] = 3
+ layout['xaxis']['tickformat'] = '.0f'
+ }
+
Plotly.newPlot('scatterplot2', [trace2, trace1], layout, modebar_options)
}
@@ -634,8 +635,10 @@ function chartupdatewh() {
Plotly.newPlot('scatterplot2', getdata(), layout, modebar_options)
Plotly.relayout('scatterplot2', width_height_update)
- Plotly.newPlot('srscatterplot2', srgetdata(), sr_layout, modebar_options)
- Plotly.relayout('srscatterplot2', width_height_update)
+ if (!js_data.effect_plot) {
+ Plotly.newPlot('srscatterplot2', srgetdata(), sr_layout, modebar_options)
+ Plotly.relayout('srscatterplot2', width_height_update)
+ }
}
function colorer(d) {
@@ -711,8 +714,10 @@ function chartupdatedata() {
Plotly.newPlot('scatterplot2', getdata(), layout, modebar_options)
Plotly.relayout('scatterplot2', pearson_title_update)
- Plotly.newPlot('srscatterplot2', srgetdata(), sr_layout, modebar_options)
- Plotly.relayout('srscatterplot2', spearman_title_update)
+ if (!js_data.effect_plot) {
+ Plotly.newPlot('srscatterplot2', srgetdata(), sr_layout, modebar_options)
+ Plotly.relayout('srscatterplot2', spearman_title_update)
+ }
if ($('#cofactor1_type option:selected').val() == "color"){
$('#cofactor_color_selector').css("display", "inline")
@@ -722,11 +727,13 @@ function chartupdatedata() {
'stroke': colorer,
'fill': colorer
});
- d3.select('#srscatterplot2 svg').selectAll('.point')
- .style({
- 'stroke': ranked_colorer,
- 'fill': ranked_colorer
- });
+ if (!js_data.effect_plot) {
+ d3.select('#srscatterplot2 svg').selectAll('.point')
+ .style({
+ 'stroke': ranked_colorer,
+ 'fill': ranked_colorer
+ });
+ }
}
} else if ($('#cofactor2_type option:selected').val() == "color"){
$('#cofactor_color_selector').css("display", "inline")
@@ -736,11 +743,13 @@ function chartupdatedata() {
'stroke': colorer,
'fill': colorer
});
- d3.select('#srscatterplot2 svg').selectAll('.point')
- .style({
- 'stroke': ranked_colorer,
- 'fill': ranked_colorer
- });
+ if (!js_data.effect_plot) {
+ d3.select('#srscatterplot2 svg').selectAll('.point')
+ .style({
+ 'stroke': ranked_colorer,
+ 'fill': ranked_colorer
+ });
+ }
}
} else {
$('#cofactor_color_selector').css("display", "inline")
@@ -750,17 +759,21 @@ function chartupdatedata() {
'stroke': colorer,
'fill': colorer
});
- d3.select('#srscatterplot2 svg').selectAll('.point')
- .style({
- 'stroke': ranked_colorer,
- 'fill': ranked_colorer
- });
+ if (!js_data.effect_plot) {
+ d3.select('#srscatterplot2 svg').selectAll('.point')
+ .style({
+ 'stroke': ranked_colorer,
+ 'fill': ranked_colorer
+ });
+ }
}
}
}
drawg();
-srdrawg();
+if (!js_data.effect_plot) {
+ srdrawg();
+}
$(".chartupdatewh").change(function () {
chartupdatewh();
diff --git a/gn2/wqflask/static/new/javascript/get_traits_from_collection.js b/gn2/wqflask/static/new/javascript/get_traits_from_collection.js
index c115f3b0..6968a9d7 100644
--- a/gn2/wqflask/static/new/javascript/get_traits_from_collection.js
+++ b/gn2/wqflask/static/new/javascript/get_traits_from_collection.js
@@ -389,7 +389,11 @@ process_traits = function(trait_data, textStatus, jqXHR) {
the_html += "<td class='trait' data-display_name='" + trait.name + "'>" + trait.name + "</td>";
}
the_html += "<td class='dataset' data-dataset='" + trait.dataset + "'>" + trait.dataset_name + "</td>";
- the_html += "<td class='description'>" + trait.description + "</td>";
+ if (trait.dataset.includes('Geno')) {
+ the_html += "<td class='description'>" + trait.location + "</td>";
+ } else {
+ the_html += "<td class='description'>" + trait.description + "</td>";
+ }
}
the_html += "</tbody>";
the_html += "</table>";
diff --git a/gn2/wqflask/static/new/javascript/show_trait.js b/gn2/wqflask/static/new/javascript/show_trait.js
index edb2cfab..6d77e130 100644
--- a/gn2/wqflask/static/new/javascript/show_trait.js
+++ b/gn2/wqflask/static/new/javascript/show_trait.js
@@ -68,7 +68,7 @@ statTableRows.push(
}, {
vn: "interquartile",
pretty: "<font color='black'>Interquartile Range</font>",
- url: "http://www.genenetwork.org/glossary.html#Interquartile",
+ url: "{{ url_for('gn_docs_blueprint.glossary') }}#Interquartile",
digits: 3
}, {
vn: "skewness",
diff --git a/gn2/wqflask/templates/corr_scatterplot.html b/gn2/wqflask/templates/corr_scatterplot.html
index 554471be..9532726c 100644
--- a/gn2/wqflask/templates/corr_scatterplot.html
+++ b/gn2/wqflask/templates/corr_scatterplot.html
@@ -126,18 +126,20 @@
<li {% if method == 'pearson' %}class="active"{% endif %}>
<a href="#tp1" data-toggle="tab">Pearson</a>
</li>
+ {% if effect_plot == false %}
<li {% if method == 'spearman' %}class="active"{% endif %}>
<a href="#tp2" data-toggle="tab">Spearman Rank</a>
</li>
+ {% endif %}
</ul>
- <div class="tab-content" style="min-width: 800px;">
+ <div class="tab-content" style="width: {% if effect_plot %}500{% else %}800{% endif %}px;">
<div class="tab-pane {% if method == 'pearson' %}active{% endif %}" id="tp1">
<br>
<div id="scatterplot2"></div>
<br>
- <div style="min-width: 700px; overflow: hidden;">
+ <div style="width: {% if effect_plot %}500{% else %}800{% endif %}px; overflow: hidden;">
<div style="margin-left: 50px; min-width: 300px;">
{% if trait_1.dataset.type == "ProbeSet" %}
<div>
@@ -248,101 +250,102 @@
</div>
</div>
+ {% if effect_plot == false %}
<div class="tab-pane {% if method == 'spearman' %}active{% endif %}" id="tp2">
<br>
<div id="srscatterplot2"></div>
<br>
- <div class="row" style="min-width: 700px; overflow: hidden;">
- <div style="margin-left: 50px; min-width: 300px;">
- {% if trait_1.dataset.type == "ProbeSet" %}
- <div>
- X axis:
- <a href="{{url_for('show_trait_page', trait_id = trait_1.name, dataset = trait_1.dataset.name)}}">
- {{trait_1.dataset.group.species + " " + trait_1.dataset.group.name + " " + trait_1.dataset.tissue + " " + trait_1.dataset.name + ": " + trait_1.name|string}}
- </a>
- </div>
- <div>
- [{{trait_1.symbol}} on {{trait_1.location_repr}} Mb]
- {{trait_1.description_display}}
- </div>
- {% elif trait_1.dataset.type == "Publish" %}
- <div>
- X axis:
- <a href="{{url_for('show_trait_page', trait_id = trait_1.name, dataset = trait_1.dataset.name)}}">
- {{trait_1.dataset.group.species + " " + trait_1.dataset.group.name + " " + trait_1.dataset.name + ": " + trait_1.name|string}}
- </a>
- </div>
- <div>
- <a href="{{trait_1.pubmed_link}}">PubMed: {{trait_1.pubmed_text}}</a>
+ <div class="row" style="width: 800px; overflow: hidden;">
+ <div style="margin-left: 50px; min-width: 300px;">
+ {% if trait_1.dataset.type == "ProbeSet" %}
+ <div>
+ X axis:
+ <a href="{{url_for('show_trait_page', trait_id = trait_1.name, dataset = trait_1.dataset.name)}}">
+ {{trait_1.dataset.group.species + " " + trait_1.dataset.group.name + " " + trait_1.dataset.tissue + " " + trait_1.dataset.name + ": " + trait_1.name|string}}
+ </a>
+ </div>
+ <div>
+ [{{trait_1.symbol}} on {{trait_1.location_repr}} Mb]
{{trait_1.description_display}}
- </div>
- {% endif %}
+ </div>
+ {% elif trait_1.dataset.type == "Publish" %}
+ <div>
+ X axis:
+ <a href="{{url_for('show_trait_page', trait_id = trait_1.name, dataset = trait_1.dataset.name)}}">
+ {{trait_1.dataset.group.species + " " + trait_1.dataset.group.name + " " + trait_1.dataset.name + ": " + trait_1.name|string}}
+ </a>
+ </div>
+ <div>
+ <a href="{{trait_1.pubmed_link}}">PubMed: {{trait_1.pubmed_text}}</a>
+ {{trait_1.description_display}}
+ </div>
+ {% endif %}
- <br/>
+ <br/>
- {% if trait_2.dataset.type == "ProbeSet" %}
- <div>
- Y axis:
- <a href="{{url_for('show_trait_page', trait_id = trait_2.name, dataset = trait_2.dataset.name)}}">
- {{trait_2.dataset.group.species + " " + trait_2.dataset.group.name + " " + trait_2.dataset.tissue + " " + trait_2.dataset.name + ": " + trait_2.name|string}}
- </a>
- </div>
- <div>
- [{{trait_2.symbol}} on {{trait_2.location_repr}} Mb]
- {{trait_2.description_display}}
- </div>
- {% elif trait_2.dataset.type == "Publish" %}
- <div>
- Y axis:
- <a href="{{url_for('show_trait_page', trait_id = trait_2.name, dataset = trait_2.dataset.name)}}">
- {{trait_2.dataset.group.species + " " + trait_2.dataset.group.name + " " + trait_2.dataset.name + ": " + trait_2.name|string}}
- </a>
- </div>
- <div>
- <a href="{{trait_2.pubmed_link}}">PubMed: {{trait_2.pubmed_text}}</a>
+ {% if trait_2.dataset.type == "ProbeSet" %}
+ <div>
+ Y axis:
+ <a href="{{url_for('show_trait_page', trait_id = trait_2.name, dataset = trait_2.dataset.name)}}">
+ {{trait_2.dataset.group.species + " " + trait_2.dataset.group.name + " " + trait_2.dataset.tissue + " " + trait_2.dataset.name + ": " + trait_2.name|string}}
+ </a>
+ </div>
+ <div>
+ [{{trait_2.symbol}} on {{trait_2.location_repr}} Mb]
{{trait_2.description_display}}
+ </div>
+ {% elif trait_2.dataset.type == "Publish" %}
+ <div>
+ Y axis:
+ <a href="{{url_for('show_trait_page', trait_id = trait_2.name, dataset = trait_2.dataset.name)}}">
+ {{trait_2.dataset.group.species + " " + trait_2.dataset.group.name + " " + trait_2.dataset.name + ": " + trait_2.name|string}}
+ </a>
+ </div>
+ <div>
+ <a href="{{trait_2.pubmed_link}}">PubMed: {{trait_2.pubmed_text}}</a>
+ {{trait_2.description_display}}
+ </div>
+ {% endif %}
+ </div>
+ <div style="float: left; margin-top: 30px;">
+ <table class="table table-hover table-striped table-bordered" style="width: 80%; margin-left: 60px; text-align: right;">
+ <thead>
+ <tr><th style="text-align: right;">Statistic</th><th style="text-align: right;">Value</th></tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>Number</td>
+ <td>{{jsdata.num_overlap}}</td>
+ </tr>
+ <tr>
+ <td>Slope</td>
+ <td>{{ jsdata.srslope_string }}</td>
+ </tr>
+ <tr>
+ <td>Intercept</td>
+ <td>{{'%0.3f' % jsdata.srintercept}}</td>
+ </tr>
+ <tr>
+ <td>r value</td>
+ <td>{{'%0.3f' % jsdata.srr_value}}</td>
+ </tr>
+ <tr>
+ <td>P value</td>
+ <td>{% if jsdata.srp_value < 0.001 %}{{'%0.3e' % jsdata.srp_value}}{% else %}{{'%0.3f' % jsdata.srp_value}}{% endif %}</td>
+ </tr>
+ <tr>
+ <td style="text-align: left;" colspan="2">
+ Regression Line
+ <br>
+ y = {{ jsdata.srslope_string }} * x {% if jsdata.srintercept < 0 %}- {{'%0.3f' % (jsdata.srintercept * -1)}}{% else %}+ {{'%0.3f' % jsdata.srintercept}}{% endif %}
+ </td>
+ </tr>
+ </tbody>
+ </table>
</div>
- {% endif %}
- </div>
- <div style="float: left; margin-top: 30px;">
- <table class="table table-hover table-striped table-bordered" style="width: 80%; margin-left: 60px; text-align: right;">
- <thead>
- <tr><th style="text-align: right;">Statistic</th><th style="text-align: right;">Value</th></tr>
- </thead>
- <tbody>
- <tr>
- <td>Number</td>
- <td>{{jsdata.num_overlap}}</td>
- </tr>
- <tr>
- <td>Slope</td>
- <td>{{ jsdata.srslope_string }}</td>
- </tr>
- <tr>
- <td>Intercept</td>
- <td>{{'%0.3f' % jsdata.srintercept}}</td>
- </tr>
- <tr>
- <td>r value</td>
- <td>{{'%0.3f' % jsdata.srr_value}}</td>
- </tr>
- <tr>
- <td>P value</td>
- <td>{% if jsdata.srp_value < 0.001 %}{{'%0.3e' % jsdata.srp_value}}{% else %}{{'%0.3f' % jsdata.srp_value}}{% endif %}</td>
- </tr>
- <tr>
- <td style="text-align: left;" colspan="2">
- Regression Line
- <br>
- y = {{ jsdata.srslope_string }} * x {% if jsdata.srintercept < 0 %}- {{'%0.3f' % (jsdata.srintercept * -1)}}{% else %}+ {{'%0.3f' % jsdata.srintercept}}{% endif %}
- </td>
- </tr>
- </tbody>
- </table>
- </div>
</div>
- </div>
-
+ </div>
+ {% endif %}
</div>
{% endblock %}
diff --git a/gn2/wqflask/templates/gn_editor.html b/gn2/wqflask/templates/gn_editor.html
index d89aaf0a..14a41caa 100644
--- a/gn2/wqflask/templates/gn_editor.html
+++ b/gn2/wqflask/templates/gn_editor.html
@@ -29,10 +29,10 @@
hx-get="/editor/commit"
hx-target="#output"
hx-trigger="click"
- hx-swap="innerHTML">Commit</a>
+ hx-swap="innerHTML">Save</a>
</li>
<li>
- <a hx-trigger="click" id="diffBtn" hx-swap="innerHTML">Diff</a>
+ <a hx-trigger="click" id="diffBtn" hx-swap="innerHTML">Show Diff</a>
</li>
<li>
<a href="#"
@@ -228,6 +228,9 @@
editor.container.style.resize = "horizontal";
editor.getSession().on("change", function(e){
updatePreview()
+ })
+ editor.on("click", function(e){
+ updatePreview()
})
editor.setValue(data, -1);
}
diff --git a/gn2/wqflask/templates/gn_editor_commit.html b/gn2/wqflask/templates/gn_editor_commit.html
index 2eb3e60c..6006f6d2 100644
--- a/gn2/wqflask/templates/gn_editor_commit.html
+++ b/gn2/wqflask/templates/gn_editor_commit.html
@@ -3,7 +3,7 @@
<div>
<div>
<h2>
- <i>Commit your Changes</i>
+ <i>Save your Changes</i>
</h2>
</div>
</div>
@@ -11,7 +11,7 @@
<div>
<div class="row">
<label class="col-sm-8" for="message">
- <i>*Commit Message*</i>
+ <i>*Describe edit*</i>
</label>
</div>
<br>
@@ -24,9 +24,9 @@
<br>
<div class="row">
<button id="btn-commit"
- class="btn btn-primary col-lg-3 col-lg-offset-1 col-sm-4 col-sm-offset-1">Commit</button>
+ class="btn btn-primary col-lg-3 col-lg-offset-1 col-sm-4 col-sm-offset-1">Save</button>
<button id="btn-diff"
- class="btn col-lg-3 col-lg-offset-1 col-sm-4 col-sm-offset-1">Show Diff</button>
+ class="btn col-lg-3 col-lg-offset-1 col-sm-4 col-sm-offset-1">Show Edit Diff</button>
</div>
<br>
<div id="diff_page"></div>
diff --git a/gn2/wqflask/templates/gn_editor_results_page.html b/gn2/wqflask/templates/gn_editor_results_page.html
index 6eaeb941..4f169a66 100644
--- a/gn2/wqflask/templates/gn_editor_results_page.html
+++ b/gn2/wqflask/templates/gn_editor_results_page.html
@@ -1,13 +1,5 @@
<section classs="row commit-content" style="padding-top:25px">
<div class="col-sm-10 col-sm-offset-1">
- <div>
- <div>
- <h2>
- <i>Results status - {{ status }}</i>
- </h2>
- </div>
- </div>
- <br>
{% if error %}
<h1>
Error-type: <mark style="font-family: 'Linux Libertine','Georgia','Times','Source Serif Pro',serif"><b><i>{{ error }}</i></b></mark>
@@ -18,18 +10,27 @@
</h3>
{% else %}
<div>
+ <div class="lead">
+ <h3>
+ Save results message:
+ <mark style="font-family: 'Linux Libertine','Georgia','Times','Source Serif Pro',serif"><b>
+ {% if status == '200' %}
+ <i>Everything is up to date; No changes to Save</i>
+ {% elif status == '201' %}
+ <i> Saved your changes Successfully </i>
+ {% else %}
+ {{ message }}
+ {% endif %}
+ </b></mark>
+ </h3>
+ </div>
+ <br />
<h3>
- New Commit Sha: <span class="lead">
+ New Edit Sha: <span class="lead">
<mark style="font-family: 'Linux Libertine','Georgia','Times','Source Serif Pro',serif"><b><i>{{ commit_sha }}</i></b></mark>
</span>
</h3>
<br />
- <div class="lead">
- <h3>
- Commit Message:
- <mark style="font-family: 'Linux Libertine','Georgia','Times','Source Serif Pro',serif"><b><i>{{ message }}</i></b></mark>
- </h3>
- </div>
</div>
{% endif %}
<br>
diff --git a/gn2/wqflask/templates/gsearch_gene.html b/gn2/wqflask/templates/gsearch_gene.html
index f1ca998b..13b56b42 100644
--- a/gn2/wqflask/templates/gsearch_gene.html
+++ b/gn2/wqflask/templates/gsearch_gene.html
@@ -10,7 +10,7 @@
<div class="container">
- <div class="row">
+ <div>
<h3>GN searched for the term(s) <b>"{{ terms }}"</b> in 754 datasets and 39,765,944 traits across 10 species<br/>
and found <b>{{ trait_count }}</b> results that match your query.<br/>
</h3>
@@ -18,7 +18,7 @@
{% if do_ai_search %}
- <div class="row" id="ai_result">
+ <div class="row" id="ai_result_info">
<div class="text-center" id="spinner">
<i class="fa fa-spinner fa-spin fa-3x"></i>
</div>
@@ -287,13 +287,29 @@
{% if do_ai_search %}
<script type='text/javascript'>
function ai_content_div(search_term, search_result, search_uri) {
+ let header_length = 40;
+ let max_header_length = 180;
+ while (header_length <= search_result.length) {
+ let next_dot = search_result.indexOf(".", header_length+1);
+
+ if (next_dot > max_header_length) {
+ let next_comma = search_result.indexOf(",", header_length+1);
+ if (next_comma > max_header_length) {
+ break;
+ }
+ header_length = next_comma;
+ } else {
+ header_length = next_dot;
+ }
+ }
+ let header = search_result.slice(0, header_length+1);
return `
<div class="col-sm-6">
<div class="panel panel-info">
<div class="panel-heading" role="tab" id="ai_heading">
<h4 class="panel-title">
- <a class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#ai_results" aria-expanded="false" aria-controls="ai_results">
- AI Search: ${search_term} (Click for more details)
+ <a id="panel-title-content" class="collapsed" role="button" data-toggle="collapse" data-parent="#accordion" href="#ai_results" aria-expanded="false" aria-controls="ai_results">
+ ${header} ... (Click for more details)
</a>
</h4>
</div>
@@ -308,6 +324,20 @@
`
}
+ $('#ai_result_info').on('hidden.bs.collapse', function () {
+ let original_text = $("#panel-title-content").text();
+ let new_text = original_text.replace("(Click to fold)", "(Click for more details)");
+ $("#panel-title-content").text(new_text);
+ })
+
+ $('#ai_result_info').on('shown.bs.collapse', function () {
+ let original_text = $("#panel-title-content").text();
+ let new_text = original_text.replace("(Click for more details)", "(Click to fold)");
+ $("#panel-title-content").text(new_text);
+ })
+
+
+
$(document).ready( function () {
$.ajax({url: "gnqna",
contentType: "application/json",
@@ -317,7 +347,7 @@
},
success: function(result) {
let ai_div = ai_content_div(result.search_term, result.search_result, result.search_url)
- $("#ai_result").append(ai_div);
+ $("#ai_result_info").append(ai_div);
},
complete: function() {
$("#spinner").hide();
diff --git a/gn2/wqflask/templates/mapping_results.html b/gn2/wqflask/templates/mapping_results.html
index 2fed79c1..c27de85e 100644
--- a/gn2/wqflask/templates/mapping_results.html
+++ b/gn2/wqflask/templates/mapping_results.html
@@ -116,7 +116,7 @@
<label class="radio-inline">
<input type="radio" name="LRSCheck" value="{% if LRS_LOD == "-logP" %}-logP{% else %}LOD{% endif %}" {% if LRS_LOD == "LOD" or LRS_LOD == "-logP" %}checked{% endif %}>{% if LRS_LOD == "-logP" %}-logP{% else %}LOD{% endif %}
</label>
- <a href="https://genenetwork.org/glossary.html#LOD" target="_blank">
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#LOD" target="_blank">
<sup style="color:#f00"> ?</sup>
</a>
</td>
@@ -158,27 +158,27 @@
<div class="col-xs-4" style="padding: 0px;">
{% if (mapping_method == "reaper" or mapping_method == "rqtl_geno") and nperm > 0 %}
<input type="checkbox" name="permCheck" class="checkbox" style="display: inline; margin-top: 0px;" {% if permChecked|upper == "ON" %}value="ON" checked{% endif %}> <span style="font-size: 12px;">Permutation Test
- <a href="http://genenetwork.org/glossary.html#Permutation" target="_blank">
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#Permutation" target="_blank">
<sup style="color:#f00"> ?</sup>
</a>
<br>
{% endif %}
{% if mapping_method == "reaper" and nboot > 0 %}
<input type="checkbox" name="bootCheck" class="checkbox" style="display: inline; margin-top: 0px;" {% if bootChecked|upper == "ON" %}value="ON" checked{% endif %}> <span style="font-size: 12px;">Bootstrap Test
- <a href="http://genenetwork.org/glossary.html#bootstrap" target="_blank">
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#bootstrap" target="_blank">
<sup style="color:#f00"> ?</sup>
</a>
<br>
{% endif %}
{% if mapping_method == "reaper" %}
<input type="checkbox" name="additiveCheck" class="checkbox" style="display: inline; margin-top: 0px;" {% if additiveChecked|upper == "ON" %}value="ON" checked{% endif %}> <span style="font-size: 12px;">Allele Effects
- <a href="http://genenetwork.org/glossary.html#additive" target="_blank">
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#additive" target="_blank">
<sup style="color:#f00"> ?</sup>
</a>
<br>
{% endif %}
<input type="checkbox" name="showSNP" class="checkbox" style="display: inline; margin-top: 0px;" {% if SNPChecked|upper == "ON" %}value="ON" checked{% endif %}> <span style="font-size: 12px;">SNP Track </span>
- <a href="http://genenetwork.org/glossary.html#snpSeismograph" target="_blank">
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#snpSeismograph" target="_blank">
<sup style="color:#f00"> ?</sup>
</a>
<span style="color:red;">*</span>
@@ -416,7 +416,7 @@
'data': null,
'render': function(data, type, row, meta) {
{% if geno_db_exists == "True" %}
- return '<a target"_blank" href="corr_scatter_plot?method=pearson&dataset_1={{ dataset.group.name }}Geno&dataset_2={{ dataset.name }}&trait_1=' + data.name + '&trait_2={{ this_trait.name }}&cached_trait=trait_2&dataid={{ dataid }}">' + String(parseFloat(data.additive).toFixed(3)) + '</a>'
+ return '<a target"_blank" href="corr_scatter_plot?method=pearson&dataset_1={{ dataset.group.name }}Geno&dataset_2={{ dataset.name }}&trait_1=' + data.name + '&trait_2={{ this_trait.name }}&cached_trait=trait_2&dataid={{ dataid }}&effect=True">' + String(parseFloat(data.additive).toFixed(3)) + '</a>'
{% else %}
return String(parseFloat(data.additive).toFixed(3))
{% endif %}
diff --git a/gn2/wqflask/templates/show_trait_calculate_correlations.html b/gn2/wqflask/templates/show_trait_calculate_correlations.html
index d2e6624e..2f78a095 100644
--- a/gn2/wqflask/templates/show_trait_calculate_correlations.html
+++ b/gn2/wqflask/templates/show_trait_calculate_correlations.html
@@ -148,7 +148,7 @@
Semantic Gene Organizer</span>
and human, rat, and mouse data from PubMed.
Values are ranked by Lit r, but Sample r and Tissue r are also displayed.<br>
- <a href="http://genenetwork.org/glossary.html#Literature">More on using Lit r</a></dd>
+ <a href="{{ url_for('gn_docs_blueprint.glossary') }}#Literature">More on using Lit r</a></dd>
<dt class="map-method-text">Tissue Correlation</dt>
<dd>The <a href="http://genenetwork.org/webqtl/main.py?FormID=tissueCorrelation">Tissue Correlation</a>
(Tissue r)
diff --git a/gn2/wqflask/templates/show_trait_statistics.html b/gn2/wqflask/templates/show_trait_statistics.html
index 9ee0de5c..d16835e7 100644
--- a/gn2/wqflask/templates/show_trait_statistics.html
+++ b/gn2/wqflask/templates/show_trait_statistics.html
@@ -87,7 +87,7 @@
<br>
<div>
More about <a href="http://en.wikipedia.org/wiki/Normal_probability_plot">Normal Probability Plots</a> and more
- about interpreting these plots from the <a href="http://genenetwork.org/glossary.html#normal_probability">glossary</a>
+ about interpreting these plots from the <a href="{{ url_for('gn_docs_blueprint.glossary') }}#normal_probability">glossary</a>
</div>
</div>
</div>
diff --git a/gn2/wqflask/views.py b/gn2/wqflask/views.py
index 29df7596..d9c35115 100644
--- a/gn2/wqflask/views.py
+++ b/gn2/wqflask/views.py
@@ -248,9 +248,7 @@ def gsearchact():
search_type = request.args["type"]
is_user_logged_in = session_info().get("user", {}).get("logged_in", False)
- do_ai_search = False
- if current_app.config.get("AI_SEARCH_ENABLED") and is_user_logged_in:
- do_ai_search = True
+ do_ai_search = current_app.config.get("AI_SEARCH_ENABLED") and is_user_logged_in
if search_type == "gene":
return render_template("gsearch_gene.html", **result, do_ai_search=do_ai_search, result=result)
elif search_type == "phenotype":