-
Notifications
You must be signed in to change notification settings - Fork 1
/
stockapi.api.php
53 lines (50 loc) · 1.39 KB
/
stockapi.api.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<?php
/**
* @file
* Stock API module API file.
*/
/**
* Alter Google Finance query.
*
* @param string $path
* Google finance host URL, i.e. 'https://finance.google.com/' or
* 'https://finance.google.ca/'.
*
* You may want to change it sometimes since Finance may return different data
* for different domains.
* @param array $options
* Array or URL options, as passed to url().
* @param string $stock_market
* Stock market name, i.e. 'NASDAQ' or 'TSE'.
* @param string $stock_symbol
* Stock symbol.
*
* @see stockapi_google_finance_url()
* @see url()
*/
function hook_stockapi_google_finance_query_alter(&$path, &$options, $stock_market, $stock_symbol) {
if ($stock_symbol == 'GOOG') {
$path = 'https://finance.google.com/';
// Omit stock market because why not, that's why.
$options['q'] = $stock_symbol;
}
}
/**
* React on Stock API data update.
*
* Third-party modules may utilize this hook to clear own caches or process
* own data.
* Example usages: 1) Use in a custom module to store stocks data in a JSON
* file so that you can load with JavaScript code on a fully cached site.
* 2) Comparing and logging values.
*
* @param array $symbols
* Stock symbols, as returned by stockapi_fetch().
*
* @see stockapi_fetch()
*/
function hook_stockapi_post_update(array $symbols) {
foreach ($symbols as $key => $stock) {
// Process own data here.
}
}