[Openvas-commits] r12147 - in trunk/gsd: . src

scm-commit@wald.intevation.org scm-commit at wald.intevation.org
Mon Nov 21 15:30:14 CET 2011


Author: mattm
Date: 2011-11-21 15:30:13 +0100 (Mon, 21 Nov 2011)
New Revision: 12147

Modified:
   trunk/gsd/ChangeLog
   trunk/gsd/src/delegate_date_time.cpp
Log:
	* src/delegate_date_time.cpp (delegate_date_time::modifyDate): Try parse
	date in ISO format before ctime format.

Modified: trunk/gsd/ChangeLog
===================================================================
--- trunk/gsd/ChangeLog	2011-11-21 13:58:28 UTC (rev 12146)
+++ trunk/gsd/ChangeLog	2011-11-21 14:30:13 UTC (rev 12147)
@@ -1,3 +1,8 @@
+2011-11-21  Matthew Mundell <matthew.mundell at greenbone.net>
+
+	* src/delegate_date_time.cpp (delegate_date_time::modifyDate): Try parse
+	date in ISO format before ctime format.
+
 2011-11-10  Michael Wiegand <michael.wiegand at greenbone.net>
 
 	* CMakeLists.txt: Adjust source locations in install command to enable

Modified: trunk/gsd/src/delegate_date_time.cpp
===================================================================
--- trunk/gsd/src/delegate_date_time.cpp	2011-11-21 13:58:28 UTC (rev 12146)
+++ trunk/gsd/src/delegate_date_time.cpp	2011-11-21 14:30:13 UTC (rev 12147)
@@ -332,28 +332,54 @@
 {
   if (date.length()>0)
     {
-      QStringList cleaned = date.split (" ");
-      for (int i = 0; i < cleaned.size()-1; i++)
-        {
-          if (cleaned[i].length() == 0)
-            {
-              cleaned[i] = cleaned[i+1];
-              cleaned[i+1] = "";
-            }
-         }
-       if (cleaned.last() == "")
-         cleaned.removeLast();
-       cleaned [3] = cleaned [4];
-       cleaned.removeLast ();
-       QDate d = QDate::fromString (cleaned.join(" "));
-       QString ret = d.shortMonthName (d.month ()) + " " +
-                     QString::number (d.day ()) + " " +
-                     QString::number ( d.year ());
-       return ret;
-     }
-   else
-     {
-       return "";
-     }
+	  QDateTime qdate;
+
+	  /* Try parse ISO format. */
+	  qdate = QDateTime::fromString (date, Qt::ISODate);
+	  if (qdate.isValid ())
+		{
+		  QString ret;
+		  QDate d;
+		  d = qdate.date ();
+		  ret = d.shortMonthName (d.month ())
+				 + " "
+				 + QString::number (d.day ())
+				 + " "
+				 + QString::number (d.year ());
+          return ret;
+		}
+	  else
+	    {
+		  QStringList cleaned;
+
+		  /* Failed, try parse ctime format. */
+		  cleaned = date.split (" ");
+		  if (cleaned.size () < 5)
+			{
+
+			}
+		  for (int i = 0; i < cleaned.size()-1; i++)
+			{
+			  if (cleaned[i].length() == 0)
+				{
+				  cleaned[i] = cleaned[i+1];
+				  cleaned[i+1] = "";
+				}
+			}
+		  if (cleaned.last() == "")
+			cleaned.removeLast();
+		  cleaned [3] = cleaned [4];
+		  cleaned.removeLast ();
+		  QDate d = QDate::fromString (cleaned.join(" "));
+		  QString ret = d.shortMonthName (d.month ()) + " " +
+						QString::number (d.day ()) + " " +
+						QString::number ( d.year ());
+          return ret;
+		}
+	}
+  else
+    {
+      return "";
+    }
 }
 



More information about the Openvas-commits mailing list