diff options
author | Evan Prodromou <evan@prodromou.name> | 2008-12-30 16:19:57 -0500 |
---|---|---|
committer | Evan Prodromou <evan@prodromou.name> | 2008-12-30 16:19:57 -0500 |
commit | 76d91a358bc072274953c2aaf8a768c331ac2a71 (patch) | |
tree | 927a93b1eb6d7ca61ab8a836e79dbe6d454d0426 | |
parent | 91a41242ef5309fdae0243251d0e0add75c51b99 (diff) |
better serialization of arrays and booleans in config output
darcs-hash:20081230211957-84dde-ea044934e16bb8ef89e762159ecea1fa008b65b9.gz
-rw-r--r-- | _darcs/inventory | 4 | ||||
-rw-r--r-- | _darcs/patches/20081230211957-84dde-ea044934e16bb8ef89e762159ecea1fa008b65b9.gz | bin | 0 -> 280 bytes | |||
-rw-r--r-- | _darcs/pristine/actions/twitapilaconica.php | 10 | ||||
-rw-r--r-- | _darcs/tentative_pristine | 54 | ||||
-rw-r--r-- | actions/twitapilaconica.php | 10 |
5 files changed, 32 insertions, 46 deletions
diff --git a/_darcs/inventory b/_darcs/inventory index 895091d01..6b875d2ae 100644 --- a/_darcs/inventory +++ b/_darcs/inventory @@ -108,4 +108,6 @@ Evan Prodromou <evan@prodromou.name>**20081230205939] [add some breaks so that switch statement works Evan Prodromou <evan@prodromou.name>**20081230210114] [implement the api/laconica/config method -Evan Prodromou <evan@prodromou.name>**20081230211444]
\ No newline at end of file +Evan Prodromou <evan@prodromou.name>**20081230211444] +[better serialization of arrays and booleans in config output +Evan Prodromou <evan@prodromou.name>**20081230211957]
\ No newline at end of file diff --git a/_darcs/patches/20081230211957-84dde-ea044934e16bb8ef89e762159ecea1fa008b65b9.gz b/_darcs/patches/20081230211957-84dde-ea044934e16bb8ef89e762159ecea1fa008b65b9.gz Binary files differnew file mode 100644 index 000000000..a99818141 --- /dev/null +++ b/_darcs/patches/20081230211957-84dde-ea044934e16bb8ef89e762159ecea1fa008b65b9.gz diff --git a/_darcs/pristine/actions/twitapilaconica.php b/_darcs/pristine/actions/twitapilaconica.php index 9d9fcef6f..17b7b0872 100644 --- a/_darcs/pristine/actions/twitapilaconica.php +++ b/_darcs/pristine/actions/twitapilaconica.php @@ -119,7 +119,15 @@ class TwitapilaconicaAction extends TwitterapiAction foreach ($keys as $section => $settings) { common_element_start($section); foreach ($settings as $setting) { - common_element($setting, null, common_config($section, $setting)); + $value = common_config($section, $setting); + if (is_array($value)) { + $value = implode(',', $value); + } else if ($value === false) { + $value = 'false'; + } else if ($value === true) { + $value = 'true'; + } + common_element($setting, null, $value); } common_element_end($section); } diff --git a/_darcs/tentative_pristine b/_darcs/tentative_pristine index 404e42f98..2a7c664f3 100644 --- a/_darcs/tentative_pristine +++ b/_darcs/tentative_pristine @@ -1,43 +1,11 @@ -hunk ./actions/twitapilaconica.php 92 -+ * URL: http://identi.ca/api/laconica/config.(xml|json) -+ * Formats: xml, json -hunk ./actions/twitapilaconica.php 105 -+ static $keys = array('site' => array('name', 'server', 'theme', 'path', 'fancy', 'language', -+ 'email', 'broughtby', 'broughtbyurl', 'closed', -+ 'inviteonly', 'private'), -+ 'license' => array('url', 'title', 'image'), -+ 'nickname' => array('featured'), -+ 'throttle' => array('enabled', 'count', 'timespan'), -+ 'xmpp' => array('enabled', 'server', 'user')); -+ -hunk ./actions/twitapilaconica.php 114 -- common_server_error(_('API method under construction.'), 501); -+ -+ switch ($apidata['content-type']) { -+ case 'xml': -+ $this->init_document('xml'); -+ // XXX: check that all sections and settings are legal XML elements -+ foreach ($keys as $section => $settings) { -+ common_element_start($section); -+ foreach ($settings as $setting) { -+ common_element($setting, null, common_config($section, $setting)); -+ } -+ common_element_end($section); -+ } -+ $this->end_document('xml'); -+ break; -+ case 'json': -+ $result = array(); -+ foreach ($keys as $section => $settings) { -+ $result[$section] = array(); -+ foreach ($settings as $setting) { -+ $result[$section][$setting] = common_config($section, $setting); -+ } -+ } -+ $this->init_document('json'); -+ $this->show_json_objects($result); -+ $this->end_document('json'); -+ break; -+ default: -+ $this->client_error(_('API method not found!'), $code=404); -+ } +hunk ./actions/twitapilaconica.php 122 +- common_element($setting, null, common_config($section, $setting)); ++ $value = common_config($section, $setting); ++ if (is_array($value)) { ++ $value = implode(',', $value); ++ } else if ($value === false) { ++ $value = 'false'; ++ } else if ($value === true) { ++ $value = 'true'; ++ } ++ common_element($setting, null, $value); diff --git a/actions/twitapilaconica.php b/actions/twitapilaconica.php index 9d9fcef6f..17b7b0872 100644 --- a/actions/twitapilaconica.php +++ b/actions/twitapilaconica.php @@ -119,7 +119,15 @@ class TwitapilaconicaAction extends TwitterapiAction foreach ($keys as $section => $settings) { common_element_start($section); foreach ($settings as $setting) { - common_element($setting, null, common_config($section, $setting)); + $value = common_config($section, $setting); + if (is_array($value)) { + $value = implode(',', $value); + } else if ($value === false) { + $value = 'false'; + } else if ($value === true) { + $value = 'true'; + } + common_element($setting, null, $value); } common_element_end($section); } |