details:   https://code.openbravo.com/erp/devel/pi/rev/6fd3af354f15
changeset: 19796:6fd3af354f15
user:      David Baz Fayos <david.baz <at> openbravo.com>
date:      Tue Feb 26 12:42:36 2013 +0100
summary:   [calendar] Added 'directEventEdit' function to OBCalendar

diffstat:

 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
                       |  11 ++
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/calendar/ob-calendar.js
 |  39 ++++++++++
 2 files changed, 50 insertions(+), 0 deletions(-)

diffs (70 lines):

diff -r 059d60b862a4 -r 6fd3af354f15 
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
--- 
a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
        Tue Feb 26 09:36:29 2013 +0100
+++ 
b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MESSAGE.xml
        Tue Feb 26 12:42:36 2013 +0100
@@ -220,6 +220,17 @@
 <!--165D4AB1311A477C8F95184C0A9F4B2F-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
 <!--165D4AB1311A477C8F95184C0A9F4B2F--></AD_MESSAGE>
 
+<!--16723782BE0C4B23AAF08CA507B9C2B4--><AD_MESSAGE>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  
<AD_MESSAGE_ID><![CDATA[16723782BE0C4B23AAF08CA507B9C2B4]]></AD_MESSAGE_ID>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  
<VALUE><![CDATA[OBUIAPP_CalendarCanNotUpdateEvent]]></VALUE>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  <MSGTEXT><![CDATA[This event can't be 
updated]]></MSGTEXT>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  <MSGTYPE><![CDATA[I]]></MSGTYPE>
+<!--16723782BE0C4B23AAF08CA507B9C2B4-->  
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--16723782BE0C4B23AAF08CA507B9C2B4--></AD_MESSAGE>
+
 <!--16EF30EF95D94CB2A93129015A363315--><AD_MESSAGE>
 <!--16EF30EF95D94CB2A93129015A363315-->  
<AD_MESSAGE_ID><![CDATA[16EF30EF95D94CB2A93129015A363315]]></AD_MESSAGE_ID>
 <!--16EF30EF95D94CB2A93129015A363315-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 059d60b862a4 -r 6fd3af354f15 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/calendar/ob-calendar.js
--- 
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/calendar/ob-calendar.js
  Tue Feb 26 09:36:29 2013 +0100
+++ 
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/calendar/ob-calendar.js
  Tue Feb 26 12:42:36 2013 +0100
@@ -225,6 +225,45 @@
     }
   },
 
+  directEventEdit: function (event, popupCallback) {
+    var callback, openEventDialog, calendar = this;
+    callback = function (dsResponse, data, dsRequest) {
+      if (data && data[0]) {
+        openEventDialog(data[0]);
+      }
+    };
+    openEventDialog = function (event) {
+      if (event) {
+        if (calendar.OBEventEditor) {
+          calendar.eventDialog.event = event;
+          calendar.eventDialog.event.popupCallback = popupCallback;
+          calendar.eventDialog.currentStart = event[calendar.startDateField];
+          calendar.eventDialog.currentEnd = event[calendar.endDateField];
+          calendar.eventDialog.calendar = calendar;
+          try {
+            //To avoid js error due to conflicts with Smartclient default 
EventDialog
+            if (event.canEdit === false && event.canDelete === false) {
+              isc.warn(OB.I18N.getLabel('OBUIAPP_CalendarCanNotUpdateEvent'), 
function () {
+                return true;
+              }, {
+                icon: '[SKINIMG]Dialog/error.png',
+                title: OB.I18N.getLabel('OBUIAPP_Error')
+              });
+            } else {
+              calendar.eventDialog.show();
+            }
+          } catch (e) {}
+        }
+      }
+    };
+
+    if (typeof event === 'string') {
+      this.dataSource.fetchRecord(event, callback);
+    } else {
+      openEventDialog(event);
+    }
+  },
+
   eventResized: function (newDate, event) {
     newDate.setSeconds(0);
     if (this.showEventDialogOnEventResize) {

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to