Calendar.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. MWF.xDesktop.requireApp("process.Xform", "Calendar", null, false);
  2. MWF.xApplication.cms.Xform.Calendar = MWF.CMSCalendar = new Class({
  3. Extends: MWF.APPCalendar,
  4. clickSelect: function() {
  5. if (!this.calendar) {
  6. MWF.require("MWF.widget.Calendar", function () {
  7. this.calendar = new MWF.widget.Calendar(this.node.getFirst(), {
  8. "style": "xform",
  9. "isTime": (this.json.selectType === "datetime" || this.json.selectType === "time"),
  10. "timeOnly": (this.json.selectType === "time"),
  11. //"target": this.form.node,
  12. "target": this.form.app.content,
  13. "format": this.json.format,
  14. "onComplate": function () {
  15. this.validationMode();
  16. //this.validation();
  17. if (this.validation()) this._setBusinessData(this.getInputData("change"));
  18. this.fireEvent("complete");
  19. }.bind(this),
  20. "onChange": function () {
  21. this.fireEvent("change");
  22. }.bind(this),
  23. "onClear": function () {
  24. this.validationMode();
  25. //this.validation();
  26. if (this.validation()) this._setBusinessData(this.getInputData("change"));
  27. this.fireEvent("clear");
  28. if (!this.node.getFirst().get("value")) if (this.descriptionNode) this.descriptionNode.setStyle("display", "block");
  29. }.bind(this),
  30. "onShow": function () {
  31. if (this.descriptionNode) this.descriptionNode.setStyle("display", "none");
  32. }.bind(this),
  33. "onHide": function () {
  34. if (!this.node.getFirst().get("value")) if (this.descriptionNode) this.descriptionNode.setStyle("display", "block");
  35. }.bind(this)
  36. });
  37. this.calendar.show();
  38. }.bind(this));
  39. } else {
  40. this.node.getFirst().focus();
  41. }
  42. }
  43. });