2006-08-31 00:43:51 +02:00
|
|
|
2006-08-30 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-31 01:15:27 +02:00
|
|
|
* UI/Templates/SchedulerUI/UIxAppointmentEditor.wox: completely
|
|
|
|
rearranged the layout.
|
|
|
|
|
2006-08-31 01:14:41 +02:00
|
|
|
* UI/WebServerResources/UIxAppointmentEditor.js: added code to
|
|
|
|
manage showing and hiding appointment details.
|
|
|
|
|
2006-08-31 01:11:12 +02:00
|
|
|
* SoObjects/SOGo/SOGoUserFolder.m ([SOGoUserFolder
|
|
|
|
-privateContacts:inContext:]): init the SOGoAppointmentFolder's
|
|
|
|
timezone by taking the current user's timezone setting.
|
|
|
|
|
2006-08-31 01:10:05 +02:00
|
|
|
* SoObjects/Appointments/SOGoAptMailNotification.m: same as below.
|
|
|
|
|
2006-08-31 01:09:35 +02:00
|
|
|
* SoObjects/Appointments/SOGoAppointmentObject.m
|
|
|
|
([SOGoAppointmentObject -changeParticipationStatus:inContext:]):
|
|
|
|
set default timezone to EST, although this code should be
|
|
|
|
rewritten to handle a system and a user default value.
|
|
|
|
|
2006-08-31 01:08:15 +02:00
|
|
|
* UI/Scheduler/UIxTimeDateControl.m ([UIxTimeDateControl
|
|
|
|
-takeValuesFromRequest:_rqinContext:_ctx]): enhanced method to
|
|
|
|
take the values from the hour and minute INPUTs when data is
|
|
|
|
POSTed since we no longer use the UIxTimeSelector component.
|
|
|
|
([UIxTimeDateControl -selectableHours])
|
|
|
|
([UIxTimeDateControl -selectableMinutes]): new methods used by the
|
|
|
|
template SELECTs to display reasonable and acceptable values
|
|
|
|
instead of all the possibilities.
|
|
|
|
|
2006-08-31 01:02:53 +02:00
|
|
|
* UI/WebServerResources/generic.js: adapted code for the new
|
|
|
|
implementation of the UIxContactSelector component (added a
|
|
|
|
"remove" button, removed the previous INPUT and replaced them with
|
|
|
|
links of class "button").
|
|
|
|
|
2006-08-31 00:59:56 +02:00
|
|
|
* UI/Scheduler/UIxTimeDateControl.h: separated interface from
|
|
|
|
UIxTimeDateControl.m.
|
|
|
|
|
2006-08-31 00:59:03 +02:00
|
|
|
* UI/Scheduler/UIxCalDayTable.m ([UIxCalDayTable -currentAppointmentDay])
|
|
|
|
([UIxCalDayTable -currentAppointmentHour]): new methods that
|
|
|
|
returns correctly formatted values used as attributes for JS code.
|
|
|
|
|
2006-08-31 00:57:18 +02:00
|
|
|
* UI/Contacts/UIxContactSelector.m ([UIxContactSelector
|
|
|
|
-initialContactsAsString]): renamed implementation of
|
|
|
|
initialParticipants.
|
|
|
|
([UIxContactSelector -currentContactId])
|
|
|
|
([UIxContactSelector -currentContactName]): new methods used when
|
|
|
|
listing the initial contacts in the widget. Currently, both return
|
|
|
|
the person's cn but the latter should ultimately return a user
|
|
|
|
fullname.
|
|
|
|
|
2006-08-31 00:55:23 +02:00
|
|
|
* UI/Contacts/UIxContactSelector.h: separated interface from
|
|
|
|
UIxContactSelector.m.
|
|
|
|
|
2006-08-31 00:46:16 +02:00
|
|
|
* UI/Scheduler/UIxDatePickerScript.[hm]: component removed since
|
|
|
|
all javascript code is now put in Scheduler.js/generic.js.
|
|
|
|
|
2006-08-31 00:45:19 +02:00
|
|
|
* UI/Scheduler/NSCalendarDate+UIx.[hm]: category removed, code
|
|
|
|
moved into NSCalendarDate+Scheduler instead.
|
|
|
|
|
2006-08-31 00:43:51 +02:00
|
|
|
* SoObjects/Appointments/SOGoAppointmentFolder.m
|
|
|
|
([SOGoAppointmentFolder -setTimeZone:newTZ]): new method to
|
|
|
|
configure the timezone from SOGoUserFolder when the instance is
|
|
|
|
being created.
|
|
|
|
([SOGoAppointmentFolder -viewTimeZone]): MET was removed. Returns
|
|
|
|
the value of the new "timezone" ivar.
|
|
|
|
|
2006-08-25 22:45:16 +02:00
|
|
|
2006-08-25 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-25 22:48:54 +02:00
|
|
|
* UI/WebServerResources/SchedulerUI.{css,js}: added a tabview with
|
|
|
|
the date selector in the first page and the container of the
|
|
|
|
future calendar selector in the second page.
|
|
|
|
|
2006-08-25 22:46:29 +02:00
|
|
|
* UI/WebServerResources/generic.js: added code for handling tabbed
|
|
|
|
views.
|
|
|
|
|
2006-08-25 22:45:16 +02:00
|
|
|
* UI/Common/UIxPageFrame.m ([UIxPageFrame -productFrameworkName]):
|
|
|
|
returns the bundle name associated to the current running product.
|
|
|
|
|
2006-08-24 20:56:24 +02:00
|
|
|
2006-08-24 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-25 22:40:13 +02:00
|
|
|
* UI/WebServerResources/UIxAppointmentEditor.js: fixed the AJAX
|
|
|
|
exception by invoking a timeout on the opener rather than invoking
|
|
|
|
the list refresh method.
|
|
|
|
|
2006-08-24 21:18:40 +02:00
|
|
|
* UI/Scheduler/UIxCalDayView.m ([UIxCalDayView -labelForDay]):
|
|
|
|
removed method.
|
|
|
|
|
2006-08-24 21:17:14 +02:00
|
|
|
* UI/Scheduler/UIxCalWeekView.m ([UIxCalWeekView -weekBeforePrevWeekQueryParameters])
|
|
|
|
([UIxCalWeekView -prevWeekQueryParameters])
|
|
|
|
([UIxCalWeekView -nextWeekQueryParameters])
|
|
|
|
([UIxCalWeekView -weekAfterNextWeekQueryParameters]): new methods
|
|
|
|
that return the dates relatively to the current day.
|
|
|
|
([UIxCalWeekView -lastWeekName])
|
|
|
|
([UIxCalWeekView -currentWeekName])
|
|
|
|
([UIxCalWeekView -nextWeekName])
|
|
|
|
([UIxCalWeekView -weekAfterNextWeekName])
|
|
|
|
([UIxCalWeekView -_weekNumberWithOffsetFromToday:offset]): new
|
|
|
|
methods that returns the label for the corresponding weeks.
|
|
|
|
|
2006-08-24 20:56:24 +02:00
|
|
|
* UI/Scheduler/UIxCalDayTable.[hm]: new class module/component
|
|
|
|
used by UIxCalDayView and UIxCalWeekView to display the events
|
|
|
|
occuring in one or more days.
|
|
|
|
|
2006-08-22 21:16:12 +02:00
|
|
|
2006-08-22 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-22 21:24:48 +02:00
|
|
|
* UI/Scheduler/UIxCalMainView.m: extended class to populate the
|
|
|
|
entries in the new "monthMenu" and "yearMenu".
|
|
|
|
|
2006-08-22 21:23:58 +02:00
|
|
|
* UI/Scheduler/UIxCalDayView.m ([UIxCalDayView -labelForDay]): new
|
|
|
|
method to return the current day as a string formatted depending
|
|
|
|
on the current locale.
|
|
|
|
|
2006-08-22 21:20:42 +02:00
|
|
|
* UI/Scheduler/UIxCalAptListView.m ([UIxCalAptListView -startDate])
|
|
|
|
([UIxCalAptListView -endDate]): "today" is now the default filter
|
|
|
|
for displayed events.
|
|
|
|
([UIxCalAptListView -currentSerialDay]): new method returning the
|
|
|
|
date of the current enumerated appointment in serial form
|
|
|
|
(yyyymmdd).
|
|
|
|
|
2006-08-22 21:18:30 +02:00
|
|
|
* UI/WebServerResources/SchedulerUI.js: added code to select the
|
|
|
|
relevant day when an appointment is selected. Added code to popup
|
|
|
|
a month and a year menu whenever the header entries are clicked in
|
|
|
|
the calendar widget.
|
|
|
|
|
2006-08-22 21:16:12 +02:00
|
|
|
* UI/WebServerResources/generic.js: made addClassName and
|
|
|
|
removeClassName methods of HTMLElement.
|
|
|
|
|
2006-08-21 19:43:36 +02:00
|
|
|
2006-08-21 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-22 00:36:33 +02:00
|
|
|
* UI/WebServerResources/MailerUI.js: fixed the contact creation
|
|
|
|
from email addresses.
|
|
|
|
|
|
|
|
* UI/WebServerResources/generic.js: centralized the search-related
|
|
|
|
functions here since the same code was used across the 3
|
|
|
|
applications.
|
|
|
|
|
2006-08-22 00:29:35 +02:00
|
|
|
* UI/Scheduler/UIxCalAptListView.m ([UIxCalAptListView -startDate])
|
|
|
|
([UIxCalAptListView -endDate]): return the required dates needed
|
|
|
|
depending on the value given to the "filterpopup" url parameter.
|
|
|
|
|
2006-08-22 00:24:34 +02:00
|
|
|
* UI/Common/UIxToolbar.m ([UIxToolbar -buttonLabel]): reduced the
|
|
|
|
code by invoking UIxComponent's labelForKey:.
|
|
|
|
|
2006-08-22 00:23:47 +02:00
|
|
|
* UI/SOGoUI/UIxComponent.m ([UIxComponent -labelForKey:]): use
|
|
|
|
[self pageResourceManager] instead of [self resourceManager].
|
|
|
|
|
2006-08-21 19:45:35 +02:00
|
|
|
* UI/Contacts/UIxContactEditorBase.m: invokes
|
|
|
|
globallyUniqueObjectId on the clientobject's class instead of the
|
|
|
|
hardcoded "SOGoFolder".
|
|
|
|
|
|
|
|
* UI/Contacts/UIxContactFoldersView.m ([UIxContactFoldersView
|
|
|
|
-newAction]): redirect the "new" action to the personal (default)
|
|
|
|
contact folder.
|
|
|
|
|
2006-08-21 19:43:36 +02:00
|
|
|
* SoObjects/SOGo/SOGoObject.m ([SOGoObject
|
|
|
|
+objectWithName:inContainer:]): new constructor.
|
|
|
|
|
|
|
|
* SoObjects/Contacts/SOGoContactGCSFolder.m ([SOGoContactGCSFolder
|
|
|
|
-lookupContactWithId:recordId]): always create a contact object,
|
|
|
|
even if it does not exist.
|
|
|
|
|
2006-08-19 00:35:44 +02:00
|
|
|
2006-08-18 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-19 00:55:46 +02:00
|
|
|
* UI/Scheduler/UIxCalMainView.[hm]: new class to serve as a pseudo
|
|
|
|
component that lays out the different components of SOGoCalendar.
|
|
|
|
Only serves as an Objective-C counterpart to its xml template.
|
|
|
|
|
2006-08-19 00:53:54 +02:00
|
|
|
* UI/Scheduler/UIxCalInlineMonthOverview.h: interface extracted
|
|
|
|
from its .m file.
|
|
|
|
|
2006-08-19 00:52:55 +02:00
|
|
|
* UI/Scheduler/UIxCalFilterPanel.[hm]: new class designed to
|
|
|
|
display a widget to handle the information displayed in the
|
|
|
|
appointments list. Not currently used, lacks implementation.
|
|
|
|
|
2006-08-19 00:51:44 +02:00
|
|
|
* UI/Scheduler/UIxCalDateSelector.[hm]: new class designed to
|
|
|
|
display a calendar as a dynamic widget from where one can select
|
|
|
|
the current visible day.
|
|
|
|
|
2006-08-19 00:50:15 +02:00
|
|
|
* UI/Scheduler/NSCalendarDate+Scheduler.[hm]: category code
|
|
|
|
extracted from UIxCalInlineMonthOverview.m.
|
|
|
|
|
2006-08-19 00:46:45 +02:00
|
|
|
* UI/Scheduler/UIxDatePicker.m: removed the jsPopup, jsCode and
|
|
|
|
calendarPageURL methods. The javascript code is handled by .js
|
|
|
|
files as much as possible...
|
|
|
|
|
2006-08-19 00:40:04 +02:00
|
|
|
* UI/WebServerResources/ContactsUI.js,
|
|
|
|
UI/WebServerResources/MailerUI.js: adapted to the code refactoring
|
|
|
|
in generic.js.
|
|
|
|
|
|
|
|
* UI/WebServerResources/SchedulerUI.js: implemented functions to
|
|
|
|
handle the new widgets. XmlHTTPRequest code taken from
|
|
|
|
MailerUI.js.
|
|
|
|
|
|
|
|
* UI/WebServerResources/generic.js: put some functions related to
|
|
|
|
element selections as methods to HTMLElement and HTMLTableElement.
|
|
|
|
|
2006-08-19 00:35:44 +02:00
|
|
|
* UI/Scheduler/UIxCalAptListView.[hm]: new class designed to
|
|
|
|
display the list of appointments (embodies the code-size of
|
|
|
|
UIxCalAptListView; answers to the "aptlist" method).
|
|
|
|
|
2006-08-15 22:59:06 +02:00
|
|
|
2006-08-15 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-16 00:06:05 +02:00
|
|
|
* UI/Scheduler/UIxCalWeekOverview.m ([UIxCalWeekOverview
|
|
|
|
-correctURLAction]): new short action method replacing the method
|
|
|
|
below by taking far less code.
|
|
|
|
|
2006-08-16 00:04:37 +02:00
|
|
|
* SoObjects/Appointments/SOGoAppointmentFolder.m
|
|
|
|
([SOGoAppointmentFolder -GETAction:]): removed method. Replaced
|
|
|
|
with an action in the view-related code.
|
|
|
|
|
2006-08-15 22:59:06 +02:00
|
|
|
* UI/Scheduler/UIxAppointmentEditor.m: invoke
|
|
|
|
"stringByEscapingHTMLString" on the resulting value to avoid
|
|
|
|
issues with accented characters.
|
|
|
|
([-jsCode]): removed method since the javascript code was merged
|
|
|
|
into SchedulerUI.js.
|
|
|
|
|
2006-08-14 22:29:14 +02:00
|
|
|
2006-08-14 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-14 22:43:55 +02:00
|
|
|
* UI/Scheduler/iCalPerson+UIx.m ([iCalPerson +personWithUid:]):
|
|
|
|
new class method that returns an iCalPerson based on the UID given
|
|
|
|
as param.
|
|
|
|
|
2006-08-14 22:38:41 +02:00
|
|
|
* UI/Contacts/UIxContactsListViewContainerBase.m:
|
|
|
|
UIxContactsListViewContainer renamed to serve as a base class for
|
|
|
|
the contact lists in both the contact editor and the contact
|
|
|
|
selectors.
|
|
|
|
|
2006-08-14 22:35:11 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactLDAPFolder.m
|
|
|
|
([SOGoContactLDAPFolder
|
|
|
|
-LDAPSetHostname:setPort:setBindDN:setBindPW:setContactIdentifier:
|
|
|
|
setUserIdentifier:setRootDN:]): an LDAP field specifying the
|
|
|
|
loginname of the users can now be specified.
|
|
|
|
|
2006-08-14 22:31:49 +02:00
|
|
|
* UI/WebServerResources/generic.js: added code to manage contact
|
|
|
|
lists through the new implementation of the UIxContactSelector.
|
|
|
|
|
2006-08-14 22:30:19 +02:00
|
|
|
* UI/Templates: put the templates related to SchedulerUI in its
|
|
|
|
own directory.
|
|
|
|
|
2006-08-14 22:29:14 +02:00
|
|
|
* SoObjects/Contacts/NGLdapEntry+Contact.m ([NGLdapEntry
|
|
|
|
-asDictionaryWithAttributeNames:withUID:andCName:cName]): add an
|
|
|
|
entry for "uid" with the field name representing the login name of
|
|
|
|
the user in the corresponding LDAP branch.
|
|
|
|
|
2006-08-11 00:03:48 +02:00
|
|
|
2006-08-10 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
|
|
|
* SoObjects/Contacts/SOGoContactGCSFolder.m ([SOGoContactGCSFolder
|
|
|
|
-lookupName:_keyinContext:_ctxacquire:_flag]): when the HTTP
|
|
|
|
request is a PUT, always create an entry, even if we're not sure
|
|
|
|
it does exist.
|
|
|
|
|
2006-08-09 22:58:00 +02:00
|
|
|
2006-08-09 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-09 23:35:54 +02:00
|
|
|
* UI/WebServerResources/ContactsUI.js: implemented live-search.
|
|
|
|
|
2006-08-09 23:31:28 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactFolders.m ([SOGoContactFolders
|
|
|
|
-appendSystemSourcesInContext:context]): populated method with
|
|
|
|
code that creates entries mapped to instances SOGoContactFolder,
|
|
|
|
based on the configuration found in the NSUserDefaults under the
|
|
|
|
key "SOGoLDAPAddressBooks".
|
|
|
|
([SOGoContactFolders
|
|
|
|
-lookupName:nameinContext:contextacquire:acquire]):
|
|
|
|
"contactsources" do not exist anymore, SOGoContactFolder was split
|
|
|
|
into two classes: SOGoContactGCSFolder and SOGoContactLDAPFolder
|
|
|
|
and one protocol: SOGOContactFolder, instead.
|
|
|
|
([SOGoContactFolders -contactFolders]): new accessor used by the
|
|
|
|
views of SOGoContactXXXFolder to list the possible sources.
|
|
|
|
|
2006-08-09 23:25:23 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactObject.h: new protocol that
|
|
|
|
defines the methods that UIxContactsView, ..Editor and so on...
|
|
|
|
can expect.
|
|
|
|
|
2006-08-09 23:23:57 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactFolder.h: new protocol that
|
|
|
|
defines the methods that UIxContactsListViewBase expects as well
|
|
|
|
as the data fields returned in the contact lists.
|
|
|
|
|
2006-08-09 23:22:26 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactLDAPFolder.[hm]: new class that
|
|
|
|
returns entries an LDAP server. Conforms to the new
|
|
|
|
SOGOContactFolder protocol.
|
|
|
|
|
2006-08-09 23:21:40 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactLDAPEntry.[hm]: new class that
|
|
|
|
returns a vCard based on contact entries from an LDAP server.
|
|
|
|
Conforms to the new SOGOContactObject protocol.
|
|
|
|
|
2006-08-09 23:15:49 +02:00
|
|
|
* SoObjects/Contacts/NGVCardSimpleValue+Contact.m
|
|
|
|
([NGVCardSimpleValue -vCardEntryString]): generates the correct
|
|
|
|
entry for the textual representation of the vCard.
|
|
|
|
|
|
|
|
* SoObjects/Contacts/NGVCardSimpleValue+Contact.[hm]: new class
|
|
|
|
extension.
|
|
|
|
|
2006-08-09 23:14:38 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactGCSEntry.[hm]: new module name of
|
|
|
|
"SOGoContactObject".
|
|
|
|
|
2006-08-09 23:13:22 +02:00
|
|
|
* SoObjects/Contacts/NGVCard+Contact.m ([NGVCard -asString]): new
|
|
|
|
method that generates a textual representation of the vcard.
|
|
|
|
|
|
|
|
* SoObjects/Contacts/NGVCard+Contact.[hm]: new class extension.
|
|
|
|
|
2006-08-09 23:11:49 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactGCSFolder.[hm]: new module name of
|
|
|
|
"SOGoContactFolder".
|
|
|
|
|
2006-08-09 23:01:03 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactSource.h,
|
|
|
|
SoObjects/Contacts/SOGoPersonalAB.[hm]: unused classes and
|
|
|
|
protocols.
|
|
|
|
|
2006-08-09 22:58:00 +02:00
|
|
|
* SoObjects/Contacts/NGLdapEntry+Contact.m ([NGLdapEntry
|
|
|
|
-singleAttributeWithName:key]): new method that returns the first
|
|
|
|
object associated with an ldap key (where generally one value is
|
|
|
|
returned by key).
|
|
|
|
([NGLdapEntry
|
|
|
|
-asDictionaryWithAttributeNames:attributeNamesandCName:cName]):
|
|
|
|
map the entry into an NSDictionary for processing by
|
|
|
|
UIxContactsListViewBase.m with the least possible overhead.
|
|
|
|
|
|
|
|
* SoObjects/Contacts/NGLdapEntry+Contact.[hm]: new class
|
|
|
|
extension.
|
|
|
|
|
2006-08-05 00:46:19 +02:00
|
|
|
2006-08-04 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-05 01:02:13 +02:00
|
|
|
* SoObjects/SOGo/SOGoUserFolder.m ([SOGoUserFolder
|
|
|
|
-privateContacts:inContext:]): now returns an instance of
|
|
|
|
SOGoContactFolders.
|
|
|
|
|
2006-08-05 01:00:32 +02:00
|
|
|
* UI/Contacts/UIxContactsListViewContainer.m
|
|
|
|
([UIxContactsListViewContainer -contactFolderName]): new method to
|
|
|
|
return the absolute path to the current contact folder, called
|
|
|
|
from within the template.
|
|
|
|
|
2006-08-05 00:59:14 +02:00
|
|
|
* UI/Templates/ContactsUI/UIxContactsListViewContainer.wox: added
|
|
|
|
JS code to initialize the 'currentContactFolder' generic var.
|
|
|
|
|
|
|
|
* SoObjects/Contacts/SOGoContactFolder.m ([SOGoContactFolder
|
|
|
|
+contactFolderWithSource:inContainer:andName:]): new class
|
|
|
|
method meant to return an instance connected to the specified
|
|
|
|
source. Currently useless but won't be anymore in the next few
|
|
|
|
days.
|
|
|
|
|
2006-08-05 00:54:21 +02:00
|
|
|
* SoObjects/SOGo/SOGoUserFolder.h: commented out declaration of
|
|
|
|
the "lookupFreeBusyObject" method since it does not exist.
|
|
|
|
|
2006-08-05 00:51:42 +02:00
|
|
|
* UI/Contacts/UIxContactFoldersView.[hm]: new class module serving
|
|
|
|
as a "view" for the SOGoContactFolders object. Does nothing but
|
|
|
|
redirect the browser to the URL of the personal address book of
|
|
|
|
the user. It does not even have a template.
|
|
|
|
|
2006-08-05 00:49:24 +02:00
|
|
|
* SoObjects/Contacts/SOGoPersonalAB.[hm]: new class module
|
|
|
|
implementing the SOGoContactSource protocol. Does nothing
|
|
|
|
currently but will be used to implement access to the personal
|
|
|
|
address book of the user stored in the SOGo database.
|
|
|
|
|
2006-08-05 00:47:46 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactSource.h: new "SOGoContactSource"
|
|
|
|
protocol defining an API common to all possible types of contact
|
|
|
|
sources.
|
|
|
|
|
2006-08-05 00:46:19 +02:00
|
|
|
* SoObjects/Contacts/SOGoContactFolders.[hm]: new class module
|
|
|
|
serving as the root of the contact folders available to the
|
|
|
|
current user. Correctly lists the contact sources in webdav.
|
|
|
|
|
2006-08-03 16:22:46 +02:00
|
|
|
2006-08-03 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-03 23:34:19 +02:00
|
|
|
* UI/MailerUI/UIxMailAccountsView.m ([UIxMailAccountsView
|
|
|
|
-composeAction]): new action method that permits external object
|
|
|
|
to write a message from the default (primary) account.
|
|
|
|
|
|
|
|
* UI/Contacts/UIxContactEditorBase.m ([UIxContactEditorBase
|
|
|
|
-initSnapshot]): new method with code taken from "defaultAction"
|
|
|
|
but needed for others.
|
|
|
|
([UIxContactEditorBase -writeAction]): new action designed to
|
|
|
|
compose the correct URL needed to obtain the MailerUI's email
|
|
|
|
editor with the correct "mailto" parameter.
|
|
|
|
|
2006-08-03 23:27:22 +02:00
|
|
|
* UI/Common/UIxSortableTableHeader.m: moved from MailerUI to
|
|
|
|
Common so that other modules can use it.
|
|
|
|
|
2006-08-03 23:25:33 +02:00
|
|
|
* UI/Contacts/UIxContactsListViewContainer.m: container to make it
|
|
|
|
easier to manage both ajax and non-ajax requests.
|
|
|
|
|
2006-08-03 23:23:30 +02:00
|
|
|
* UI/Contacts/UIxContactsFilterPanel.m: clone of
|
|
|
|
UIxMailFilterPanel, but applicable to contact lists.
|
|
|
|
|
2006-08-03 16:55:58 +02:00
|
|
|
* SoObjects/Contacts/NSDictionary+Contact.m ([NSDictionary
|
|
|
|
-vcardContentFromSOGoContactRecord]): use the new standard methods
|
|
|
|
created for each type of entry. If a line is determined to not
|
|
|
|
contain information, it will be skipped.
|
|
|
|
|
2006-08-03 16:22:46 +02:00
|
|
|
* SoObjects/SOGo/AgenorUserManager.m ([AgenorUserManager
|
|
|
|
+initialize]): init defaultMailDomain with the user default
|
|
|
|
"SOGoDefaultMailDomain".
|
|
|
|
|
2006-08-02 21:54:02 +02:00
|
|
|
2006-08-02 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-02 22:03:10 +02:00
|
|
|
* UI/Contacts/UIxContactEditorBase.m ([UIxContactEditorBase
|
|
|
|
-saveAction]): reorganized methods to only have ONE return point.
|
|
|
|
Invoke saveRecord: directly on the clientObject instead of
|
|
|
|
saveContentString, which does the same thing anyway.
|
|
|
|
|
2006-08-02 21:54:02 +02:00
|
|
|
* SoObjects/Contacts/NSDictionary+Contact.m
|
|
|
|
([NSDictionary -vcardContentFromSOGoContactRecord]): extension
|
|
|
|
method to convert the dictionary returned with the user submission
|
|
|
|
to a record in VCARD format to be stored in the database.
|
|
|
|
|
2006-08-01 19:56:51 +02:00
|
|
|
2006-08-01 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-08-01 22:03:50 +02:00
|
|
|
* UI/WebServerResources/MailerUI.js: when opening the context menu
|
|
|
|
of the message list, select the message below the mouse cursor and
|
|
|
|
deselect the other selected messages temporarily. This mimics the
|
|
|
|
behaviour of Thunderbird for that matter and was already
|
|
|
|
implemented for the entries of the folder tree.
|
|
|
|
|
2006-08-01 21:18:52 +02:00
|
|
|
* UI/MailerUI/UIxMailFolderMenu.m ([UIxMailFolderMenu
|
|
|
|
-iconForMenuItem]): new method that returns the fully qualified
|
|
|
|
relative URL to the icon representing the mailbox, or the default
|
|
|
|
mailbox icon if needed.
|
|
|
|
|
2006-08-01 21:18:06 +02:00
|
|
|
* UI/SOGoUI/UIxComponent.m ([UIxComponent
|
|
|
|
-urlForResourceFilename:filename]): automatically return an empty
|
|
|
|
string whenever the filename passed as argument is nil.
|
|
|
|
|
2006-08-01 20:02:45 +02:00
|
|
|
* UI/WebServerResources/MailerUI.js: open the mailboxes with the
|
|
|
|
"desc" parameter set to 1 so that they are sorted in descending
|
|
|
|
order by default. Also, added "onHeaderClick()", triggered by
|
|
|
|
clicking on the message list header elements.
|
|
|
|
|
2006-08-01 19:56:51 +02:00
|
|
|
* UI/MailerUI/UIxMailSortableTableHeader.m
|
|
|
|
([UIxMailSortableTableHeader -isSortedDescending]): same as below.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailListView.m ([UIxMailListView
|
|
|
|
-isSortedDescending]): defaults to "YES" when the sort order is
|
|
|
|
not specified.
|
|
|
|
|
2006-07-31 22:11:21 +02:00
|
|
|
2006-07-31 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-07-31 22:24:50 +02:00
|
|
|
* UI/WebServerResources/MailerUI.js:
|
|
|
|
- message cache: set the max num of cached messages to 20. Limit
|
|
|
|
the cached message size to 30000 bytes.
|
|
|
|
- ajax: when a message request is called while one is already
|
|
|
|
being performed, the latter will be cancelled. Idem when
|
|
|
|
retrieving the content of a mailbox.
|
|
|
|
- folder tree: when a mailbox is selected because of the URL
|
|
|
|
requested (initMailboxSelection), the dtree is expanded throughout
|
|
|
|
the mailbox entry's parent hierarchy to ensure it is made visible
|
|
|
|
when the page is being displayed. (new function: expandUpperTree).
|
|
|
|
- mailbox loading: when loading a mailbox where a message was
|
|
|
|
previously selected, we invoke its url with the "pageforuid"
|
|
|
|
parameter correctly specified. During callback processing, we scan
|
|
|
|
the table for the related row and reselect it.
|
|
|
|
Also, the message area is set blank before loading any mailbox.
|
|
|
|
|
2006-07-31 22:16:45 +02:00
|
|
|
* UI/MailerUI/UIxMailListView.m ([UIxMailListView
|
|
|
|
-defaultAction]): if the "pageforuid" parameter is passed in the
|
|
|
|
url, take its value and invoke [self firstMessageOfPageFor:]
|
|
|
|
consequently to deduce the first message to display. Otherwise,
|
|
|
|
set it to "idx", otherwise set it to 0.
|
|
|
|
([UIxMailListView -firstMessageOfPageFor:]): new method
|
|
|
|
that determines the first message of the page where the message
|
|
|
|
passed as parameter is contained.
|
|
|
|
|
2006-07-31 22:11:21 +02:00
|
|
|
* UI/WebServerResources/UIxMailListView.js: removed this module,
|
|
|
|
its code was put in MailerUI.js instead.
|
|
|
|
|
2006-07-29 00:53:57 +02:00
|
|
|
2006-07-28 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-07-29 01:25:34 +02:00
|
|
|
* UI/MailerUI/UIxMailFolderMenu.m: a descendent of UIxMailTree
|
|
|
|
which returns the nodes for the parent specified in "parentMenu".
|
|
|
|
Used to generate the javascript code for the folder dtree.
|
|
|
|
|
2006-07-29 00:58:17 +02:00
|
|
|
* UI/Templates/MailerUI/UIxMailPanelFrame.wox: the components
|
|
|
|
using that container-template are now using UIxMailMainFrame
|
|
|
|
since UIxMailPanelFrame had no real interest. File removed.
|
|
|
|
|
2006-07-29 00:53:57 +02:00
|
|
|
* UI/WebServerResources/dtree.{css,js}: new files to handle
|
|
|
|
javascript-generated mailbox tree. Modified from original version
|
|
|
|
by integrating the previous code with the one we are using for
|
|
|
|
selections and mailbox handling. Minor visual enhancements too...
|
|
|
|
|
2006-07-29 00:43:28 +02:00
|
|
|
2006-07-25 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
|
|
|
* SoObjects/Mailer/SOGoUser+Mail.m: if only one identity is to be
|
|
|
|
returned, put it in an NSArray before returning it (fixes
|
|
|
|
bug#217).
|
|
|
|
|
|
|
|
2006-07-24 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
|
|
|
* UI/SOGoUI/NSString+URL.m ([NSString -hostlessURL]): new method
|
|
|
|
that returns a url string stripped from its "http://hostname"
|
|
|
|
prefix.
|
|
|
|
|
|
|
|
* UI/SOGoUI/NSDictionary+URL.[hm]: moved from UI/Common.
|
|
|
|
|
|
|
|
* UI/SOGoUI/NSString+URL.[hm]: moved from UI/Common.
|
|
|
|
|
2006-07-17 19:25:16 +02:00
|
|
|
2006-07-17 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-07-17 19:28:29 +02:00
|
|
|
* UI/MailerUI/WOContext+UIxMailer.m ([WOContext
|
|
|
|
-mailDateFormatter]): retrieve the timezone from the user settings
|
|
|
|
and pass it to the returned dateFormatter. Also, the dateFormatter
|
|
|
|
is kept in a static variable to avoid useless
|
|
|
|
creations/destructions.
|
|
|
|
|
2006-07-17 19:26:15 +02:00
|
|
|
* UI/MailerUI/UIxMailFormatter.m ([UIxMailDateFormatter
|
|
|
|
-setTimeZone:newTimeZone]): new accessor to specify the timezone.
|
|
|
|
|
2006-07-17 19:25:16 +02:00
|
|
|
* UI/MailerUI/UIxMailFilterPanel.m ([UIxMailFilterPanel -setSearchCriteria:])
|
|
|
|
([UIxMailFilterPanel -searchCriteria]): new methods, similar to
|
|
|
|
s/Criteria/Text/ to handle the "criteria" form parameter.
|
|
|
|
|
2006-07-11 19:24:40 +02:00
|
|
|
2006-07-11 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-07-11 20:13:08 +02:00
|
|
|
* UI/WebServerResources/uix.css: enhanced the toolbar appearance
|
|
|
|
to integrate better with the firefox look&feel. Added entries for
|
|
|
|
the new "menu" DIV class (popup menus).
|
|
|
|
|
2006-07-11 20:11:54 +02:00
|
|
|
* UI/WebServerResources/generic.js: added "sanitizeMailTo" which
|
|
|
|
takes any chunk of text as param, detects the user email and the
|
|
|
|
optional first and last names and return them in a well-formatted
|
|
|
|
way. Renamed "getSelection" to "getSelectedNodes" to avoid a
|
|
|
|
namespace conflict. Added "onMenuClick(node, event, menuId)" to
|
|
|
|
handle popup menus through "onclick" element attributes (node =
|
|
|
|
this, event = event and menuId = name of the menu DIV id to
|
|
|
|
popup).
|
|
|
|
|
2006-07-11 20:08:13 +02:00
|
|
|
* UI/Contacts/UIxContactEditorBase.m ([UIxContactEditorBase
|
|
|
|
-snapshot]): add an entry for "email" into the snapshot
|
|
|
|
dictionary if a "contactEmail" URL parameter was detected and if
|
|
|
|
the entry for "email" is empty.
|
|
|
|
|
|
|
|
* UI/Contacts/Toolbars/SOGoContactFolder.toolbar: the "new card"
|
|
|
|
button now invokes the newContact() js function in ContactsUI.js
|
|
|
|
instead of opening "new" directly. newContact() pops up a window
|
|
|
|
stripped from its navigation bar.
|
|
|
|
|
|
|
|
* UI/Contacts/ContactsUI.js: new module specific to the ContactsUI
|
|
|
|
bundle (AddressBook).
|
|
|
|
|
2006-07-11 19:53:09 +02:00
|
|
|
* UI/Templates/MailerUI/UIxMailView.wox: added a div of class
|
|
|
|
"menu" and id "addressMenu" have the header email addresses
|
|
|
|
display it with the new menu code in generic.js.
|
|
|
|
|
|
|
|
* UI/Templates/MailerUI/UIxMailPanelFrame.wox: same as below +
|
|
|
|
replaced the body tables with a div of class "pageContent"
|
|
|
|
(standardization across the page templates).
|
|
|
|
|
|
|
|
* UI/Templates/MailerUI/UIxMailMainFrame.wox: include
|
|
|
|
productJavaScriptURL and pageJavaScriptURL (conditionnally) since
|
|
|
|
those are now inherited from UIxPageFrame.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailView.js: new file specific to UIxMailView.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailToSelection.m ([UIxMailToSelection -to]): if
|
|
|
|
a "mailto" URL parameter is detected and the "to" array is empty,
|
|
|
|
initialize "to" with the value of "mailto" before returning it.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailEditorAction.m ([UIxMailEditorAction
|
|
|
|
-composeAction]): rewrote method in a cleaner way and with usage
|
|
|
|
of the URL extensions to NSString and NSDictionary (see below).
|
|
|
|
Also, if a "mailto" url parameter is detected, pass it to the
|
|
|
|
redirected url.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailMainFrame.m: subclassed from UIxPageFrame to
|
|
|
|
reduce code.
|
|
|
|
|
2006-07-11 19:29:09 +02:00
|
|
|
* UI/Common/NSDictionary+URL.m ([NSDictionary -asURLParameters]):
|
|
|
|
returns a parameter string to add to a base URL.
|
|
|
|
|
|
|
|
* UI/Common/NSString+URL.m ([NSString
|
|
|
|
-composeURLWithAction:parameters:andHash:useHash]): new method to
|
|
|
|
compose a complete URL from an object URL with parameters and an
|
|
|
|
optional '#' character.
|
|
|
|
|
2006-07-11 19:24:40 +02:00
|
|
|
* UI/Common/UIxPageFrame.h: separated interface from
|
|
|
|
UIxPageFrame.m.
|
|
|
|
|
2006-07-07 18:04:46 +02:00
|
|
|
2006-07-07 Wsourdeau Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
2006-07-07 23:44:19 +02:00
|
|
|
* UI/Scheduler/UIxAppointmentEditor.m: returns yes to "isPopup";
|
|
|
|
|
2006-07-07 23:27:12 +02:00
|
|
|
* UI/WebServerResources/generic.js: added code to manage
|
|
|
|
selections within HTML containers.
|
|
|
|
|
2006-07-07 23:19:48 +02:00
|
|
|
* UI/Common/UIxPageFrame.m ([UIxPageFrame -productJavaScriptURL]):
|
|
|
|
added method to determine the possible URL for a product-specific
|
|
|
|
javascript filename of the forme <productname>.js.
|
|
|
|
([UIxPageFrame -hasProductSpecificJavaScript]): new method.
|
|
|
|
([UIxPageFrame -isPopup]): new method to determine whether the
|
|
|
|
application navigator bar should be displayed (main page) or not
|
|
|
|
(popup page).
|
|
|
|
|
2006-07-07 18:04:46 +02:00
|
|
|
* SoObjects/SOGo/SOGoAuthenticator.m ([SOGoAuthenticator
|
|
|
|
-LDAPCheckLogin:_loginpassword:_pwd]): new method to authenticate
|
|
|
|
the user through LDAP.
|
|
|
|
|
2006-07-06 21:48:36 +02:00
|
|
|
2006-07-06 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
|
|
|
|
|
|
|
* The toolbar code from the MailerUI product was taken, renamed as
|
|
|
|
"UIxToolBar" and put into UI/Common. Toolbar plists were created
|
|
|
|
for the Contacts and Scheduler products and put in their respectir
|
|
|
|
Toolbars/ subdirectories. Finally,
|
|
|
|
UI/Templates/{UIxToolbarButton,UIxToolbarSeparator}.wox, and
|
|
|
|
UI/Common/{UIxToolbarButton,UIxToolbarSeparator}.m were removed
|
|
|
|
and an invocation to the UIxToolbar component was put at the top
|
|
|
|
of UI/Templaces/UIxPageFrame.wox.
|
|
|
|
|
|
|
|
* UI/Common/UIxToolbar.m: new "isLastGroup" method to determine
|
|
|
|
within the templates whether a separator should be displayed.
|
|
|
|
|
2006-07-06 22:39:21 +02:00
|
|
|
* UI/Common/UIxToolbar.m ([UIxToolbar -hasButtons]): new method
|
|
|
|
that returns NO if the toolbar is empty.
|
|
|
|
|
2006-07-05 15:28:36 +02:00
|
|
|
2006-07-05 Wolfgang Sourdeau <wsourdeau@inverse.ca>
|
2006-07-05 15:27:18 +02:00
|
|
|
|
2006-07-05 23:22:17 +02:00
|
|
|
* UI/Templates/UIxPageFrame.wox: replaced central table with a DIV.
|
|
|
|
|
2006-07-05 23:15:21 +02:00
|
|
|
* UI/Common/UIxToolbarSeparator.m, UI/Common/UIxToolbarButton.m:
|
|
|
|
new toolbar objects.
|
|
|
|
|
2006-07-05 15:27:18 +02:00
|
|
|
* UI/Templates/UIxPageFrame.wox: use the exact html code as below.
|
|
|
|
|
|
|
|
* UI/Templates/MailerUI/UIxMailMainFrame.wox: redone the
|
|
|
|
linkbanner as a DIV instead of a TABLE.
|
|
|
|
|
|
|
|
* UI/MailerUI/UIxMailMainFrame.m [UIxMailMainFrame
|
|
|
|
showLinkBanner]:
|
|
|
|
returns 'YES' to request the display of the navigation bar between
|
|
|
|
applets.
|
|
|
|
|
2006-06-16 19:47:25 +02:00
|
|
|
2006-06-15 ludovic@inverse.ca
|
|
|
|
|
|
|
|
* It's now possible to set the default
|
|
|
|
domain using for email using the
|
|
|
|
SOGoDefaultMailDomain preference key.
|
|
|
|
|
2006-06-15 21:34:10 +02:00
|
|
|
2006-06-15 ludovic@inverse.ca
|
|
|
|
|
|
|
|
* Initial import of SOGo from trunk.
|