diff --git a/mozilla/calendar/base/content/calendar-alarm-dialog.xul b/mozilla/calendar/base/content/calendar-alarm-dialog.xul
index 13dd10d81d5..f38efb961e2 100644
--- a/mozilla/calendar/base/content/calendar-alarm-dialog.xul
+++ b/mozilla/calendar/base/content/calendar-alarm-dialog.xul
@@ -62,7 +62,7 @@
-
+
diff --git a/mozilla/calendar/base/content/calendar-decorated-day-view.xml b/mozilla/calendar/base/content/calendar-decorated-day-view.xml
index 7c8cb2245f3..21779d700ce 100644
--- a/mozilla/calendar/base/content/calendar-decorated-day-view.xml
+++ b/mozilla/calendar/base/content/calendar-decorated-day-view.xml
@@ -38,7 +38,7 @@
- ***** END LICENSE BLOCK *****
-->
-
+
diff --git a/mozilla/calendar/base/content/calendar-decorated-month-view.xml b/mozilla/calendar/base/content/calendar-decorated-month-view.xml
index a89468a106d..866447f2c39 100644
--- a/mozilla/calendar/base/content/calendar-decorated-month-view.xml
+++ b/mozilla/calendar/base/content/calendar-decorated-month-view.xml
@@ -37,7 +37,7 @@
- ***** END LICENSE BLOCK *****
-->
-
+
diff --git a/mozilla/calendar/base/content/calendar-decorated-multiweek-view.xml b/mozilla/calendar/base/content/calendar-decorated-multiweek-view.xml
index 65aee2c4cc7..310c82e3772 100644
--- a/mozilla/calendar/base/content/calendar-decorated-multiweek-view.xml
+++ b/mozilla/calendar/base/content/calendar-decorated-multiweek-view.xml
@@ -37,7 +37,7 @@
- ***** END LICENSE BLOCK *****
-->
-
+
diff --git a/mozilla/calendar/base/content/calendar-decorated-week-view.xml b/mozilla/calendar/base/content/calendar-decorated-week-view.xml
index e2868d2b965..35f8a7b5700 100644
--- a/mozilla/calendar/base/content/calendar-decorated-week-view.xml
+++ b/mozilla/calendar/base/content/calendar-decorated-week-view.xml
@@ -38,7 +38,7 @@
- ***** END LICENSE BLOCK *****
-->
-
+
diff --git a/mozilla/calendar/base/content/calendar-event-dialog.xul b/mozilla/calendar/base/content/calendar-event-dialog.xul
index 847535181f6..438f183367a 100644
--- a/mozilla/calendar/base/content/calendar-event-dialog.xul
+++ b/mozilla/calendar/base/content/calendar-event-dialog.xul
@@ -64,7 +64,7 @@
-
+
diff --git a/mozilla/calendar/base/content/calendar-item-editing.js b/mozilla/calendar/base/content/calendar-item-editing.js
index ce4d710526d..fcc8c6a261e 100644
--- a/mozilla/calendar/base/content/calendar-item-editing.js
+++ b/mozilla/calendar/base/content/calendar-item-editing.js
@@ -218,6 +218,63 @@ function getOccurrenceOrParent(occurrence) {
}
}
+/**
+ * Read default alarm settings from user preferences and apply them to
+ * the event/todo passed in.
+ *
+ * @param aItem The event or todo the settings should be applied to.
+ */
+function setDefaultAlarmValues(aItem)
+{
+ var prefService = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefService);
+ var alarmsBranch = prefService.getBranch("calendar.alarms.");
+
+ if (isEvent(aItem)) {
+ try {
+ if (alarmsBranch.getIntPref("onforevents") == 1) {
+ var alarmOffset = Components.classes["@mozilla.org/calendar/duration;1"]
+ .createInstance(Components.interfaces.calIDuration);
+ try {
+ var units = alarmsBranch.getCharPref("eventalarmunit");
+ alarmOffset[units] = alarmsBranch.getIntPref("eventalarmlen");
+ alarmOffset.isNegative = true;
+ } catch(ex) {
+ alarmOffset.minutes = 15;
+ }
+ aItem.alarmOffset = alarmOffset;
+ aItem.alarmRelated = Components.interfaces.calIItemBase.ALARM_RELATED_START;
+ }
+ } catch (ex) {
+ Components.utils.reportError(
+ "Failed to apply default alarm settings to event: " + ex);
+ }
+ } else if (isToDo(aItem)) {
+ try {
+ if (alarmsBranch.getIntPref("onfortodos") == 1) {
+ // You can't have an alarm if the entryDate doesn't exist.
+ if (!aItem.entryDate) {
+ aItem.entryDate = getSelectedDay().clone();
+ }
+ var alarmOffset = Components.classes["@mozilla.org/calendar/duration;1"]
+ .createInstance(Components.interfaces.calIDuration);
+ try {
+ var units = alarmsBranch.getCharPref("todoalarmunit");
+ alarmOffset[units] = alarmsBranch.getIntPref("todoalarmlen");
+ alarmOffset.isNegative = true;
+ } catch(ex) {
+ alarmOffset.minutes = 15;
+ }
+ aItem.alarmOffset = alarmOffset;
+ aItem.alarmRelated = Components.interfaces.calIItemBase.ALARM_RELATED_START;
+ }
+ } catch (ex) {
+ Components.utils.reportError(
+ "Failed to apply default alarm settings to task: " + ex);
+ }
+ }
+}
+
// Undo/Redo code
var gTransactionMgr = Components.classes["@mozilla.org/transactionmanager;1"]
.createInstance(Components.interfaces.nsITransactionManager);
diff --git a/mozilla/calendar/base/content/calendar-month-view.xml b/mozilla/calendar/base/content/calendar-month-view.xml
index 24564a8aff6..ccfc0fb7606 100644
--- a/mozilla/calendar/base/content/calendar-month-view.xml
+++ b/mozilla/calendar/base/content/calendar-month-view.xml
@@ -40,7 +40,7 @@
- ***** END LICENSE BLOCK *****
-->
-
+
@@ -527,19 +527,19 @@
return;
}
this.removeDropShadows();
- var dragService = Components.classes["@mozilla.org/widget/dragservice;1"]
- .getService(Components.interfaces.nsIDragService);
+ var dragService = Cc["@mozilla.org/widget/dragservice;1"].
+ getService(Ci.nsIDragService);
var session = dragService.getCurrentSession();
session.canDrop = false;
]]>
@@ -1283,10 +1283,10 @@
var boxes = new Array();
// All our boxes are in default tz, so we need these times in them too.
- if (aItem instanceof Components.interfaces.calIEvent) {
+ if (isEvent(aItem)) {
targetDate = aItem.startDate.getInTimezone(this.mTimezone);
finishDate = aItem.endDate.getInTimezone(this.mTimezone);
- } else if (aItem instanceof Components.interfaces.calITodo) {
+ } else if (isToDo(aItem)) {
if (aItem.entryDate) {
targetDate = aItem.entryDate.getInTimezone(this.mTimezone);
if (aItem.dueDate) {
@@ -1378,8 +1378,7 @@
-
+
-
+