|
4 | 4 | * Page callback: search based on e.g. URL
|
5 | 5 | */
|
6 | 6 | function tldwapi_pages_search($format = 'json') {
|
7 |
| - $url = $_GET['url']; |
| 7 | + // Take one URL or many URLs |
| 8 | + $urls = $_GET['urls']; |
| 9 | + if (!is_array($urls)) { |
| 10 | + $urls = array($_GET['url']); |
| 11 | + } |
8 | 12 |
|
9 |
| - // Try to parse the URL into a provider we know about |
10 |
| - $field_spec = content_fields('field_videolink', 'transcript'); |
11 |
| - $parsed = emfield_parse_embed($field_spec, $url, 'emvideo'); |
| 13 | + foreach($urls as $url) { |
| 14 | + // Try to parse the URL into a provider we know about |
| 15 | + $field_spec = content_fields('field_videolink', 'transcript'); |
| 16 | + $parsed = emfield_parse_embed($field_spec, $url, 'emvideo'); |
12 | 17 |
|
13 |
| - // If we've identified a provider, try to find a video with that provider |
14 |
| - if (isset($parsed['provider']) && $parsed['provider']) { |
15 |
| - $sql = "SELECT nid FROM content_field_videolink WHERE field_videolink_value = '%s' AND field_videolink_provider = '%s'"; |
16 |
| - $result = db_query($sql, $parsed['value'], $parsed['provider']); |
17 |
| - $node = node_load(db_result($result)); |
| 18 | + // If we've identified a provider, try to find a video with that provider |
| 19 | + if (isset($parsed['provider']) && $parsed['provider']) { |
| 20 | + $sql = "SELECT nid FROM content_field_videolink WHERE field_videolink_value = '%s' AND field_videolink_provider = '%s'"; |
| 21 | + $result = db_query($sql, $parsed['value'], $parsed['provider']); |
| 22 | + $node = node_load(db_result($result)); |
| 23 | + if ($node) { |
| 24 | + break; |
| 25 | + } |
| 26 | + } |
18 | 27 | }
|
19 | 28 |
|
20 | 29 | // No results? return an empty array or equivalent
|
|
0 commit comments