浏览代码

Merge pull request #179 from prolic/master

as promised, I made the extension to let timestampable work with zenddate type by benjamin eberlei
Gediminas Morkevicius 13 年之前
父节点
当前提交
03a3733308

+ 2 - 1
lib/Gedmo/Timestampable/Mapping/Driver/Annotation.php

@@ -35,7 +35,8 @@ class Annotation implements AnnotationDriverInterface
         'date',
         'time',
         'datetime',
-        'timestamp'
+        'timestamp',
+        'zenddate'
     );
 
     /**

+ 2 - 1
lib/Gedmo/Timestampable/Mapping/Driver/Xml.php

@@ -31,7 +31,8 @@ class Xml extends BaseXml
         'date',
         'time',
         'datetime',
-        'timestamp'
+        'timestamp',
+        'zenddate'
     );
 
     /**

+ 2 - 1
lib/Gedmo/Timestampable/Mapping/Driver/Yaml.php

@@ -36,7 +36,8 @@ class Yaml extends File implements Driver
         'date',
         'time',
         'datetime',
-        'timestamp'
+        'timestamp',
+        'zenddate'
     );
     
     /**

+ 3 - 0
lib/Gedmo/Timestampable/Mapping/Event/Adapter/ODM.php

@@ -27,6 +27,9 @@ final class ODM extends BaseAdapterODM implements TimestampableAdapter
         if (isset($mapping['type']) && $mapping['type'] === 'timestamp') {
             return time();
         }
+        if ($meta->getTypeOfField($field) == 'zenddate') {
+            return new \Zend_Date();
+        }
         return new \DateTime();
     }
 }

+ 3 - 0
lib/Gedmo/Timestampable/Mapping/Event/Adapter/ORM.php

@@ -23,6 +23,9 @@ final class ORM extends BaseAdapterORM implements TimestampableAdapter
      */
     public function getDateValue(ClassMetadata $meta, $field)
     {
+        if ($meta->getTypeOfField($field) == 'zenddate') {
+            return new \Zend_Date();
+        }
         return new \DateTime();
     }
 }