Esempio n. 1
0
function set_query(query) {
  _query_id = query.hashid;
  _query_details = query;

  if (query.results) {
    ResultsStore.add_results_data(query.results.query);
    ResultsStore.add_compare_data(query.results.compare);
  }

  ResultsStore.identify({ client_id: query.clientid, server_id: query.hashid });

  function replace_id_in_params() {
    var uri = window.location.pathname + window.location.search;
    var params = window.location.search.substr(1).split('&');

    params = _.reject(params, function(r) {
      var vals = r.split('=');

      return vals[0] === 'h';
    });

    params.push('h=' + _query_id);

    var param_str = params.join('&');

    var url = window.location.pathname + '?' + param_str;
    SF.replace(url, true);
  }

  replace_id_in_params();


}
Esempio n. 2
0
function handle_compare_results(data) {
  if (!data) {
    return;
  }

  QS.got_compare();

  if (data.error) {
    views.insert_error(data, data.error);
  } else {
    ResultsStore.add_compare_data(data);
    views.insert_comparison(data.parsed.view, data);
  }

}
Esempio n. 3
0
  _.each(queries, function(data) {
    var view_data = views.VIEWS[data.parsed.view];

    ResultsStore.identify({ client_id: data.clientid, server_id: data.hashid });
    ResultsStore.set_timestamp(data.hashid, data.updated || data.created);

    if (data.results) {
      if (data.results.query) {
        ResultsStore.add_results_data(data.results.query);
      }

      if (data.results.compare) {
        ResultsStore.add_compare_data(data.results.compare);
      }
    }

    ResultsStore.handle_ack({
      input: data.input,
      id: data.hashid
    });

    var icon = "noun/view.svg";
    if (view_data) {
      icon = view_data.icon || "noun/view.svg";
    }

    if (table !== data.parsed.table) {
      return;
    }

    // Psas in the query from above for later re-usage
    $C("query_tile", { query: data, icon: icon }, function(tile) {
      tile.$el.hide();
      if (in_order) {
        tile.appendTo(container);
      } else {
        tile.prependTo(container);
      }
      tile.$el.fadeIn(1000);
    });
  });