# HG changeset patch
# User Asier Lostalé <asier.lostale@openbravo.com>
# Date 1327426003 -3600
# Node ID 8c2fba7eafd0f4ae4de39bf1f6aae3f96cce3220
# Parent  54150562b8d14f53a5ffbb3522e53a5b72297451
fixed bug 19298: fixed Date Time reference UI

diff -r 54150562b8d1 -r 8c2fba7eafd0 modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-datetime.js
--- a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-datetime.js	Tue Jan 24 18:21:32 2012 +0100
+++ b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/form/formitem/ob-formitem-datetime.js	Tue Jan 24 18:26:43 2012 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2011 Openbravo SLU
+ * All portions are Copyright (C) 2011-2012 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -124,86 +124,6 @@
     // if (i > 7 && (typeof (field.onchange)!='undefined'))
     // field.onchange();
     // }
-  },
-  
-  // ** {{{ getDateBlock }}} **
-  //
-  // Return the part of the date denoted by the block (which is a number).
-  // Parameters:
-  // * {{{str_date}}}: the complete date
-  // * {{{block}}}: number from 1 to 3, denotes the part of the date to
-  // return
-  getDateBlock: function(str_date, block){
-    var datePattern = '^(\\d+)[\\-|\\/|/|:|.|\\.](\\d+)[\\-|\\/|/|:|.|\\.](\\d+)$';
-    var dateRegExp = new RegExp(datePattern);
-    if (!dateRegExp.exec(str_date)) {
-      return null;
-    }
-    var dateBlock = [];
-    dateBlock[1] = RegExp.$1;
-    dateBlock[2] = RegExp.$2;
-    dateBlock[3] = RegExp.$3;
-    if (block === 1 || block === '1') {
-      return dateBlock[1];
-    } else if (block === 2 || block === '2') {
-      return dateBlock[2];
-    } else if (block === 3 || block === '3') {
-      return dateBlock[3];
-    } else {
-      return dateBlock;
-    }
-  },
-  
-  // ** {{{ expandDateYear }}} **
-  //
-  // Expands the year and day/month to 4 resp 2 digits.
-  // Parameters:
-  // * {{{dateFormat}}}: the date format in OB syntax
-  // * {{{value}}}: the date to expand
-  expandDateYear: function(dateFormat, value){
-    var str_date = value;
-    var str_dateFormat = dateFormat.replace('yyyy', 'YYYY');
-    if (str_date === null || str_dateFormat.indexOf('YYYY') === -1) {
-      return value;
-    }
-    var centuryReference = 50;
-    var dateBlock = [];
-    dateBlock[1] = this.getDateBlock(str_date, 1);
-    dateBlock[2] = this.getDateBlock(str_date, 2);
-    dateBlock[3] = this.getDateBlock(str_date, 3);
-    
-    if (!dateBlock[1] || !dateBlock[2] || !dateBlock[3]) {
-      return value;
-    }
-    
-    var yearBlock;
-    if (str_dateFormat.substr(1, 1) === 'Y') {
-      yearBlock = 1;
-    } else if (str_dateFormat.substr(7, 1) === 'Y') {
-      yearBlock = 3;
-    } else {
-      return value;
-    }
-    
-    if (dateBlock[yearBlock].length === 1) {
-      dateBlock[yearBlock] = '000' + dateBlock[yearBlock];
-    } else if (dateBlock[yearBlock].length === 2) {
-      if (dateBlock[yearBlock] < centuryReference) {
-        dateBlock[yearBlock] = '20' + dateBlock[yearBlock];
-      } else {
-        dateBlock[yearBlock] = '19' + dateBlock[yearBlock];
-      }
-    } else if (dateBlock[yearBlock].length === 3) {
-      dateBlock[yearBlock] = '0' + dateBlock[yearBlock];
-    } else if (dateBlock[yearBlock].length === 4) {
-      return value;
-    }
-    
-    var dateSeparator = str_dateFormat.toUpperCase().replace(/D/g, '').replace(/M/g, '').replace(/Y/g, '').substr(0, 1);
-    var normalizedDate = dateBlock[1] + dateSeparator + dateBlock[2] +
-    dateSeparator +
-    dateBlock[3];
-    return normalizedDate;
   }
 });
 
@@ -212,7 +132,13 @@
   showTime: true,
   
   blurValue: function() {
-    return isc.OBDateTimeItem.expandDateYear(this.dateFormat, this.getValue());
+    var value = OB.Utilities.Date.OBToJS(this.dateTextField.getElementValue(), OB.Format.dateTime);
+    this.setValue(value);
+    return value;
+  },
+
+  parseValue: function(){
+    return this.dateTextField.getElementValue();
   },
 
   // ** {{{ change }}} **
