Search Bar Layout Fix

Summary: * fixes search bar layout with addition of new input and select fields.

Test Plan:
* check input and select elements to make sure it is functioning properly.
* resize browser to test layout.

Reviewers: shadowhand, rjmackay, eyedol

Reviewed By: shadowhand, rjmackay, eyedol

Subscribers: dkobia

Differential Revision: https://phabricator.ushahidi.com/D39
refresh up CSS to latest
Add initial file structure for FrontlineSms

Summary:
Copy same structure as SMSSync plugin since they have similar
implementation

* Add FrontlineSms as a data provider
* Make request GET only

Test Plan:
Run the following command

  ./bin/behat --config application/tests/behat.yml application/tests/features/data-provider/frontlinesms.feature --format progress

Reviewers: shadowhand, rjmackay

Reviewed By: rjmackay

Subscribers: lkamau

Maniphest Tasks: T93

Differential Revision: https://phabricator.ushahidi.com/D32
Second pass at cleaning up config class extension mess, refs T172

Summary:
- recreate Kohana_Config_Database the way it was supposed to be
- refactor Ushahidi_Config_Database based on new Kohana_Config_Database
- clean up api/config endpoint again, small changes for clarity

Test Plan:
- use site settings tools
- check XHR logs

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: lkamau, eyedol

Maniphest Tasks: T185, T172

Differential Revision: https://phabricator.ushahidi.com/D38
refresh styles
Message UI Tweaks

Summary:
* styles message activity list layout
	* w/ post image
	* w/o post image

* reply form autofill
	* location
	* more info

* fixes activity list layout
	* 1024px & up

* removes space within media queries. I had an extra space in my snippet :( I may need to parse files and fix. Foundation 5 media query syntax has changed, so I have to do this anyway.

* fixes autofill button layout & class naming

* disables all links/toggles in selected state

Test Plan: That layout and logic are working as expected.

Reviewers: rjmackay, shadowhand

Reviewed By: rjmackay, shadowhand

Subscribers: digitalafrican, dkobia, eyedol

Differential Revision: https://phabricator.ushahidi.com/D37
Minor PostModel fixes

Summary:
Catching missing FormModel.groups when trying to get post locaiton
Update PostModel.getValue() for altered values format

Test Plan: - View a post with a location and see that location now appears under 'Post details'

Reviewers: eyedol, shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D34
Restructure form processing in FormModel.js and PostModel.js

Summary:
- Combine fieldset, schema and validation processing.
- Trying to simplify PostModel.fieldsets()
- Add FormModel.getAttribute()

Extracted from D33, but shouldn't be any dependencies (probably minor conflicts)

Test Plan: - Check that forms still render properly for editing posts

Reviewers: eyedol, shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D35
Prototype of DCI, using the Config entity, refs T172

Summary:
- demonstration of using entity, repository, storage interfaces
- PSR-2 compatible code
- custom PSR-0 autoloader
- addition of Pimple for DI container
- global `service()` function

Test Plan:
Integrated with `config` endpoint, can use site settings to verify that GET/PUT works as expected.

Can also be tested manually by editing bootstrap and removing the end of the routing, replaced with:

  $r = new Ushahidi\Storage\Config;
  $a = $r->all('site');
  $s = $r->set('site', 'site_name', 'Lamu:' . rand(1, 9));
  $g = $r->get('site', 'owner_name');
  exit(Debug::Vars($a, $m, $g));

Reviewers: rjmackay

Reviewed By: rjmackay

Subscribers: lkamau, eyedol, dkobia

Maniphest Tasks: T172

Differential Revision: https://phabricator.ushahidi.com/D40
Upgrade Leaflet to 0.7.2

Summary: Upgrading Leaflet to fix some bugs for D33

Test Plan:
- Check maps in UI still loading
- Check popups still work as expected
- Open create post dialog, check that location editors load
- Location editor: Check that locate button still works
- Location editor: Check the geolocation search still works

Reviewers: eyedol, shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D42
Create a custom bootstrap file to replace modules/unittest/bootstrap.php

Summary: Add our plugin path and src/Init code to the bootstrap

Test Plan: - Run behat unit tests

Reviewers: shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D43
refresh style.css
update ddt.js to v0.3.0
Fix issues in MySQL strict mode

Summary:
- Make travis-ci builds run in MySQL strict mode
- Add missing default values for oauth tables
  - Give oauth_clients/oauth_authorization_codes redirect_uri a default value
  - Default value for created
  - Default values for scope and grant_types
- Move oauth table created migration into the koauth module
- Fix Migration_Oauth2_0_1_20140310135458::down()
  The minimum value for TIMESTAMP is 1970-01-01 00:00:01 so we have to handle created = 0 differently
- Explicitly add redirect_uri value's in Base.yml
- Fix format of 'updated' column in Form Model
- Trim whitespace in Form Model
- Fix the way we set query strings in behat tests
  Behat's auto parsing of the url was failing because 'http://' appeared in our query string.

Fixes T185

Test Plan:
- Set mysql mode to strict `SET GLOBAL sql_mode = 'STRICT_ALL_TABLES'`
- Run unit tests

Reviewers: shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T185

Differential Revision: https://phabricator.ushahidi.com/D41
Change "values/" references to "values-" to fix error when used in HTML id

Summary:
The values/key reference is reused in the ids of form fields, this was
breaking things because / is an illegal character in an id

Test Plan:
- Open post create form and try to drag the location marker
- Before the change this caused a JS error in the console, after: fixed

Reviewers: shadowhand

Reviewed By: shadowhand

Differential Revision: https://phabricator.ushahidi.com/D45
All the dataz

Summary:
- Add more demo data and remove previous demo-data migrations
- Move existing data into the demo-data group

Refs T158

Test Plan:
- Run `minion migrations:run --up --group=demo-data` and watch your db fill with delicious dataz
- Run `minion migrations:run --down --group=demo-data` and get an empty site again

Reviewers: shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T158

Differential Revision: https://phabricator.ushahidi.com/D44
Show custom field values on post detail page

Summary:
Render the custom field values on a post detail page.
Use a separate views per field type to render the values.

Test Plan: - Go to a post with custom fields and see field values listed

Reviewers: eyedol, shadowhand

Reviewed By: shadowhand

Maniphest Tasks: T131

Differential Revision: https://phabricator.ushahidi.com/D33
Add "Features" configuration to site settings page, refs T172

Summary:
- [php] add `window.config.features`
- [php] add `config.format.hash` service for translating a config group to a plain hash
- [php] add default features config file
- [js] add features checkboxes to settings page
- [js] refactor saving settings for multiple groups
- [scss] add settings module for settings page, minor restyle

Test Plan:
- view settings page
- change site settings
- toggle features

Reviewers: seth, rjmackay

Reviewed By: seth, rjmackay

Subscribers: dkobia

Maniphest Tasks: T172

Differential Revision: https://phabricator.ushahidi.com/D46
Add global feature() to PHP, App.feature() to JS, fixes T172

Summary: Uses `features` config to give boolean status for any feature name.

Test Plan: Try it.

Reviewers: rjmackay

Reviewed By: rjmackay

Maniphest Tasks: T172

Differential Revision: https://phabricator.ushahidi.com/D48
Bad test is broken no more, refs T172