diff --git a/css/open_weather.css b/css/open_weather.css
index 675dd87..3004f01 100644
--- a/css/open_weather.css
+++ b/css/open_weather.css
@@ -17,7 +17,7 @@
 		padding: 0 0 20px;
 	}
 		.view-weather-output .jcarousel-container .jcarousel-clip{
-			width: 850px;
+			width: 680px;
 			margin: 0 auto;
 			overflow: hidden;
 		}
diff --git a/open_weather.admin.inc b/open_weather.admin.inc
index 5d90e5c..55e0278 100644
--- a/open_weather.admin.inc
+++ b/open_weather.admin.inc
@@ -39,6 +39,42 @@ function open_weather_settings() {
     '#description' => t('How often do you want to retrieve new data?'),
   );
 
+  $key = -12 * 60 *60;
+  $timezone_options = array($key => 'UTC-12:00');
+  for ($i = -11; $i < 14; $i++) {
+    if ($i <= 0) {
+      $pre = ($i === 0 ? '-' : '') . $i . ':';
+      for ($j = 45; $j > 0; $j -= 15) {
+        $key = ($i * 60 *60) - ($j * 60);
+        $timezone_options[$key] = 'UTC' . $pre . '-' . $j;
+      }
+      if ($i < 0) {
+        $key = $i * 60 *60;
+        $timezone_options[$key] = 'UTC' . $pre . '00';
+      }
+    }
+    if ($i >= 0) {
+      $pre = $i === 0 ? '' : '+';
+      $pre .= $i . ':';
+      $key = $i * 60 *60;
+      $timezone_options[$key] = 'UTC' . ($i === 0 ? '+/-' : '') . $pre . '00';
+      $pre = '+' . $i . ':';
+      for ($j = 15; $j <= 45; $j += 15) {
+        $key = ($i * 60 *60) + ($j * 60);
+        $timezone_options[$key] = 'UTC' . $pre . $j;
+      }
+    }
+  }
+  $key = 14 * 60 *60;
+  $timezone_options[$key] = 'UTC+14:00';
+  $form['open_weather']['open_weather_timezone'] = array(
+    '#type' => 'select',
+    '#title' => t('Timezone'),
+    '#options' => $timezone_options,
+    '#default_value' => variable_get('open_weather_timezone', 0),
+    '#description' => t('Choose a city timezone.')
+  );
+  
   $intervals = array(
     strtotime("2:00 am") => t('2 AM'),
     strtotime("5:00 am") => t('5 AM'),
@@ -98,7 +134,8 @@ function open_weather_form_submit($form, &$form_state) {
   variable_set("open_weather_city", $values['open_weather_city']);
   variable_set("open_weather_refresh", $values['open_weather_refresh']);
   variable_set("open_weather_intervals", $values['open_weather_intervals']);
-  variable_set("open_weather_current", $values['open_weather_current']);
+  variable_set("open_weather_timezone", $values['open_weather_timezone']);
+  //variable_set("open_weather_current", $values['open_weather_current']);
   variable_set("open_weather_temp_format", $values['open_weather_temp_format']);
 
   drupal_set_message(t("Saved!"));
diff --git a/open_weather.module b/open_weather.module
index f47b4a2..39dde76 100644
--- a/open_weather.module
+++ b/open_weather.module
@@ -6,7 +6,6 @@
  * @author Kevin Herda <kherda@sgcmail.com>
  */
 
-
 /**
  * Implements of hook_perm().
  */
@@ -34,7 +33,7 @@ function open_weather_menu() {
     'file' => 'open_weather.admin.inc',
     'file path' => drupal_get_path('module', 'open_weather'),
   );
-  $items['admin/config/development/openweather'] = array(
+  /*$items['admin/config/development/openweather'] = array(
     'title' => 'Open Weather',
     'description' => 'Configure Open Weather',
     'page callback' => 'drupal_get_form',
@@ -42,7 +41,7 @@ function open_weather_menu() {
     'access arguments' => array('administer site configuration'),
     'file' => 'open_weather_settings.inc',
     'file path' => drupal_get_path('module', 'open_weather'),
-  );
+  );*/
 
   return $items;
 }
@@ -66,22 +65,25 @@ function open_weather_init() {
   drupal_add_css("$path/css/open_weather.css");
 
   $db = db_query("SELECT timestamp FROM {open_weather} LIMIT 1")->fetchObject();
-  $expiretime = $db->timestamp + (variable_get('open_weather_refresh') * 60);
-  if (time() > $expiretime) {
-    open_weather_fill_weather();
+  if (is_object($db)) {
+    $expiretime = $db->timestamp + (variable_get('open_weather_refresh') * 60);
+    if (time() > $expiretime) {
+      open_weather_fill_weather();
+    }
   }
 }
 
-
 /**
  * Implements hook_cron().
  */
 function open_weather_cron() {
 
   $db = db_query("SELECT timestamp FROM {open_weather} LIMIT 1")->fetchObject();
-  $expiretime = $db->timestamp + (variable_get('open_weather_refresh') * 60);
-  if (time() > $expiretime) {
-    open_weather_fill_weather();
+  if (is_object($db)) {
+    $expiretime = $db->timestamp + (variable_get('open_weather_refresh') * 60);
+    if (time() > $expiretime) {
+      open_weather_fill_weather();
+    }
   }
 
   return;
@@ -96,7 +98,6 @@ function open_weather_flush_caches() {
   watchdog('open_weather', 'Cleared all saved weather and reloaded new weather', $variables = array(), $severity = WATCHDOG_NOTICE, $link = NULL);
 
   return;
-
 }
 
 /**
@@ -105,9 +106,9 @@ function open_weather_flush_caches() {
 function open_weather_fill_weather() {
 
   $cityid = variable_get("open_weather_cityid");
-
+  
   if ($cityid) {
-    db_truncate("open_weather")->execute();;
+    db_truncate("open_weather")->execute();
 
     $ch = curl_init();
     curl_setopt($ch, CURLOPT_URL, "http://openweathermap.org/data/2.0/forecast/city/" . $cityid);
@@ -118,6 +119,7 @@ function open_weather_fill_weather() {
     curl_close($ch);
 
     $json = json_decode($output);
+    
 
     $times_allowed = array();
     foreach (variable_get('open_weather_intervals') as $t) {
@@ -125,12 +127,11 @@ function open_weather_fill_weather() {
         array_push($times_allowed, date("g:ia", $t));
       }
     }
-
+    
+    $timezone = variable_get('open_weather_timezone', 0);
     foreach ($json->list as $j) {
-
-      if (in_array(date("g:ia", $j->dt), $times_allowed)) {
-
-        $date = $j->dt;
+      if (in_array(date("g:ia", $j->dt + $timezone), $times_allowed)) {
+        $date = $j->dt + $timezone;
         // $temp = ceil(9/5 * ($j->main->temp - 273.15) + 32)."&deg;";
         // 297
         $temp = open_weather_format($j->main->temp);
@@ -143,19 +144,19 @@ function open_weather_fill_weather() {
         $img = "http://open_weathermap.org/" . $j->img;
 
         $nid = db_insert('open_weather')
-        ->fields(array(
-          'timestamp' => time(),
-          'weather_timestamp' => $date,
-          'city' => variable_get('open_weather_city'),
-          'icon' => $j->img,
-          'temp' => $temp,
-          'low' => $mintemp,
-          'high' => $maxtemp,
-          'humidity' => $humidity,
-          'wind' => $winddeg,
-          'clouds' => $clouds,
-        ))
-        ->execute();
+            ->fields(array(
+              'timestamp' => time(),
+              'weather_timestamp' => $date,
+              'city' => variable_get('open_weather_city'),
+              'icon' => $j->img,
+              'temp' => $temp,
+              'low' => $mintemp,
+              'high' => $maxtemp,
+              'humidity' => $humidity,
+              'wind' => $winddeg,
+              'clouds' => $clouds,
+            ))
+            ->execute();
       }
     }
   }
@@ -180,7 +181,6 @@ function open_weather_format($i) {
     case 'Kelvin':
       $output = $i;
       break;
-
   }
 
   return $output;
