diff options
| author | ctrlcctrlv <wizardchan@hush.com> | 2013-08-20 18:52:12 +0000 |
|---|---|---|
| committer | ctrlcctrlv <wizardchan@hush.com> | 2013-08-20 18:52:12 +0000 |
| commit | cc5173f4309c72fc8d0f52f70576302dbb998b1e (patch) | |
| tree | e32efed1a2af668abfa952edd2a851774e158f14 /inc | |
| parent | 3e9f4f101ab07ed69d202577821d9c3b0fb414f7 (diff) | |
Country flags in API if they are enabled
Diffstat (limited to 'inc')
| -rw-r--r-- | inc/api.php | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/inc/api.php b/inc/api.php index 2bf6b7b8..69a58a0c 100644 --- a/inc/api.php +++ b/inc/api.php @@ -3,6 +3,7 @@ * Copyright (c) 2010-2013 Tinyboard Development Group */ + /** * Class for generating json API compatible with 4chan API */ @@ -11,6 +12,8 @@ class Api { /** * Translation from local fields to fields in 4chan-style API */ + $this->config = $config; + $this->postFields = array( 'id' => 'no', 'thread' => 'resto', @@ -64,6 +67,7 @@ class Api { if ($val !== null && $val !== '') { $apiPost[$translated] = $toInt ? (int) $val : $val; } + } if (isset($post->filename)) { @@ -72,6 +76,18 @@ class Api { $apiPost['ext'] = substr($post->filename, $dotPos); } + // Handle country field + if (isset($post->body_nomarkup) && $this->config['country_flags']) { + $modifiers = extract_modifiers($post->body_nomarkup); + if (isset($modifiers['flag']) && isset($modifiers['flag alt'])) { + $country = mb_convert_case($modifiers['flag'], MB_CASE_UPPER); + if ($country) { + $apiPost['country'] = $country; + $apiPost['country_name'] = $modifiers['flag alt']; + } + } + } + return $apiPost; } |
