Commit ead54afb authored by Mechtilde's avatar Mechtilde

New upstream version 3.8.0

parent 58b9f355
......@@ -70,7 +70,4 @@ we'd like to ask you to do:
License
-------
This software is licensed under the [GNU GPL] Version 3
[GNU GPL]: http://www.gnu.org/licenses/gpl.html
Readme template file courtesy: [mozwebqa-test-templates][mozwebqa-test-templates]
[mozwebqa-test-templates]: https://github.com/mozilla/mozwebqa-test-templates
[GNU GPL]: http://www.gnu.org/licenses/gpl.html
......@@ -75,6 +75,9 @@ exchForewardEvent.prototype = {
args.calendar =calendar;
args.onOk = this.callOnRightClick;
args.opener="exchWebService-onForEve";
dump("\nxxxxxxx args"+JSON.stringify(args));
this._window.openDialog("chrome://calendar/content/calendar-event-dialog-attendees.xul","_blank", "chrome,titlebar,modal,resizable",args);
},
......
<?xml version="1.0" encoding="UTF-8"?>
<!--
/* ***** BEGIN LICENSE BLOCK *****
* Version: GPL 3.0
*
* The contents of this file are subject to the General Public License
* 3.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.gnu.org/licenses/gpl.html
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* ## Exchange 2007/2010 Calendar and Tasks Provider.
* ## For Thunderbird with the Lightning add-on.
*
* This work is a combination of the Storage calendar, part of the default Lightning add-on, and
* the "Exchange Data Provider for Lightning" add-on currently, october 2011, maintained by Simon Schubert.
* Primarily made because the "Exchange Data Provider for Lightning" add-on is a continuation
* of old code and this one is build up from the ground. It still uses some parts from the
* "Exchange Data Provider for Lightning" project.
*
* Author: Deepak Kumar
* email: deepk2u@gmail.com
*
*
* This code uses parts of the Microsoft Exchange Calendar Provider code on which the
* "Exchange Data Provider for Lightning" was based.
* The Initial Developer of the Microsoft Exchange Calendar Provider Code is
* Andrea Bittau <a.bittau@cs.ucl.ac.uk>, University College London
* Portions created by the Initial Developer are Copyright (C) 2009
* the Initial Developer. All Rights Reserved.
*
* ***** BEGIN LICENSE BLOCK *****/
-->
<?xml-stylesheet type="text/css" href="chrome://exchangecalendar/skin/calendar-event-dialog-attendees.css"?>
<overlay id="forwardOnRightClick"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/javascript" src="chrome://exchangecalendar/content/calendar-event-dialog-attendees.js"/>
</overlay>
......@@ -93,7 +93,7 @@ exchSettingsOverlay.prototype = {
},
exchWebServicesCheckRequired: function _exchWebServicesCheckRequired() {
if (!this.gexchWebServicesDetailsChecked) {
this._document.getElementById("exchWebService_folderbaserow").hidden = true;
this._document.getElementById("exchWebService_folderpathrow").hidden = true;
......@@ -106,8 +106,8 @@ exchSettingsOverlay.prototype = {
}
else {
this._document.getElementById("exchWebService_detailschecked").setAttribute("required", false);
}
}
if (this._document.getElementById("exchWebService_autodiscover").checked) {
this.exchWebServicesChangeFolderbaseMenuItemAvailability(false);
......@@ -216,6 +216,29 @@ exchSettingsOverlay.prototype = {
this.exchWebServicesCheckRequired();
},
exchWebServicesServerType: function _exchWebServicesServerType(radioGroup)
{
if ( radioGroup.selectedIndex == 1 ){
this._document.getElementById("exchWebService_server").value = "https://outlook.office365.com/EWS/Exchange.asmx";
this._document.getElementById("exchWebService_autodiscover").checked = false;
this._document.getElementById("exchWebService_autodiscover").disabled = true;
this.exchWebServicesgServer = this._document.getElementById("exchWebService_server").value;
this.exchWebServicesgUser = this._document.getElementById("exchWebService_mailbox").value;
this._document.getElementById("exchWebService_windowsuser").value = this.exchWebServicesgUser;
}
else {
this._document.getElementById("exchWebService_server").value = "";
this.exchWebServicesgServer = "";
this._document.getElementById("exchWebService_windowsuser").value = "";
this.exchWebServicesgUser = "";
this._document.getElementById("exchWebService_autodiscover").checked = false;
this._document.getElementById("exchWebService_autodiscover").disabled = false;
}
this.exchWebServicesCheckRequired();
},
exchWebServicesInitMailbox: function _exchWebServicesInitMailbox(aNewValue)
{
this.exchWebServicesgMailbox = aNewValue;
......
......@@ -46,8 +46,17 @@
<script type="application/javascript" src="chrome://exchangecalendar/content/exchangeSettingsOverlay.js"/>
<vbox id="exchWebService-exchange-settings">
<checkbox label="&ecautodiscover;" id="exchWebService_autodiscover" oncommand="tmpSettingsOverlay.exchWebServicesAutodiscoverCheckbox(this);"/>
<vbox id="exchWebService-exchange-settings">
<groupbox>
<caption label="&exchWebServices.exchtype.label;"/>
<radiogroup id="exchWebService_ectype" oncommand="tmpSettingsOverlay.exchWebServicesServerType(this);" >
<radio label="&exchWebServices.hostexch.label;" value="exchange" checked="true"/>
<radio label="&exchWebServices.365exch.label;" value="office365"/>
</radiogroup>
</groupbox>
<groupbox>
<caption label="&exchWebServices.detail.label;"/>
<checkbox label="&ecautodiscover;" id="exchWebService_autodiscover" oncommand="tmpSettingsOverlay.exchWebServicesAutodiscoverCheckbox(this);"/>
<grid flex="1">
<columns>
<column/>
......@@ -156,6 +165,7 @@
</row>
</rows>
</grid>
</groupbox>
</vbox>
</overlay>
......
Version 3.7.0:
- d1b2860 (origin/master, origin/HEAD, master) revert calendar-event-dialog
- df713f4 Merge pull request #458 from enozkan/patch-5
- 180e91a Update preferences.dtd for Turkish locale
Version 3.6.0:
- a2a50be strict mode error fix
- 5db3c8d task sync and strict mode error fix
- 16d56bf translation for preference password fix
- 22850a8 preference password fix
- 1fcaf4c Merge pull request #423 from Dominique-2202/patch-2
- 6b16cad French translation calendar-summary-dialog.dtd
- ae091d5 Merge pull request #422 from Mechtilde/Translation
- d716986 German translation for calendar-summary-dialog.dtd
- 65c222a Merge pull request #415 from enozkan/patch-4
- 1fd65b1 Merge pull request #416 from Trim/erFindContactsOffset
- 23ca0b3 Merge pull request #417 from Trim/erFindCalendarItems
- e537089 Update calendar-summary-dialog.dtd for tr
- 7b4b9fb erFindContacts: give a copy of arrays to callback
- 2235634 erFindContacts: Use server offset instead of own computation
- b7dd3aa erFindContacts: remove trailing blanks and use contact logs instead of main logs
- 9a5b78d erFindContacts: Requests all contacts of address books
- 4681316 erFindCalendarItems: use slice method to clone javascript arrays
- 91ac17f erFindCalendarItems: don't cal too many times possibly big array
- b45a6f4 erFindCalendarItems: use LOG instead of dump
- 3f9de40 string not translatable #409
- 9a82408 its good to have xpi filename with 'v' preceeding the version
Version 3.5.0:
- Fix Thunderbird hangs on startup
- Fix Be more defensive about terminating the loop: under some circumstances startYearDay (and I presume startYear) can be greater than endYear[Day] on entry to the loop.
- Fix Reword log, Bug #373 "Incorrect exhortationto MAIL THIS LINE TO ..."
- Fix Bug #371 "Cannot add custom reminder (alarm) to an event ..."
- Fix Lightning 4.0.2.1
Version 3.4.0:
- New Support Extended to Lightning 4.0.0.1
- New Support Extended to Thunderbird 38.*
- New EWS Tagger - Feature
- New Task Email Follow Up - Feature
- New Language Support For exchange address Book
- New Mail folder Delegation - Feature
- New Automatically set lightning time zone
- New Plug in Builder for deb package
- Fix Reminder Problem
- Fix #190 - Can not add manually add exchange address book
- Fix Calendar not refreshing during suspend/resume
- Fix Busy/Free information wasn’t available
- Fix Ignore domain request for email user names.
- Fix freezing on start up
- Fix Restoring cache
- Fix rtews.dtd typo fixed
- Fix Cant not add Google calendar
- Fix Avoid JS exception in auto completion.
- Fix Also fill out primary email address if local ID is present
- Fix Treat public DLs the same way as private ones in auto completion
- Fix Exchange Icon Update in preference
- Fix Missing Translation English language
- Fix Israel Timezone fix for Daylight savings time
- Fix Password Looping fix
- New Updated French,German Translation
- New Preference for mail properties syncing
- New Preference for Email Follow up
- Change Update suggestions only for stable release
- Change Minimum Refresh time is set to 60
- Change Enabled Cache by default or No disable option for cache
- Change Removed all calendar Refresh time
- Change Optimized syncing method
- Change Enable NTLM by default in Thunderbird
- Change Remove old saved password if user doesn’t choose
- Change Block adding domain entry in autodiscovery window when email used
- Change Platform based CSS thanks to git-hub user "@mariolorenz"
- Change Clear Logging.
Version 3.3.2:
- Bug fix release
Version 3.3.1:
- New New Column for invite mail in message list pane
- New Support for Thunderbird Nightly Aurora 38.0+
......
......@@ -5,7 +5,7 @@
<Description about="urn:mozilla:install-manifest">
<em:id>exchangecalendar@extensions.1st-setup.nl</em:id>
<em:version>3.8.0-beta3</em:version>
<em:version>3.8.0</em:version>
<em:targetApplication>
<Description>
<!-- Thunderbird -->
......
......@@ -331,6 +331,8 @@ try{
this.mPrefs = null;
this.itemCacheById = {};
this.itemCancelQueue = {};
this.itemCacheByStartDate = {};
this.itemCacheByEndDate = {};
this.recurringMasterCache = {};
......@@ -1841,7 +1843,113 @@ calExchangeCalendar.prototype = {
return null;
},
deleteItemCancelled: function _deleteItemCancelled(aItem,aListener) {
if (this.debug) this.logInfo("deleteItemCancelled: "+aItem.title);
if ((aItem.className) && (!aItem.canDelete)) {
if (this.debug) this.logInfo("User is not allowed to delete this item.");
this.notifyOperationComplete(aListener,
Ci.calIErrors.OPERATION_CANCELLED,
Ci.calIOperationListener.DELETE,
aItem.id,
aItem);
return null;
}
if (aItem.id == null) {
if (aListener) {
this.notifyOperationComplete(aListener,
Ci.calIErrors.MODIFICATION_FAILED,
Ci.calIOperationListener.DELETE,
null,
"ID is null for deleteItem");
}
return;
}
// Check if this item is still in cache
if ((aItem.id == aItem.parentItem.id) && (!this.itemCacheById[aItem.id]) && (!this.recurringMasterCache[aItem.uid])) {
if (this.debug) this.logInfo("Item is not in itemCache anymore. Probably not removed from view by Lightning..");
if (aListener) {
this.notifyOperationComplete(aListener,
Cr.NS_OK,
Ci.calIOperationListener.DELETE,
aItem.id,
aItem);
}
return;
}
switch (aItem.calendarItemType) {
case "Single" :
if (this.debug) this.logInfo("-- Single CalendarItemType");
this.removeItemFromCache(aItem);
var self = this;
this.addToQueue( erDeleteItemRequest,
{user: this.user,
mailbox: this.mailbox,
folderBase: this.folderBase,
serverUrl: this.serverUrl,
item: aItem,
folderID: this.folderID,
changeKey: this.changeKey,
actionStart: Date.now(),
itemType: "single"},
function(erDeleteItemRequest) { self.deleteItemOk(erDeleteItemRequest);},
function(erDeleteItemRequest, aCode, aMsg) { self.deleteItemError(erDeleteItemRequest, aCode, aMsg);},
aListener);
break;
case "Occurrence" :
case "Exception" :
if (this.debug) this.logInfo("-- "+aItem.calendarItemType+" CalendarItemType");
this.removeItemFromCache(aItem);
var self = this;
this.addToQueue( erGetOccurrenceIndexRequest,
{user: this.user,
mailbox: this.mailbox,
folderBase: this.folderBase,
serverUrl: this.serverUrl,
masterItem: aItem,
item: aItem,
folderID: this.folderID,
changeKey: this.changeKey,
action: "deleteItem",
itemType: "occurrence",
whichOccurrence: "occurrence" },//dialogArg.answer},
function(erGetOccurrenceIndexRequest, aIndex, aMasterId, aMasterChangeKey) { self.getOccurrenceIndexOk(erGetOccurrenceIndexRequest, aIndex, aMasterId, aMasterChangeKey);},
function(erGetOccurrenceIndexRequest, aCode, aMsg) { self.getOccurrenceIndexError(erGetOccurrenceIndexRequest, aCode, aMsg);},
aListener);
break;
case "RecurringMaster" :
if (this.debug) this.logInfo("-- RecurringMaster CalendarItemType");
this.removeItemFromCache(aItem);
var self = this;
this.addToQueue( erDeleteItemRequest,
{user: this.user,
mailbox: this.mailbox,
folderBase: this.folderBase,
serverUrl: this.serverUrl,
item: aItem,
folderID: this.folderID,
changeKey: this.changeKey,
itemType: "master",
actionStart: Date.now(),
whichOccurrence: "all_occurrences"},
function(erDeleteItemRequest) { self.deleteItemOk(erDeleteItemRequest);},
function(erDeleteItemRequest, aCode, aMsg) { self.deleteItemError(erDeleteItemRequest, aCode, aMsg);},
aListener);
break;
default :
// TODO: This will happen when the sync to/from EWS has not yet happened.
if (this.debug) this.logInfo("WARNING: unknown CalendarItemType="+aItem.calendarItemType);
}
},
// calIOperation deleteItem(in calIItemBase aItem,
// in calIOperationListener aListener);
deleteItem: function _deleteItem(aItem, aListener) {
......@@ -2054,8 +2162,6 @@ calExchangeCalendar.prototype = {
function(erDeleteItemRequest, aCode, aMsg) { self.deleteItemError(erDeleteItemRequest, aCode, aMsg);},
aListener);
}
},
// calIOperation getItem(in string aId, in calIOperationListener aListener);
......@@ -2676,13 +2782,15 @@ calExchangeCalendar.prototype = {
startYearday = 1;
}
}
for (var itemid in ids) {
if (this.itemCacheById[itemid]) {
if (isEvent(this.itemCacheById[itemid])) {
if ( this.deleteCancelledInvitation && this.itemCacheById[itemid].isCancelled && this.itemCacheById[itemid].isInvitation )
{
if (this.debug) this.logInfo("getItemsFromMemoryCache 2: " + "Found Cancelled Item " + this.itemCacheById[itemid].title + " - going to delete from cache" );
this.deleteItem(this.itemCacheById[itemid]);
if (isEvent(this.itemCacheById[itemid])) {
if ( this.deleteCancelledInvitation && this.itemCacheById[itemid].isCancelled )
{
events.push(this.itemCacheById[itemid]);
this.deleteItemCancelled(this.itemCacheById[itemid]);
}
else
{
......
......@@ -49,3 +49,7 @@
<!ENTITY exchWebServices.UserAvailability.label "Die Benutzerverfügbarkeitstatus des Postfachkalenders ist nur sichtbar.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -49,3 +49,8 @@
<!ENTITY exchWebServices.UserAvailability.label "Only user availability status for the mailbox's calendar will be visible.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
\ No newline at end of file
......@@ -50,3 +50,7 @@
<!ENTITY exchWebServices.UserAvailability.label "Seul le status de disponibilité de l'utilsateur du calendrier de cette BAL sera visible.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -49,3 +49,7 @@
<!ENTITY exchWebServices.UserAvailability.label "Only user availability status for the mailbox's calendar will be visible.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -52,3 +52,7 @@
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -49,3 +49,7 @@
<!ENTITY exchWebServices.UserAvailability.label "Только состояние доступности пользователя для календаря почтового ящика будет видно, когда у вас есть права доступа.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -48,3 +48,7 @@
<!ENTITY button.label.folderbrowse "Bläddra">
<!ENTITY exchWebServices.UserAvailability.label "Användarens tillgänglighetsstatus för E-postlådans kalender visas.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
......@@ -49,3 +49,7 @@
<!ENTITY exchWebServices.UserAvailability.label “Yalnızca, posta kutusuna ait takvimin kullanıcı müsaitliği durumu görünür olacak.">
<!ENTITY exchWebServices.exchtype.label "Exchange Type">
<!ENTITY exchWebServices.hostexch.label "Hosted Exchange">
<!ENTITY exchWebServices.365exch.label "Microsoft Office365">
<!ENTITY exchWebServices.detail.label "Details">
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment