summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Seeger <pseeger@ccwn.org>2012-04-19 09:30:47 +0200
committerPatrick Seeger <pseeger@ccwn.org>2012-04-19 09:30:47 +0200
commite41aefeea38a7d13690ca97e91368809343216aa (patch)
tree8f1f9a479e81d230f72288d3c376693bec9e0aa5
parent93c576ef4049b54f1f044e96768ba8f1c7a3cea1 (diff)
Caching beim Wetter
-rw-r--r--protected/config/main.php2
-rw-r--r--protected/extensions/wetter/Wetter.php19
-rw-r--r--protected/extensions/wetter/views/wetter.php14
3 files changed, 28 insertions, 7 deletions
diff --git a/protected/config/main.php b/protected/config/main.php
index e9c97aa..3430057 100644
--- a/protected/config/main.php
+++ b/protected/config/main.php
@@ -40,7 +40,7 @@ return array(
'allowAutoLogin'=>true,
),
'cache' => array(
- 'class' => 'system.caching.CDummyCache',
+ 'class' => 'system.caching.CFileCache',
),
// uncomment the following to enable URLs in path-format
/*
diff --git a/protected/extensions/wetter/Wetter.php b/protected/extensions/wetter/Wetter.php
index de2ec93..f74eb9f 100644
--- a/protected/extensions/wetter/Wetter.php
+++ b/protected/extensions/wetter/Wetter.php
@@ -2,7 +2,24 @@
class Wetter extends CWidget {
public function run(){
- $wetter = $this->website_wetter('71332','Germany');
+ $wetter=Yii::app()->cache->get('extensions.Wetter.wetter2');
+ if($wetter===false)
+ {
+ $mwetter = $this->website_wetter('71332','Germany');
+ $wetter['jetzt']['tag']='Aktuell';
+ $wetter['jetzt']['temperatur'] = (string) $mwetter[0]['temperatur'];
+ $wetter['jetzt']['zustand'] = (string) $mwetter[0]['zustand'];
+ $wetter['jetzt']['icon'] = (string) $mwetter[0]['icon'];
+
+ $wetter['morgen']['tag']=(string) $mwetter[2]['wochentag'];
+ $wetter['morgen']['hoechsttemperatur'] = (string) $mwetter[2]['hoechsttemperatur'];
+ $wetter['morgen']['tiefsttemperatur'] = (string) $mwetter[2]['tiefsttemperatur'];
+ $wetter['morgen']['zustand'] = (string) $mwetter[2]['zustand'];
+ $wetter['morgen']['icon'] = (string) $mwetter[2]['icon'];
+ Yii::app()->cache->set('extensions.Wetter.wetter2',$wetter,3600);
+ Yii::app()->user->setFlash('new', "Data retrieved from google");
+ }
+
$this->render('wetter', compact('wetter'));
}
diff --git a/protected/extensions/wetter/views/wetter.php b/protected/extensions/wetter/views/wetter.php
index 0b4c831..a175f11 100644
--- a/protected/extensions/wetter/views/wetter.php
+++ b/protected/extensions/wetter/views/wetter.php
@@ -1,17 +1,21 @@
+<?php
+ foreach(Yii::app()->user->getFlashes() as $key => $message) {
+ echo '<div class="flash-' . $key . '">' . $message . "</div>\n";
+ }
+?>
<div class="ym-grid linearize-level-2">
<div class="ym-g50 ym-gl">
<div class="ym-gbox-left">
<!-- content -->
- <h6>Aktuell</h6>
- <p><?php echo "<img class=\"float-left bordered\" src=\"https://www.google.com/images/weather/".$wetter[0]['icon']."\" alt=\"".$wetter[0]['zustand']."\" />".$wetter[0]['zustand']." bei ".$wetter[0]['temperatur']."&deg; C"; ?></p>
+
+ <p><strong><?php echo $wetter['jetzt']['tag'];?></strong><br /><?php echo "<img class=\"float-right bordered\" src=\"https://www.google.com/images/weather/".$wetter['jetzt']['icon']."\" alt=\"".$wetter['jetzt']['zustand']."\" />".$wetter['jetzt']['zustand']." bei ".$wetter['jetzt']['temperatur']."&deg; C"; ?></p>
</div>
</div>
<div class="ym-g50 ym-gr">
<div class="ym-gbox-right">
- <!-- content -->
- <h6><?php echo $wetter[2]['wochentag'];?></h6>
- <p ><?php echo "<img class=\"float-left bordered\" src=\"https://www.google.com/images/weather/".$wetter[2]['icon']."\" alt=\"".$wetter[2]['zustand']."\" />".$wetter[2]['zustand']." bei min. ".$wetter[2]['tiefsttemperatur']."&deg; C bis max. ".$wetter[2]['hoechsttemperatur']."&deg; C"; ?></p>
+
+ <p ><strong><?php echo $wetter['morgen']['tag'];?></strong><br /><?php echo "<img class=\"float-right bordered\" src=\"https://www.google.com/images/weather/".$wetter['morgen']['icon']."\" alt=\"".$wetter['morgen']['zustand']."\" />".$wetter['morgen']['zustand']." bei min. ".$wetter['morgen']['tiefsttemperatur']."&deg; C bis max. ".$wetter['morgen']['hoechsttemperatur']."&deg; C"; ?></p>
</div>
</div>
</div>