diff --git a/devtracker.rb b/devtracker.rb index e1ed26a0..976d734c 100644 --- a/devtracker.rb +++ b/devtracker.rb @@ -147,7 +147,8 @@ actualStartDate: projectData['actualStartDate'], plannedEndDate: projectData['plannedEndDate'], documentTypes: projectData['document_types'], - implementingOrgTypes: projectData['implementingOrg_types'] + implementingOrgTypes: projectData['implementingOrg_types'], + projectCount: projectData['projects']['count'] } end @@ -197,7 +198,8 @@ actualStartDate: getRegionProjects['actualStartDate'], plannedEndDate: getRegionProjects['plannedEndDate'], documentTypes: getRegionProjects['document_types'], - implementingOrgTypes: getRegionProjects['implementingOrg_types'] + implementingOrgTypes: getRegionProjects['implementingOrg_types'], + projectCount: getRegionProjects['projects']['count'] } end @@ -231,7 +233,8 @@ actualStartDate: getRegionProjects['actualStartDate'], plannedEndDate: getRegionProjects['plannedEndDate'], documentTypes: getRegionProjects['document_types'], - implementingOrgTypes: getRegionProjects['implementingOrg_types'] + implementingOrgTypes: getRegionProjects['implementingOrg_types'], + projectCount: getRegionProjects['projects']['count'] } end @@ -301,7 +304,8 @@ actualStartDate: getRegionProjects['actualStartDate'], plannedEndDate: getRegionProjects['plannedEndDate'], documentTypes: getRegionProjects['document_types'], - implementingOrgTypes: getRegionProjects['implementingOrg_types'] + implementingOrgTypes: getRegionProjects['implementingOrg_types'], + projectCount: getRegionProjects['projects']['count'] } end diff --git a/helpers/country_helpers.rb b/helpers/country_helpers.rb index 294df840..035f8f4d 100755 --- a/helpers/country_helpers.rb +++ b/helpers/country_helpers.rb @@ -105,7 +105,7 @@ def get_country_details(countryCode) currentTotalCountryBudget= get_current_total_budget(RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{firstDayOfFinYear}&budget_period_end=#{lastDayOfFinYear}&group_by=recipient_country&aggregations=budget&recipient_country=#{countryCode}") currentTotalDFIDBudget = get_current_dfid_total_budget(RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{firstDayOfFinYear}&budget_period_end=#{lastDayOfFinYear}&group_by=reporting_organisation&aggregations=budget") - totalProjectsDetails = get_total_project(RestClient.get settings.oipa_api_url + "activities/?reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&format=json&fields=activity_status&page_size=250") + totalProjectsDetails = get_total_project(RestClient.get settings.oipa_api_url + "activities/?reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&format=json&fields=activity_status&page_size=250&activity_status=2") totalActiveProjects = totalProjectsDetails['results'].select {|status| status['activity_status']['code'] =="2" }.length if countryOperationalBudget.length > 0 then @@ -291,9 +291,12 @@ def get_country_all_projects_data(countryCode) allProjectsData['countryAllProjectFilters'] = get_static_filter_list() allProjectsData['country'] = get_country_code_name(countryCode) allProjectsData['results'] = get_country_results(countryCode) - oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_recipient_country=#{countryCode}" + #oipa_project_list_count = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_recipient_country=#{countryCode}" + #allProjectsData['projectsCount']= JSON.parse(oipa_project_list_count) + + oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=2&ordering=-activity_plus_child_budget_value&related_activity_recipient_country=#{countryCode}" allProjectsData['projects']= JSON.parse(oipa_project_list) - sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}" + sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}&activity_status=2" allProjectsData['highLevelSectorList'] = high_level_sector_list_filter(sectorValuesJSON) #projects = projects_list['results'] allProjectsData['project_budget_higher_bound'] = 0 @@ -302,7 +305,7 @@ def get_country_all_projects_data(countryCode) unless allProjectsData['projects']['results'][0].nil? allProjectsData['project_budget_higher_bound'] = allProjectsData['projects']['results'][0]['aggregations']['activity_children']['budget_value'] end - allProjectsData['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=actual_start_date&start_date_gte=1900-01-02" + allProjectsData['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=actual_start_date&start_date_gte=1900-01-02&activity_status=2" allProjectsData['actualStartDate'] = JSON.parse(allProjectsData['actualStartDate']) tempStartDate = allProjectsData['actualStartDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '2'}.first if (tempStartDate.nil?) @@ -314,20 +317,20 @@ def get_country_all_projects_data(countryCode) #unless allProjectsData['actualStartDate']['results'][0].nil? # allProjectsData['actualStartDate'] = allProjectsData['actualStartDate']['results'][0]['activity_dates'][1]['iso_date'] #end - allProjectsData['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=-planned_end_date&end_date_isnull=False" + allProjectsData['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=-planned_end_date&end_date_isnull=False&activity_status=2" allProjectsData['plannedEndDate'] = JSON.parse(allProjectsData['plannedEndDate']) allProjectsData['plannedEndDate'] = allProjectsData['plannedEndDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '3'}.first allProjectsData['plannedEndDate'] = allProjectsData['plannedEndDate']['iso_date'] #unless allProjectsData['plannedEndDate']['results'][0].nil? # allProjectsData['plannedEndDate'] = allProjectsData['plannedEndDate']['results'][0]['activity_dates'][2]['iso_date'] #end - oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}" + oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}&activity_status=2" document_type_list = JSON.parse(oipa_document_type_list) allProjectsData['document_types'] = document_type_list['results'] #Implementing org type filters participatingOrgInfo = JSON.parse(File.read('data/participatingOrgList.json')) - oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}&hierarchy=1" + oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}&hierarchy=1&activity_status=2" implementingOrg_type_list = JSON.parse(oipa_implementingOrg_type_list) allProjectsData['implementingOrg_types'] = implementingOrg_type_list['results'] allProjectsData['implementingOrg_types'].each do |implementingOrgs| @@ -349,7 +352,7 @@ def get_country_all_projects_data(countryCode) def get_country_all_projects_data_para(countryCode) allProjectsData = {} - apiLinks = [{"title"=>"oipa_project_list", "link"=>"activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_recipient_country=#{countryCode}"},{"title"=>"sectorValuesJSON", "link"=>"activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}"},{"title"=>"actualStartDate", "link"=>"activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=actual_start_date"},{"title"=>"plannedEndDate", "link"=>"activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=-planned_end_date"}] + apiLinks = [{"title"=>"oipa_project_list", "link"=>"activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=2&ordering=-activity_plus_child_budget_value&related_activity_recipient_country=#{countryCode}"},{"title"=>"sectorValuesJSON", "link"=>"activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_country=#{countryCode}"},{"title"=>"actualStartDate", "link"=>"activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=actual_start_date"},{"title"=>"plannedEndDate", "link"=>"activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_country=#{countryCode}&ordering=-planned_end_date"}] returnedAPIData = "" EM.synchrony do concurrency = 4 diff --git a/helpers/region_helpers.rb b/helpers/region_helpers.rb index 91e86740..fcbc7f31 100644 --- a/helpers/region_helpers.rb +++ b/helpers/region_helpers.rb @@ -25,9 +25,9 @@ def get_region_details(regionCode) currentTotalRegionBudget= get_current_total_budget(RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{firstDayOfFinYear}&budget_period_end=#{lastDayOfFinYear}&group_by=recipient_region&aggregations=budget&recipient_region=#{regionCode}") currentTotalDFIDBudget = get_current_dfid_total_budget(RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{firstDayOfFinYear}&budget_period_end=#{lastDayOfFinYear}&group_by=reporting_organisation&aggregations=budget") - totalProjectsDetails = get_total_project(RestClient.get settings.oipa_api_url + "activities/?reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{regionCode}&format=json&fields=activity_status&page_size=2500") + totalProjectsDetails = get_total_project(RestClient.get settings.oipa_api_url + "activities/?reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{regionCode}&format=json&fields=activity_status&page_size=2500&activity_status=2") totalActiveProjects = totalProjectsDetails['results'].select {|status| status['activity_status']['code'] =="2" }.length - + totalActiveProjects = totalProjectsDetails['results'].length if currentTotalRegionBudget['count'] > 0 then if currentTotalRegionBudget['results'][0]['budget'].nil? then @@ -106,10 +106,15 @@ def dfid_regional_projects_data(regionType) #Here variable n = related_activity_recipient_region def get_region_projects(n) - oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=aggregations,descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_recipient_region=#{n}" + oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=aggregations,descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&activity_status=2&ordering=-activity_plus_child_budget_value&related_activity_recipient_region=#{n}" projects= JSON.parse(oipa_project_list) + + oipa_project_list_count = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=aggregations,descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_recipient_region=#{n}" + projects_count= JSON.parse(oipa_project_list_count) + results = {} - sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}" + results['projectsCount'] = projects_count + sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}&activity_status=2" results['highLevelSectorList'] = high_level_sector_list_filter(sectorValuesJSON) results['project_budget_higher_bound'] = 0 results['actualStartDate'] = '1990-01-01T00:00:00' @@ -117,7 +122,7 @@ def get_region_projects(n) unless projects['results'][0].nil? results['project_budget_higher_bound'] = projects['results'][0]['aggregations']['activity_children']['budget_value'] end - results['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{n}&ordering=actual_start_date&start_date_gte=1900-01-02" + results['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{n}&ordering=actual_start_date&start_date_gte=1900-01-02&activity_status=2" results['actualStartDate'] = JSON.parse(results['actualStartDate']) tempStartDate = results['actualStartDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '2'}.first if (tempStartDate.nil?) @@ -128,7 +133,7 @@ def get_region_projects(n) #unless results['actualStartDate']['results'][0].nil? # results['actualStartDate'] = results['actualStartDate']['results'][0]['activity_dates'][1]['iso_date'] #end - results['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{n}&ordering=-planned_end_date&end_date_isnull=False" + results['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_recipient_region=#{n}&ordering=-planned_end_date&end_date_isnull=False&activity_status=2" results['plannedEndDate'] = JSON.parse(results['plannedEndDate']) results['plannedEndDate'] = results['plannedEndDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '3'}.first results['plannedEndDate'] = results['plannedEndDate']['iso_date'] @@ -142,13 +147,13 @@ def get_region_projects(n) #end results['projects'] = projects #This code is created for generating the left hand side document type filter list - oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}" + oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}&activity_status=2" document_type_list = JSON.parse(oipa_document_type_list) results['document_types'] = document_type_list['results'] #Implementing org type filters participatingOrgInfo = JSON.parse(File.read('data/participatingOrgList.json')) - oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}&hierarchy=1" + oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_recipient_region=#{n}&hierarchy=1&activity_status=2" implementingOrg_type_list = JSON.parse(oipa_implementingOrg_type_list) results['implementingOrg_types'] = implementingOrg_type_list['results'] results['implementingOrg_types'].each do |implementingOrgs| diff --git a/helpers/search_helper.rb b/helpers/search_helper.rb index 1420719d..27ec4dc4 100644 --- a/helpers/search_helper.rb +++ b/helpers/search_helper.rb @@ -74,7 +74,7 @@ def generate_searched_data(query) searchedData['dfidRegionBudgets'][results["code"]][1] = results["name"] # Storing the region name end # This json call is pulling the total budget list based on the 'recipient_countries' string previously created - oipa_total_project_budget = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{settings.current_first_day_of_financial_year}&budget_period_end=#{settings.current_last_day_of_financial_year}&group_by=recipient_country&aggregations=budget&recipient_country="+recipient_countries + oipa_total_project_budget = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{settings.current_first_day_of_financial_year}&budget_period_end=#{settings.current_last_day_of_financial_year}&activity_status=2&group_by=recipient_country&aggregations=budget&recipient_country="+recipient_countries countries_project_budget = JSON.parse_nil(oipa_total_project_budget) # Parsed the returned json data and storing it as a hash # This check is necessary to make sure if there really exists a DFID country list matching with the search query else won't try to # parse and store budget data for the 'Did you mean' country data. @@ -88,7 +88,7 @@ def generate_searched_data(query) end end # This json call is pulling the total budget list based on the 'recipient_regions' string previously created - oipa_selected_regions_budget = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{settings.current_first_day_of_financial_year}&budget_period_end=#{settings.current_last_day_of_financial_year}&group_by=recipient_region&aggregations=budget&recipient_region="+recipient_regions + oipa_selected_regions_budget = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&reporting_organisation=GB-GOV-1&budget_period_start=#{settings.current_first_day_of_financial_year}&budget_period_end=#{settings.current_last_day_of_financial_year}&activity_status=2&group_by=recipient_region&aggregations=budget&recipient_region="+recipient_regions regions_project_budget = JSON.parse_nil(oipa_selected_regions_budget) # Parsed the returned json data and storing it as a hash # This check is necessary to make sure if there really exists a DFID region list matching with the search query else won't try to # parse and store budget data for the 'Did you mean' region data. @@ -104,7 +104,7 @@ def generate_searched_data(query) # Sample Api call - http://&fields=activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation # The following api call returns the projects list based on the search query. The result is returned with data sorted # by budget value so that we can get the budget higher bound from a single api call. - oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&page_size=10&fields=aggregations,descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&q=#{query}&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&reporting_organisation_startswith=GB" + oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&page_size=10&fields=aggregations,descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&q=#{query}&activity_status=2&ordering=-activity_plus_child_budget_value&reporting_organisation_startswith=GB" projects_list= JSON.parse(oipa_project_list) searchedData['projects'] = projects_list['results'] # Storing the returned project list # Checking if the returned result count is 0 or not. If not, then store the budget value of the first item from the returned search data. @@ -115,7 +115,7 @@ def generate_searched_data(query) end searchedData['project_count'] = projects_list['count'] # Stored the project count here # This returns the relevant sector list to populate the left hand side sectors filter. - sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&q=#{query}&reporting_organisation_startswith=GB" + sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&q=#{query}&reporting_organisation_startswith=GB&activity_status=2" searchedData['highLevelSectorList'] = high_level_sector_list_filter( sectorValuesJSON) # Returns the high level sector data with name and codes #puts searchedData['highLevelSectorList'] searchedData['highLevelSectorList'] = searchedData['highLevelSectorList'].sort_by {|key| key} @@ -124,7 +124,7 @@ def generate_searched_data(query) searchedData['actualStartDate'] = '1990-01-01T00:00:00' searchedData['plannedEndDate'] = '2100-01-01T00:00:00' # Pulling json data with an order by on actual start date to get the starting bound for the LHS date range slider. - searchedData['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&hierarchy=1&q=#{query}&ordering=actual_start_date&start_date_gte=1900-01-02" + searchedData['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&hierarchy=1&q=#{query}&ordering=actual_start_date&start_date_gte=1900-01-02&activity_status=2" searchedData['actualStartDate'] = JSON.parse(searchedData['actualStartDate']) if(searchedData['actualStartDate']['count'] > 0) tempStartDate = searchedData['actualStartDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '2'}.first @@ -140,7 +140,7 @@ def generate_searched_data(query) # searchedData['actualStartDate'] = searchedData['actualStartDate']['results'][0]['activity_dates'][1]['iso_date'] #end # Pulling json data with an order by on planned end date (DSC) to get the ending bound for the LHS date range slider. - searchedData['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&hierarchy=1&q=#{query}&ordering=-planned_end_date&end_date_isnull=False" + searchedData['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&hierarchy=1&q=#{query}&ordering=-planned_end_date&end_date_isnull=False&activity_status=2" searchedData['plannedEndDate'] = JSON.parse(searchedData['plannedEndDate']) #puts "activities/?format=json&page_size=1&fields=activity_dates&hierarchy=1&q=#{query}&ordering=-planned_end_date&end_date_isnull=False" if(searchedData['plannedEndDate']['count'] > 0) @@ -162,14 +162,14 @@ def generate_searched_data(query) # end #end #This code is created for generating the left hand side document type filter list - oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&q=#{query}" + oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&q=#{query}&activity_status=2" document_type_list = JSON.parse(oipa_document_type_list) searchedData['document_types'] = document_type_list['results'] searchedData['document_types'] = searchedData['document_types'].sort_by {|key| key["document_link_category"]["name"]} #Implementing org type filters participatingOrgInfo = JSON.parse(File.read('data/participatingOrgList.json')) - oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&q=#{query}&hierarchy=1" + oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&q=#{query}&hierarchy=1&activity_status=2" implementingOrg_type_list = JSON.parse(oipa_implementingOrg_type_list) searchedData['implementingOrg_types'] = implementingOrg_type_list['results'] searchedData['implementingOrg_types'].each do |implementingOrgs| diff --git a/helpers/sector_helpers.rb b/helpers/sector_helpers.rb index 2a7684ee..89a03d2b 100644 --- a/helpers/sector_helpers.rb +++ b/helpers/sector_helpers.rb @@ -150,21 +150,21 @@ def sector_parent_data_list(apiUrl, pageType, code, description, parentCodeType, end def get_sector_projects(n) - oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_sector=#{n}" + oipa_project_list = RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation,aggregations&activity_status=2&ordering=-activity_plus_child_budget_value&related_activity_sector=#{n}" projects= JSON.parse(oipa_project_list) results = {} - sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_sector=#{n}" + sectorValuesJSON = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=sector&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_sector=#{n}&activity_status=2" results['highLevelSectorList'] = high_level_sector_list_filter(sectorValuesJSON) #results['LocationCountries'] = JSON.parse(RestClient.get settings.oipa_api_url + "activities/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&page_size=10&fields=descriptions,activity_status,iati_identifier,url,title,reporting_organisations,activity_plus_child_aggregation&activity_status=1,2,3,4,5&ordering=-activity_plus_child_budget_value&related_activity_sector=#{n}") - results['LocationCountries'] = JSON.parse(RestClient.get settings.oipa_api_url + "activities/aggregations/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&group_by=recipient_country&aggregations=count&related_activity_sector=#{n}") - results['LocationRegions'] = JSON.parse(RestClient.get settings.oipa_api_url + "activities/aggregations/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&group_by=recipient_region&aggregations=count&related_activity_sector=#{n}") + results['LocationCountries'] = JSON.parse(RestClient.get settings.oipa_api_url + "activities/aggregations/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&group_by=recipient_country&aggregations=count&related_activity_sector=#{n}&activity_status=2") + results['LocationRegions'] = JSON.parse(RestClient.get settings.oipa_api_url + "activities/aggregations/?hierarchy=1&format=json&reporting_organisation=GB-GOV-1&group_by=recipient_region&aggregations=count&related_activity_sector=#{n}&activity_status=2") results['project_budget_higher_bound'] = 0 results['actualStartDate'] = '1990-01-01T00:00:00' results['plannedEndDate'] = '2000-01-01T00:00:00' unless projects['results'][0].nil? results['project_budget_higher_bound'] = projects['results'][0]['aggregations']['activity_children']['budget_value'] end - results['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}&ordering=actual_start_date&start_date_gte=1900-01-02" + results['actualStartDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}&ordering=actual_start_date&start_date_gte=1900-01-02&activity_status=2" results['actualStartDate'] = JSON.parse(results['actualStartDate']) tempStartDate = results['actualStartDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '2'}.first if (tempStartDate.nil?) @@ -176,7 +176,7 @@ def get_sector_projects(n) #unless results['actualStartDate']['results'][0].nil? # results['actualStartDate'] = results['actualStartDate']['results'][0]['activity_dates'][1]['iso_date'] #end - results['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}&ordering=-planned_end_date&end_date_isnull=False" + results['plannedEndDate'] = RestClient.get settings.oipa_api_url + "activities/?format=json&page_size=1&fields=activity_dates&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}&ordering=-planned_end_date&end_date_isnull=False&activity_status=2" results['plannedEndDate'] = JSON.parse(results['plannedEndDate']) results['plannedEndDate'] = results['plannedEndDate']['results'][0]['activity_dates'].select{|activityDate| activityDate['type']['code'] == '3'}.first results['plannedEndDate'] = results['plannedEndDate']['iso_date'] @@ -190,13 +190,13 @@ def get_sector_projects(n) #end results['projects'] = projects #This code is created for generating the left hand side document type filter list - oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_sector=#{n}" + oipa_document_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=document_link_category&aggregations=count&reporting_organisation=GB-GOV-1&related_activity_sector=#{n}&activity_status=2" document_type_list = JSON.parse(oipa_document_type_list) results['document_types'] = document_type_list['results'] #Implementing org type filters participatingOrgInfo = JSON.parse(File.read('data/participatingOrgList.json')) - oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}" + oipa_implementingOrg_type_list = RestClient.get settings.oipa_api_url + "activities/aggregations/?format=json&group_by=participating_organisation&aggregations=count&reporting_organisation=GB-GOV-1&hierarchy=1&related_activity_sector=#{n}&activity_status=2" implementingOrg_type_list = JSON.parse(oipa_implementingOrg_type_list) results['implementingOrg_types'] = implementingOrg_type_list['results'] results['implementingOrg_types'].each do |implementingOrgs| diff --git a/public/javascripts/searchPageFilters.js b/public/javascripts/searchPageFilters.js index 08c34683..66c4bb24 100644 --- a/public/javascripts/searchPageFilters.js +++ b/public/javascripts/searchPageFilters.js @@ -205,7 +205,7 @@ $(document).ready(function() { $.getJSON(pagedOipaLink,{ format: "json" }).done(function(json){ - $('#showResults').html(""); + $('#showResults').html('

Default filter shows currently active projects. To see projects at other stages, use the status filters.

'); if (!isEmpty(json.next)){ var tmpStr = '
Now showing projects '+(1+(10*(pageNumber-1)))+' - '+(10*pageNumber)+' of '+projectCount+'
'; $('#showResults').append(tmpStr); @@ -280,7 +280,7 @@ $(document).ready(function() { format: "json" }) .done(function(json){ - $('#showResults').html(""); + $('#showResults').html('

Default filter shows currently active projects. To see projects at other stages, use the status filters.

'); returnedProjectCount = json.count; refreshPagination(json.count); if (!isEmpty(json.next)){ diff --git a/views/countries/projects.html.erb b/views/countries/projects.html.erb index b7e7a8d1..68a285d3 100755 --- a/views/countries/projects.html.erb +++ b/views/countries/projects.html.erb @@ -17,6 +17,6 @@ -<%= erb :'partials/_countries-tabs', :locals => { :active => "projects", :country => country, :project_count => total_projects, :results_count => results.length } %> +<%= erb :'partials/_countries-tabs', :locals => { :active => "projects", :country => country, :project_count => projectCount, :results_count => results.length } %> <%= erb :'partials/_project_list', :locals => { :projects => projects, :country => country, :project_count => total_projects, :countryAllProjectFilters => countryAllProjectFilters, :highLevelSectorList => highLevelSectorList, :oipa_api_url => oipa_api_url, :total_projects => total_projects, :budgetHigherBound => budgetHigherBound, :actualStartDate => actualStartDate, :plannedEndDate => plannedEndDate, :documentTypes => documentTypes, :implementingOrgTypes => implementingOrgTypes} %> \ No newline at end of file diff --git a/views/partials/_countries-tabs.html.erb b/views/partials/_countries-tabs.html.erb index 3721bded..35dab317 100755 --- a/views/partials/_countries-tabs.html.erb +++ b/views/partials/_countries-tabs.html.erb @@ -7,7 +7,7 @@