Mercurial > defr > drupal > scald > dnd
comparison dnd.module @ 7:e6378dbabe45
Added conditional logic to prevent choking on missing json data.
| author | David Eads <eads@chicagotech.org> |
|---|---|
| date | Thu, 19 Feb 2009 14:10:13 -0500 |
| parents | ea5d7834d0dc |
| children | b9cd179a30a8 a5b2b9fa2a1a |
comparison
equal
deleted
inserted
replaced
| 6:ea5d7834d0dc | 7:e6378dbabe45 |
|---|---|
| 118 | 118 |
| 119 // Handle both relative and absolute urls | 119 // Handle both relative and absolute urls |
| 120 if (!isset($url['scheme'])) { | 120 if (!isset($url['scheme'])) { |
| 121 $settings['url'] = $base_url .'/'. $settings['url']; | 121 $settings['url'] = $base_url .'/'. $settings['url']; |
| 122 } | 122 } |
| 123 dpm($settings); | |
| 124 | 123 |
| 125 $request = drupal_http_request($settings['url']); | 124 $request = drupal_http_request($settings['url']); |
| 126 | 125 |
| 127 // We must remove some Drupal escaping | 126 // We must remove some Drupal escaping |
| 128 $json = json_decode(str_replace(array('\x3c', '\x3e', '\x26'), array("<", ">", "&"), $request->data), TRUE); | 127 $json = json_decode(str_replace(array('\x3c', '\x3e', '\x26'), array("<", ">", "&"), $request->data), TRUE); |
| 129 | 128 |
| 130 // Generate an array of editor representations to add | 129 // Generate an array of editor representations to add |
| 131 foreach ($json['editor_representations'] as $editor_id=>$editor_item) { | 130 if (is_array($json['editor_representations'])) { |
| 132 $editor_representations[$editor_id] = filter_xss_admin($editor_item); | 131 foreach ($json['editor_representations'] as $editor_id=>$editor_item) { |
| 132 $editor_representations[$editor_id] = filter_xss_admin($editor_item); | |
| 133 } | |
| 133 } | 134 } |
| 134 | 135 |
| 135 // Store editor representations in Drupal setting | 136 // Store editor representations in Drupal setting |
| 136 drupal_add_js(array('dndEditorRepresentations' => $editor_representations,), 'setting'); | 137 drupal_add_js(array('dndEditorRepresentations' => $editor_representations,), 'setting'); |
| 137 | 138 |
