コード例 #1
0
 /**
  * @param $args
  */
 public function listChangeCities($args)
 {
     if (empty($args)) {
         return false;
     }
     $api = new \models\ApiModel();
     $towns = $api->getCities();
     $current = $args['current'];
     $this->smarty->assign('cities', $towns);
     $this->smarty->assign('current', $current);
     $this->smarty->display('CityToChange.tpl');
 }
コード例 #2
0
ファイル: ForecastCron.php プロジェクト: pirateunix/Forecast
 public function add_forecast()
 {
     $api = new \models\ApiModel();
     $towns = $api->getCities();
     $config = \config\Config::getInstance();
     $db = new \Mongo("mongodb://" . $config['db_host'] . ":" . $config['db_port'] . "/" . $config['db_database']);
     $collection = $db->selectCollection('ngs', 'forecasts');
     foreach ($towns as $town) {
         $decoded = $api->getForecast($town['name']);
         foreach ($decoded['forecasts'] as $forecasts) {
             foreach ($forecasts['hours'] as $hours) {
                 if ($hours['hour'] == '12') {
                     $mas = array('temperature' => $hours['temperature']['avg'], 'pressure' => $hours['pressure']['avg'], 'humidity' => $hours['humidity']['avg'], 'wind' => array('speed' => $hours['wind']['speed']['avg'], 'direction' => $hours['wind']['direction']['title']), 'cloud' => $hours['cloud']['title'], 'precipitation' => $hours['precipitation']['title']);
                 }
             }
             $document = array('date' => new \MongoDate(strtotime($forecasts['date'])), 'city' => $town['name'], 'forecast' => $mas);
             $collection->update(array('city' => $document['city'], 'date' => $document['date']), array('$set' => $document), array('upsert' => true));
         }
     }
 }