Skip to content
This repository has been archived by the owner on Jan 8, 2019. It is now read-only.

Commit

Permalink
Reload field graphs status if page not refreshed
Browse files Browse the repository at this point in the history
The stores and javascript files are not reloaded when loading the search
page for a second time, so we need to reset the status of the field
graphs in order to proper render them.
  • Loading branch information
Edmundo Alvarez committed Dec 2, 2015
1 parent 9d12829 commit 90fabd8
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 11 deletions.
3 changes: 3 additions & 0 deletions src/components/field-analyzers/FieldGraphs.jsx
Expand Up @@ -34,6 +34,9 @@ const FieldGraphs = React.createClass({
}
};
},
componentWillUnmount() {
FieldGraphsStore.resetStore();
},
addFieldGraph(field) {
const streamId = this.props.searchInStream ? this.props.searchInStream.id : undefined;
FieldGraphsStore.newFieldGraph(field, {interval: this.props.resolution, streamid: streamId});
Expand Down
11 changes: 6 additions & 5 deletions src/legacy/analyzers/fieldcharts.js
Expand Up @@ -34,7 +34,11 @@ export function generateId() {
export const FieldChart = {
fieldGraphs: {},
GRAPH_HEIGHT: 120,
PALETTE: new Rickshaw.Color.Palette({scheme: 'colorwheel'}),
palette: new Rickshaw.Color.Palette({scheme: 'colorwheel'}),

reload() {
this.palette = new Rickshaw.Color.Palette({scheme: 'colorwheel'});
},

_getDefaultOptions(opts) {
var searchParams = {};
Expand Down Expand Up @@ -398,12 +402,9 @@ export const FieldChart = {
var draggedChart = this.fieldGraphs[draggedId];

var targetElem = $('.field-graph-container[data-chart-id="' + targetId + '"]');
var draggedElem = $('.field-graph-container[data-chart-id="' + draggedId + '"]');

var draggedOpts = JSON.parse(draggedElem.attr("data-lines"));

for (var i = 0; i < draggedChart.series.length; i++) {
var lineColor = this.PALETTE.color();
var lineColor = this.palette.color();
var series = draggedChart.series[i];
var query = series.gl2_query;

Expand Down
17 changes: 11 additions & 6 deletions src/stores/field-analyzers/FieldGraphsStore.ts
Expand Up @@ -62,12 +62,7 @@ class FieldGraphsStore {
onFieldGraphsMerged: (targetGraphId: Object)=>void;

constructor() {
this.renderedGraphs = Immutable.Set<string>();
this._fieldGraphs = Immutable.Map<string, Object>(Store.get("pinned-field-charts"));
this._stackedGraphs = Immutable.fromJS(Store.get("stacked-graphs") || {}, (key, value) => {
var isIndexed = Immutable.Iterable.isIndexed(value);
return isIndexed ? value.toSet() : value.toMap();
});
this.resetStore();

$(document).on('created.graylog.fieldgraph', (event, data) => {
this.saveGraph(data.graphOptions['chartid'], data.graphOptions);
Expand All @@ -92,6 +87,16 @@ class FieldGraphsStore {
});
}

resetStore() {
this.renderedGraphs = Immutable.Set<string>();
this._fieldGraphs = Immutable.Map<string, Object>(Store.get("pinned-field-charts"));
this._stackedGraphs = Immutable.fromJS(Store.get("stacked-graphs") || {}, (key, value) => {
var isIndexed = Immutable.Iterable.isIndexed(value);
return isIndexed ? value.toSet() : value.toMap();
});
FieldChart.reload();
}

get fieldGraphs(): Immutable.Map<string, Object> {
return this._fieldGraphs;
}
Expand Down

0 comments on commit 90fabd8

Please sign in to comment.