Skip to content
This repository has been archived by the owner on Jun 9, 2022. It is now read-only.

Latest commit

 

History

History
63 lines (38 loc) · 2.14 KB

README.md

File metadata and controls

63 lines (38 loc) · 2.14 KB

NOTE

IATI-Query-Builder is Deprecated and Archived

  • Check out Datastore Search Advanced for Query Building needs
  • This repository is Deprecated, Archived, and not maintained by IATI

IATI-Query-Builder

License: MIT

About

A simple form that will build a query string that can then be used to fetch data from the IATI Datastore API.

See it in action here - http://datastore.iatistandard.org/query/index.php

Requirements

A webserver running php and php-curl. PHP dependencies are managed using Composer.

Installation

# Clone the repository and enter into the root folder
git clone https://github.com/IATI/IATI-Query-Builder.git
cd IATI-Query-Builder

# Install dependencies
composer install

# If running for the first time, prepare the helper script that enables you to get data for current IATI publishers
# This involves copying the file to a filename of your choice and uncommenting the code
cp helpers/refresh_group_data.example.php helpers/YOUR_FILENAME.php
nano helpers/YOUR_FILENAME.php

# Run the script to get data for current IATI publishers using the CKAN API
php helpers/YOUR_FILENAME.php

# You may wish to ensure that the included codelists are up-to-date (optional)
./update-codelists.sh

# Run a webserver
php -S localhost:8000

# Open a browser and visit localhost:8000

Helper scripts

Getting the latest IATI publishers

The /helpers directory has a script refresh_group_data.example.php that will enable you to get data relating to current IATI publishers.

Running this script will generate a .json file of 'groups' (i.e. publishers) in use on the IATI registry, and this in turn will populate the 'Reporting Organisation' multi-select element in the form.

Getting the latest IATI publishers

The script update-codelists.sh will re-download latest versions of the required codelists.

Automating updates

To automate regular updates, you could set-up both of these scripts as a cron job on your server.