För utvecklare

Bakgrund

Openaid.se bygger på mjukvara med öppen källkod. Syftet med att utveckla webbgränssnitt och bakomliggande mjukvara med öppen källkod är att dela med sig så att andra aktörer som vill kan använda mjukvaran som i sin tur bidrar till att fler ansluter sig till IATI-standarden.

Licens

All kod som finns tillgänglig i Openaid-projektet lyder under licensen GPLv3 (se övriga licenser för övriga komponenter). Det betyder att användare som nyttjar programvaran (koden) Openaid har friheten att förbättra programvaran, anpassa det till egna krav och distribuera förbättringarna så att andra kan dra nytta av modifieringarna.

Installera din egen version av Openaid

I dagsläget är mjukvaran anpassad för Sidas behov och du bör därför först installera en komplett installation för att få en bra bild hur Openaid är byggd innan du gör egna anpassningar. Du bör vara bekant med Linux-miljöer för att kunna hänga med i guiden.

  1. Kontrollera så att din miljö uppfyller systemkraven
  2. Ladda hem senaste versionen av WordPress
  3. Ladda hem och installera WordPress-temat ”Openaid”
  4. Ladda hem senaste versionen av ”iati-importer”
  5. Ladda hem senaste versionen av ”pdf-importer”
  6. Kör skript för att ändra URL i databasen
  7. Importera iata-data (iati-importer)
  8. Importera dokument (pdf-importer)
  9. Installera instick för motsvarande funktionalitet som Openaid
  10. skapa aid sidan

1. Kontrollera så att din miljö uppfyller systemkraven

För att Openaid.se skall fungera tillfredställande bör den installeras på nedan rekommenderad plattform. Openaid.se är installerad på en virtuell server med följande nedanstående komponenter. Det går givetvis att använda ekvivalent mjukvara men denna guide tar inte upp alla varianter.

Rekommenderad  miljö (version och licens)

  • Operativsystem: Linux/UNIX Ubuntu 14.04.2 LTS (GPL)
  • Databas: MySQL Ver 14.14 Distrib 5.5.41, for debian-linux-gnu (x86_64) using readline 6.3 (GPL)
  • Webbserver: NGINX/1.4.6 (Ubuntu) (2-klass, en BSD-liknande licens)
  • Processhanterare: HipHop VM 3.5.1 (PHP, Zend och BSD licens)
  • Programmeringsspråk PHP 5.5.14 (and cli) (byggd: Sep 9 2014 19:09:25) (PHP Licens, version 3.0)
  • CMS: WordPress 4.3+ (rekommenderad senaste version) (GPLv2)
  • Visualisering (graf, karta): D3 (Data-Driven Documents) (BSD licens)

Du bör vara bekant med Linux-miljöer för att kunna hänga med i guiden. Om du inte har miljön installerad finns det många guider att följa på Internet.

2. Ladda hem och installera senaste versionen av WordPress

WordPress är ett modernt och gratis publiceringsverktyg för att bygga en blogg eller webbplats.

Du kan med fördel skapa en ny databas av samma typ som vi använder på Openaid.se.

# CREATE SCHEMA `openaid` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Installera sedan WordPress genom att köra den berömda 5-minuters installationen.

3. Ladda hem och installera WordPress-temat Openaid

Ladda hem temat och packa upp det i katalogen “/wp-content/themes/” eller installera det direkt från WordPress genom att ladda ner och spara temat för att sedan ladda upp det i din WordPress-miljö.

4. Ladda hem senaste versionen av iati-importer

iata-importer innehåller databasschema med exempeldata och kod för att importera data från IATI-datastore.

5. Ladda hem senaste versionen av pdf-importer

pdf-importer innehåller kod för att importera dokument.

6. Kör skript för att ändra URL i databasen

I schemat ligger URL:en “http://openaid.se” som du måste byta ut mot din egen URL där din webbplats är installerad. Du kan köra följande kod för att ändra URL till din egen. Ett alternativ är att installera WP-CLI (http://wp-cli.org) och köra “search-replace”, det går också bra.

set @old = "http://openaid.se"; /* adress att byta från */
set @new = "http://www.domän.se"; /* adress att byta till */
update wp_posts set post_content = replace(post_content, @old, @new), guid = replace(guid, @old, @new);
update wp_postmeta set meta_value = replace(meta_value, @old, @new);
update wp_options set option_value = replace(option_value, @old, @new);

7.Importera iata-data (iati-importer)

Byt namn på config-sample.php till config.php och skriv in rätt databasuppgifter högst upp.

Kör import-data.php från terminalen med PHP-CLI.

# php index.php

Import-data gör följade i angiven ordning:

  1. Laddar ner data från IATI-datastore för att sedan importera det till ”transaction” tabellen i openaid-databasen.
  2. Genererar wordpress sidor utifrån datat i transaction tabellen (sidorna skapas i agency, recipient samt organisation posttypen)

8. Importera dokument (pdf-importer)

Byt namn på config-sample.php till config.php och skriv in rätt databasuppgifter högst upp.

Kör import-data.php från terminalen med PHP-CLI.

# php index.php

pdf-importer importerar alla dokument till ”documents” tabellen.

9. Installera tillägg

Installera nedanstående tillägg om du vill ha samma funktionalitet som Sidas Openaid.se.

Akismet
Used by millions, Akismet is quite possibly the best way in the world to protect your blog from comment and trackback spam. It keeps your site protected from spam even while you sleep.

Google XML Sitemaps
This plugin will generate a special XML sitemap which will help search engines like Google, Yahoo, Bing and Ask.com to better index your blog.

Magic Fields
Create custom fields for your post types

Manual Purge Cache
Plugin for purging selected cached pages on disk generated with cache plugin or proxy server.

Ladda hem Manual Purge Cache från GITHub (https://github.com/matiasvangsnes/manual-purge-cache)

mqTranslate
Adds userfriendly multilingual content support into WordPress. mqTranslate is a fork of the well-known qTranslate plugin by Qian Qin, extending the original software with collaborative and team-oriented features.

W3 Total Cache
The highest rated and most complete WordPress performance plugin. Dramatically improve the speed and user experience of your site. Add browser, page, object and database caching as well as minify and content delivery network (CDN) to WordPress.

10. Skapa aid sida

Skapa en sida vid namn ”Aid”. Det är viktigt att sluggen heter ”aid”. Välj mallen ”toolbox”. Toolbox är mallen som visar grafiken på startsidan