diff --git a/3rdparty/when/When.php b/3rdparty/when/When.php
index 5f97f0eb9bf3ed4e8c7a351efbf9f0e1684250c9..f8bb9db0f670e94f117db12e9a48329233534863 100755
--- a/3rdparty/when/When.php
+++ b/3rdparty/when/When.php
@@ -586,7 +586,7 @@ class When
 				}
 			}
 		}
-		elseif($this->gobyday || $interval == "month")
+		elseif($this->gobyday && $interval == "month")
 		{
 			$_mdays = range(1, date('t',mktime(0,0,0,$month,1,$year)));
 			foreach($_mdays as $_mday)
@@ -621,7 +621,7 @@ class When
 		
 		if($interval == "month")
 		{
-			$this->try_date->modify('last day of ' . $this->interval . ' ' . $interval);
+			$this->try_date->modify('+1 month');
 		}
 		else
 		{