commit 93bf6dcba9c8f6ff937795d7ce88ebed4636ebbf
Author: Christian Ehringfeld <c.ehringfeld@t-online.de>
Date:   Mon Aug 10 23:44:34 2015 +0200

    date validator

diff --git a/src/validators/datevalidator.cpp b/src/validators/datevalidator.cpp
index 63a69ce..6427d17 100644
--- a/src/validators/datevalidator.cpp
+++ b/src/validators/datevalidator.cpp
@@ -1,11 +1,32 @@
 #include "datevalidator.h"
-
+#include <QDate>
+#include <QLocale>
 using namespace CuteEntityManager;
 DateValidator::DateValidator() : Validator() {
 
 }
 
 ErrorMsg DateValidator::validateParam(QVariant value, Param param) const {
+    QDate date = value.toDate();
+    if (date.isValid()) {
+        if (param.getName() == "future") {
+            if (date < QDate::currentDate()) {
+                ErrorMsg(param.getName(), "Date is not in the future.");
+            }
+        } else if (param.getName() == "past") {
+            if (date > QDate::currentDate()) {
+                ErrorMsg(param.getName(), "Date is not in the past.");
+            }
 
+        } else if (param.getName() == "min" && date < param.getValue().toDate()) {
+            ErrorMsg(param.getName(),
+                     "Date must be no less than " + param.getValue().toString());
+        } else if (param.getName() == "max" && date > param.getValue().toDate()) {
+            ErrorMsg(param.getName(),
+                     "Date must be no greater than " + param.getValue().toString());
+        }
+    }
+    //cause we don't want to replace functionality of RequiredValidator
+    return ErrorMsg();
 }
 
