Skip to content

Commit

Permalink
Merge pull request #45 from articlemetrics/crossref
Browse files Browse the repository at this point in the history
Adds ability to search with CrossRef's API
  • Loading branch information
jure committed Oct 7, 2014
2 parents 3555673 + a026f44 commit 41a0e7c
Show file tree
Hide file tree
Showing 85 changed files with 2,342 additions and 1,873 deletions.
4 changes: 3 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ rvm:

env:
matrix:
- DB=mysql
- DB=mysql MODE=plos SEARCH=plos
- DB=mysql MODE=default SEARCH=crossref
- DB=mysql MODE=default SEARCH=plos
# - DB=postgresql
global:
secure: "agQGmJu7sSCjuBYu/Sbo4a3WoXA2C/BVPoIUneSR2+soFPeyrAFoHOa/EflxIt+uUEApXiodG+u2twFBf07yMVVojluzmONricmjh563gu6rKR9vhE5ZTUYIo3IHdi/w1OTd28uA0T0RpFcxLRbVg2lm5juxE+GjI+QmeROr4lY="
Expand Down
7 changes: 5 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ gem 'jquery-ui-rails', '~> 5.0.0'
gem 'slim-rails'
gem 'exception_notification', '~> 4.0.1'
gem 'httparty', '~> 0.13.1'
gem 'faraday'
gem 'faraday_middleware'

group :development do
gem 'rubocop'
Expand All @@ -25,11 +27,12 @@ group :development do
end

group :test do
gem 'capybara-screenshot'
gem "simplecov", require: false
gem 'timecop'
gem 'poltergeist'
gem 'capybara'
gem "webmock", "~> 1.17.2"
gem "minitest", "~> 4.4.0"
gem "webmock"
gem "codeclimate-test-reporter", require: false
end

Expand Down
26 changes: 20 additions & 6 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,10 @@ GEM
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (~> 2.0)
capybara-screenshot (1.0.2)
capybara (>= 1.0, < 3)
colored
launchy
cliver (0.3.2)
codeclimate-test-reporter (0.4.0)
simplecov (>= 0.7.1, < 1.0.0)
Expand All @@ -78,6 +82,7 @@ GEM
coffee-script-source
execjs
coffee-script-source (1.8.0)
colored (1.2)
colorize (0.7.3)
countries (0.9.3)
currencies (~> 0.4.2)
Expand All @@ -93,6 +98,10 @@ GEM
actionmailer (>= 3.0.4)
activesupport (>= 3.0.4)
execjs (2.2.1)
faraday (0.9.0)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.9.1)
faraday (>= 0.7.4, < 0.10)
fastercsv (1.5.5)
haml (4.0.5)
tilt
Expand All @@ -109,16 +118,18 @@ GEM
jquery-ui-rails (5.0.0)
railties (>= 3.2.16)
json (1.8.1)
launchy (2.4.2)
addressable (~> 2.3)
libv8 (3.16.14.3)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
method_source (0.8.2)
mime-types (1.25.1)
mini_portile (0.6.0)
minitest (4.4.0)
multi_json (1.10.1)
multi_xml (0.5.5)
multipart-post (2.0.0)
mysql2 (0.3.16)
net-scp (1.2.1)
net-ssh (>= 2.6.5)
Expand Down Expand Up @@ -192,7 +203,7 @@ GEM
sexp_processor (~> 4.0)
ruby_parser (3.5.0)
sexp_processor (~> 4.1)
safe_yaml (1.0.3)
safe_yaml (1.0.4)
sass (3.4.2)
sass-rails (3.2.6)
railties (~> 3.2.0)
Expand Down Expand Up @@ -237,8 +248,8 @@ GEM
uglifier (2.4.0)
execjs (>= 0.3.0)
json (>= 1.8.0)
webmock (1.17.4)
addressable (>= 2.2.7)
webmock (1.19.0)
addressable (>= 2.3.6)
crack (>= 0.3.2)
websocket-driver (0.3.4)
xpath (2.0.0)
Expand All @@ -254,24 +265,27 @@ DEPENDENCIES
capistrano-bundler (~> 1.1.2)
capistrano-rails (~> 1.1.1)
capybara
capybara-screenshot
codeclimate-test-reporter
coffee-rails (~> 3.2.2)
countries (~> 0.9.2)
dalli (~> 2.7.0)
exception_notification (~> 4.0.1)
faraday
faraday_middleware
httparty (~> 0.13.1)
jquery-rails (~> 3.1.0)
jquery-ui-rails (~> 5.0.0)
minitest (~> 4.4.0)
mysql2 (~> 0.3.13)
poltergeist
pry-rails
rails (= 3.2.19)
rspec-rails (~> 2.14.0)
rubocop
sass-rails (~> 3.2.5)
simplecov
slim-rails
therubyracer (~> 0.12.0)
timecop
uglifier (~> 2.4.0)
webmock (~> 1.17.2)
webmock
2 changes: 1 addition & 1 deletion app/assets/javascripts/application.js
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@
//= require jquery.placeholder
//= require jquery.uniform
//= require script
//= require advancedSearch
//= require advancedSearch
46 changes: 27 additions & 19 deletions app/assets/javascripts/charts_impl.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,19 +41,19 @@ function getBubbleChartOptions() {

function drawArticleUsageCitationsAge() {
var chart = new google.visualization.BubbleChart(document.getElementById('article_usage_and_citations_age_div'));
var data = google.visualization.arrayToDataTable(getArticleUsageCitationsAgeData());
var data = google.visualization.arrayToDataTable(getArticleUsageCitationsAge());
chart.draw(data, getBubbleChartOptions());
}

function drawArticleUsageMendeleyAge() {
var chart = new google.visualization.BubbleChart(document.getElementById('article_usage_and_mendeley_age_div'));
var data = google.visualization.arrayToDataTable(getArticleUsageMendeleyAgeData());
var data = google.visualization.arrayToDataTable(getArticleUsageMendeleyAge());
chart.draw(data, getBubbleChartOptions());
}

function drawArticleUsageCitationSubjectArea() {
var chart = new google.visualization.TreeMap(document.getElementById('article_subject_div'));
var data = google.visualization.arrayToDataTable(getArticleUsageCitationSubjectAreaData());
var data = google.visualization.arrayToDataTable(getArticleUsageCitationSubjectArea());

var options = {
minColor: '#000000',
Expand All @@ -72,9 +72,10 @@ function drawArticleUsageCitationSubjectArea() {
}

function drawArticleLocation() {
var raw_data = getArticleLocationData();
var raw_data = getArticleLocation();
var data = new google.visualization.DataTable();


// Determine if we're in lat/lng mode, or just getting addresses passed to us.
if (raw_data[0].length == 6) {
data.addColumn('number', 'latitude', 'latitude');
Expand Down Expand Up @@ -116,7 +117,7 @@ function drawArticleLocation() {

function drawArticleUsageAge() {

var chartData = getArticleUsageData();
var chartData = getArticleUsageAge();
if (chartData.length > 0) {
var data = new google.visualization.DataTable();
data.addColumn('number', 'Months');
Expand Down Expand Up @@ -149,7 +150,7 @@ function drawArticleUsageAge() {

function drawArticleCitationAge() {

var chartData = getArticleCitationData();
var chartData = getArticleCitationAge();
if (chartData.length > 0) {
var data = new google.visualization.DataTable();
data.addColumn('number', 'Months');
Expand Down Expand Up @@ -182,10 +183,10 @@ function drawArticleCitationAge() {

function drawArticleSocialScatter() {

var chartData = getSocialScatterData();
var chartData = getArticleSocialScatter();
if (chartData.length > 0) {

var header = getSocialScatterHeader();
var header = getArticleSocialScatterHeader();
var data = new google.visualization.DataTable();

data.addColumn('number', 'Months');
Expand Down Expand Up @@ -217,8 +218,8 @@ function drawArticleSocialScatter() {
}


function drawArticleMendeleyData() {
var chartData = getMendeleyReaderData();
function drawArticleMendeley() {
var chartData = getArticleMendeley();
if (chartData.length > 0) {
var data = google.visualization.arrayToDataTable(chartData);
var options = {};
Expand All @@ -232,22 +233,29 @@ function drawArticleMendeleyData() {
function drawReportGraphs() {
if (haveDataToDrawViz()) {
if (drawVizForOne()) {
drawArticleUsageAge();
drawArticleCitationAge();
drawArticleSocialScatter();
drawArticleMendeleyData();
checkDataAndDraw(["ArticleUsageAge", "ArticleCitationAge",
"ArticleSocialScatter", "ArticleMendeley"])

} else {
drawArticleUsageCitationsAge();
drawArticleUsageMendeleyAge();
drawArticleUsageCitationSubjectArea();
drawArticleLocation();
checkDataAndDraw(["ArticleUsageCitationsAge",
"ArticleUsageMendeleyAge",
"ArticleUsageCitationSubjectArea",
"ArticleLocation"])
}

} else {
$("#error-message-div").append("<div>The metrics for one or more of the articles requested are not available at this time. Please check back later.</div>")
.show();
}
}

function checkDataAndDraw(visualizations) {
visualizations.forEach(function (visualization) {
dataFn = "get" + visualization;
data = window[dataFn]();
if(data[0] != null) {
window["draw" + visualization]();
}
});
}

google.setOnLoadCallback(drawReportGraphs);
Loading

0 comments on commit 41a0e7c

Please sign in to comment.