diff --git a/includes/TimelineEvent.class.inc b/includes/TimelineEvent.class.inc
index 697bebb..69a0a41 100644
--- a/includes/TimelineEvent.class.inc
+++ b/includes/TimelineEvent.class.inc
@@ -84,15 +84,25 @@ class TimelineEvent {
    */
   function logic($row) {
 
-  $event = array();
-    foreach (array('start', 'end', 'earliestStart', 'latestEnd') as $event_field) {
+    $event = array();
+    $event_display_elements = array('start', 'end', 'earliestStart', 'latestEnd');
+    foreach ($event_display_elements as $event_display_element) {
 
-      $field = $this->getDefinedFieldUsage($event_field);
-      if (isset($row->{$field['alias']})) {
+      $field = $this->getDefinedFieldUsage($event_display_element);
+      if (isset($row->{'field_'.$field['fieldname']})) {
         // Loading plugin to handle date format
+        $date_field_proxy = $this->view->field[$field['fieldname']]->get_value($row);
+        $date_field = $date_field_proxy[0];
+        $date_start = $date_field['value'];
+        $date_end = $date_field['value2'];
+        if ($event_display_element == 'end') {
+          $date = $date_end;
+        } else {
+          $date = $date_start;
+        }
         if ($conversion_callback = timeline_plugins_get_callback($field['handler'], 'date_sources')) {
-          $event[$event_field]['formated'] = call_user_func($conversion_callback, $row->{$field['alias']}, 'iso8601', array('field' => $field));
-          $event[$event_field]['timestamp'] = call_user_func($conversion_callback, $row->{$field['alias']}, 'timestamp', array('field' => $field));
+          $event[$event_display_element]['formated'] = call_user_func($conversion_callback, $date, 'iso8601', array('date_field' => $date_field));
+          $event[$event_display_element]['timestamp'] = call_user_func($conversion_callback, $date, 'timestamp', array('date_field' => $date_field));
         }
       }
     }
diff --git a/plugins/date_sources/date_field.inc b/plugins/date_sources/date_field.inc
index 27c3997..4c87b02 100644
--- a/plugins/date_sources/date_field.inc
+++ b/plugins/date_sources/date_field.inc
@@ -9,7 +9,7 @@ $plugin = array(
   'name' => t('Date field'),
   'callback' => 'timeline_date_source_date_field_conversion',
   'handler_name' => 'views_handler_field_field',
-  'field_type' => 'date',
+  'field_type' => 'datestamp',
 );
 
 /**
@@ -26,13 +26,14 @@ $plugin = array(
  */
 function timeline_date_source_date_field_conversion($date, $output_format, $options = array()) {
 
-  $input_format = $options['field']['date format'];
+  $input_format = $options['date_field']['date_type'];
   switch ($output_format) {
     case 'iso8601':
       return timeline_convert_to_iso($date, $input_format);
     case 'gregorian':
       return timeline_convert_to_gregorian($date, $input_format);
     case 'timestamp':
+    case 'datestamp': // Not 100% sure these two are the same, but I think they are - @auzigog
       return timeline_convert_to_timestamp($date, $input_format);
   }
 }
diff --git a/timeline.module b/timeline.module
index b69e9b2..c2b3b70 100644
--- a/timeline.module
+++ b/timeline.module
@@ -37,15 +37,20 @@ function timeline_views_api() {
  */
 function timeline_theme() {
   return array(
-    'timeline_nodata' => array(),
+    'timeline_nodata' => array(
+      'file' => 'timeline.theme.inc',
+    ),
     'timeline_bubble_title' => array(
-      'arguments' => array('row' => NULL, 'alias' => NULL),
+      'variables' => array('row' => NULL, 'alias' => NULL),
+      'file' => 'timeline.theme.inc',
     ),
     'timeline_bubble_url' => array(
-      'arguments' => array('row' => NULL, 'link_enabled' => NULL),
+      'variables' => array('row' => NULL, 'link_enabled' => NULL),
+      'file' => 'timeline.theme.inc',
     ),
     'timeline_debug' => array(
-      'arguments' => array('debug_array' => NULL),
+      'variables' => array('debug_array' => NULL),
+      'file' => 'timeline.theme.inc',
     ),
   );
 }
@@ -124,6 +129,7 @@ function timeline_convert_to_gregorian($value, $date_format) {
   $db_timezone = new DateTimezone('UTC');
   switch ($date_format) {
     case 'timestamp':
+    case 'datestamp':
       $date = new DateTime("@$value", $db_timezone);
       break;
     default:
@@ -139,6 +145,7 @@ function timeline_convert_to_iso($value, $date_format) {
   $db_timezone = new DateTimezone('UTC');
   switch ($date_format) {
     case 'timestamp':
+    case 'datestamp':
       $date = new DateTime("@$value", $db_timezone);
       break;
     default:
@@ -154,6 +161,7 @@ function timeline_convert_to_timestamp($value, $date_format) {
   $db_timezone = new DateTimezone('UTC');
   switch ($date_format) {
     case 'timestamp':
+    case 'datestamp':
       $date = new DateTime("@$value", $db_timezone);
       break;
     default:
@@ -164,7 +172,6 @@ function timeline_convert_to_timestamp($value, $date_format) {
   return $date->format('U');
 }
 
-
 /**
  * Check if all library files properly exist.
  *
diff --git a/timeline.theme.inc b/timeline.theme.inc
index 2227915..08f0ebf 100644
--- a/timeline.theme.inc
+++ b/timeline.theme.inc
@@ -100,7 +100,7 @@ function _timeline_include($timeline_theme) {
       // timeline library has been validated and will be added
       elseif ($timeline_library_status == TRUE) {
 
-        $timeline_lib_path = libraries_get_path('simile_timeline');
+        $timeline_lib_path = libraries_get_path('simile_timeline', TRUE);
 
         // Set some global js variables that the library is going to need for proper inclusion and funcionality
         $timeline_inline_js = "var Timeline_ajax_url = '" . $timeline_lib_path . "/timeline_ajax/simile-ajax-api.js'; ";
