template for the widget should an error occur
This commit is contained in:
parent
c0e27bbe80
commit
317e8724c5
2 changed files with 29 additions and 14 deletions
|
@ -14,6 +14,8 @@ use Cmfcmf\OpenWeatherMap\Exception as OWMException;
|
||||||
|
|
||||||
// Must point to composer's autoload file.
|
// Must point to composer's autoload file.
|
||||||
require('vendor/autoload.php');
|
require('vendor/autoload.php');
|
||||||
|
//require('addon/curweather/openweathermap-php-api/Cmfcmf/OpenWeatherMap.php');
|
||||||
|
//require('addon/curweather/vendor/cmfcmf/openweathermap-php-api/Cmfcmf/OpenWeatherMap.php');
|
||||||
|
|
||||||
function curweather_install() {
|
function curweather_install() {
|
||||||
register_hook('network_mod_init', 'addon/curweather/curweather.php', 'curweather_network_mod_init');
|
register_hook('network_mod_init', 'addon/curweather/curweather.php', 'curweather_network_mod_init');
|
||||||
|
@ -106,6 +108,7 @@ function curweather_network_mod_init(&$fk_app,&$b) {
|
||||||
// Example_Cache.php to see how it works).
|
// Example_Cache.php to see how it works).
|
||||||
//$owm = new OpenWeatherMap();
|
//$owm = new OpenWeatherMap();
|
||||||
$owm = new OpenWeatherMap(null, new CWCache(), $cachetime);
|
$owm = new OpenWeatherMap(null, new CWCache(), $cachetime);
|
||||||
|
$ok = true;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
$weather = $owm->getWeather($rpt, $units, $lang, $appid);
|
$weather = $owm->getWeather($rpt, $units, $lang, $appid);
|
||||||
|
@ -125,23 +128,34 @@ function curweather_network_mod_init(&$fk_app,&$b) {
|
||||||
'lat' =>$weather->city->lat
|
'lat' =>$weather->city->lat
|
||||||
);
|
);
|
||||||
} catch(OWMException $e) {
|
} catch(OWMException $e) {
|
||||||
info ( 'OpenWeatherMap exception: ' . $e->getMessage() . ' (Code ' . $e->getCode() . ').');
|
info ( 'OpenWeatherMap exception: ' . $e->getMessage() . ' (Code ' . $e->getCode() . ').');
|
||||||
|
$ok = false;
|
||||||
} catch(\Exception $e) {
|
} catch(\Exception $e) {
|
||||||
info ('General exception: ' . $e->getMessage() . ' (Code ' . $e->getCode() . ').');
|
info ('General exception: ' . $e->getMessage() . ' (Code ' . $e->getCode() . ').');
|
||||||
|
$ok = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
$t = get_markup_template("widget.tpl", "addon/curweather/" );
|
if ($ok) {
|
||||||
$curweather = replace_macros ($t, array(
|
$t = get_markup_template("widget.tpl", "addon/curweather/" );
|
||||||
'$title' => t("Current Weather"),
|
$curweather = replace_macros ($t, array(
|
||||||
'$city' => $city,
|
'$title' => t("Current Weather"),
|
||||||
'$description' => $description,
|
'$city' => $city,
|
||||||
'$temp' => $temp,
|
'$description' => $description,
|
||||||
'$relhumidity' => array('caption'=>t('Relative Humidity'), 'val'=>$rhumid),
|
'$temp' => $temp,
|
||||||
'$pressure' => array('caption'=>t('Pressure'), 'val'=>$pressure),
|
'$relhumidity' => array('caption'=>t('Relative Humidity'), 'val'=>$rhumid),
|
||||||
'$wind' => array('caption'=>t('Wind'), 'val'=> $wind),
|
'$pressure' => array('caption'=>t('Pressure'), 'val'=>$pressure),
|
||||||
'$databy' => t('Data by'),
|
'$wind' => array('caption'=>t('Wind'), 'val'=> $wind),
|
||||||
'$showonmap' => t('Show on map')
|
'$databy' => t('Data by'),
|
||||||
));
|
'$showonmap' => t('Show on map')
|
||||||
|
));
|
||||||
|
} else {
|
||||||
|
$t = get_markup_template('widget-error.tpl', 'addon/curweather/');
|
||||||
|
$curweather = replace_macros( $t, array(
|
||||||
|
'$problem' => t('There was a problem accessing the weather data. But have a look'),
|
||||||
|
'$rpt' => $rpt,
|
||||||
|
'$atOWM' => t('at OpenWeatherMap')
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
$fk_app->page['aside'] = $curweather.$fk_app->page['aside'];
|
$fk_app->page['aside'] = $curweather.$fk_app->page['aside'];
|
||||||
|
|
||||||
|
|
1
curweather/templates/widget-error.tpl
Normal file
1
curweather/templates/widget-error.tpl
Normal file
|
@ -0,0 +1 @@
|
||||||
|
<div>{{$problem}} <a href="http://openweathermap.org/find?q={{$rpt}}">{{$atOWM}}</a>.</div>
|
Loading…
Reference in a new issue