horde.git
15 years agoPass the ending timestamp, now that the API calls can do something with it.
Michael J. Rubinsky [Tue, 27 Apr 2010 13:48:58 +0000 (09:48 -0400)]
Pass the ending timestamp, now that the API calls can do something with it.

Prevents (unlikely) race condition if an object is updated on the server
during a sync-session between the time the current sync timestamp is
saved and the the history backend is queried.

15 years agoPass an ending timestamp when checking for server changes.
Michael J. Rubinsky [Tue, 27 Apr 2010 13:41:50 +0000 (09:41 -0400)]
Pass an ending timestamp when checking for server changes.

This prevents a race condition in the unlikely event that an object is changed
on ther server in the time between getting the time for the current sync and
checking for server changes.

15 years agoAllow listBy API calls to take an optional end timestamp as well.
Michael J. Rubinsky [Tue, 27 Apr 2010 13:38:21 +0000 (09:38 -0400)]
Allow listBy API calls to take an optional end timestamp as well.

15 years agoReload page after changing options.
Jan Schneider [Tue, 27 Apr 2010 13:12:40 +0000 (15:12 +0200)]
Reload page after changing options.

15 years agoUse ajax notifications from iframe pages.
Jan Schneider [Tue, 27 Apr 2010 12:45:14 +0000 (14:45 +0200)]
Use ajax notifications from iframe pages.

15 years agoLeave room for clicking day cells in month view.
Jan Schneider [Tue, 27 Apr 2010 12:30:35 +0000 (14:30 +0200)]
Leave room for clicking day cells in month view.

15 years agoUnused
Jan Schneider [Tue, 27 Apr 2010 12:02:39 +0000 (14:02 +0200)]
Unused

15 years agoTest fixes.
Gunnar Wrobel [Tue, 27 Apr 2010 09:46:01 +0000 (11:46 +0200)]
Test fixes.

15 years agoStart refactoring the IMAP driver classes in Kolab_Storage.
Gunnar Wrobel [Tue, 27 Apr 2010 09:45:22 +0000 (11:45 +0200)]
Start refactoring the IMAP driver classes in Kolab_Storage.

15 years agoReactivate history updates.
Gunnar Wrobel [Tue, 27 Apr 2010 09:44:29 +0000 (11:44 +0200)]
Reactivate history updates.

15 years agoRemove unnecessary references.
Gunnar Wrobel [Tue, 27 Apr 2010 09:44:11 +0000 (11:44 +0200)]
Remove unnecessary references.

15 years agoSet task alarm without value from ajax interface too.
Jan Schneider [Tue, 27 Apr 2010 08:22:58 +0000 (10:22 +0200)]
Set task alarm without value from ajax interface too.

15 years agoMFB: Remove more WikiWords.
Jan Schneider [Mon, 26 Apr 2010 15:53:07 +0000 (17:53 +0200)]
MFB: Remove more WikiWords.

15 years agoMFB: Set an alarm to one minute, if users try to set an alarm without time.
Jan Schneider [Mon, 26 Apr 2010 15:50:56 +0000 (17:50 +0200)]
MFB: Set an alarm to one minute, if users try to set an alarm without time.

15 years agoUpdate package.xml otherwise the Exception is missing.
Gunnar Wrobel [Tue, 27 Apr 2010 07:00:48 +0000 (09:00 +0200)]
Update package.xml otherwise the Exception is missing.

15 years agoDo not type-hint these as a DB_Error is also possible and will cause a fatal error.
Gunnar Wrobel [Tue, 27 Apr 2010 07:00:08 +0000 (09:00 +0200)]
Do not type-hint these as a DB_Error is also possible and will cause a fatal error.

15 years agoStart injecting the cache dependency into Kolab_Storage.
Gunnar Wrobel [Tue, 27 Apr 2010 05:23:39 +0000 (07:23 +0200)]
Start injecting the cache dependency into Kolab_Storage.

15 years agoAdd a mock cache driver.
Gunnar Wrobel [Tue, 27 Apr 2010 05:22:04 +0000 (07:22 +0200)]
Add a mock cache driver.

15 years agoNow that Horde_Cache is empty we can make it an interface.
Gunnar Wrobel [Tue, 27 Apr 2010 03:04:43 +0000 (05:04 +0200)]
Now that Horde_Cache is empty we can make it an interface.

Throughout the application we refer to "an instance of Horde_Cache"
and we actually bind the cache to "Horde_Cache" in the injector. The
natural choice is to define it as the interface of the class.

15 years agoSimplify.
Gunnar Wrobel [Tue, 27 Apr 2010 03:00:19 +0000 (05:00 +0200)]
Simplify.

15 years agoAgain $driver cannot be an array.
Gunnar Wrobel [Tue, 27 Apr 2010 02:58:32 +0000 (04:58 +0200)]
Again $driver cannot be an array.

15 years agoPull the factory over to the binder.
Gunnar Wrobel [Tue, 27 Apr 2010 02:53:39 +0000 (04:53 +0200)]
Pull the factory over to the binder.

15 years agoThe $app variable is unnecessary.
Gunnar Wrobel [Mon, 26 Apr 2010 21:34:28 +0000 (23:34 +0200)]
The $app variable is unnecessary.

15 years ago$driver_name is never used.
Gunnar Wrobel [Mon, 26 Apr 2010 21:33:28 +0000 (23:33 +0200)]
$driver_name is never used.

15 years ago$driver cannot be an array otherwise getDriverConfig would fail.
Gunnar Wrobel [Mon, 26 Apr 2010 21:32:50 +0000 (23:32 +0200)]
$driver cannot be an array otherwise getDriverConfig would fail.

15 years agoAdd a test for the cache binder.
Gunnar Wrobel [Mon, 26 Apr 2010 21:29:56 +0000 (23:29 +0200)]
Add a test for the cache binder.

15 years agoColor picker improvements
Michael M Slusarz [Mon, 26 Apr 2010 22:58:36 +0000 (16:58 -0600)]
Color picker improvements

Allow manually editing HTML hex values by clicking on the visible hex
value.
Fix rounding bug when converting from HEX -> HSV

15 years agoquery can be null here - it is in ALL search
Michael M Slusarz [Mon, 26 Apr 2010 21:35:56 +0000 (15:35 -0600)]
query can be null here - it is in ALL search

15 years agoMake sure we run IMAP search queries in the proper charset
Michael M Slusarz [Mon, 26 Apr 2010 21:32:31 +0000 (15:32 -0600)]
Make sure we run IMAP search queries in the proper charset

15 years agoAdd callback function to search charset changing to change any text currently contain...
Michael M Slusarz [Mon, 26 Apr 2010 21:27:19 +0000 (15:27 -0600)]
Add callback function to search charset changing to change any text currently contained in the search

15 years agophpdoc
Michael M Slusarz [Mon, 26 Apr 2010 21:18:27 +0000 (15:18 -0600)]
phpdoc

15 years agoAdd Horde_Imap_Client_Base::validSearchCharset()
Michael M Slusarz [Mon, 26 Apr 2010 21:03:53 +0000 (15:03 -0600)]
Add Horde_Imap_Client_Base::validSearchCharset()

15 years agoCharset specification is optional for SEARCH command
Michael M Slusarz [Mon, 26 Apr 2010 20:48:48 +0000 (14:48 -0600)]
Charset specification is optional for SEARCH command

15 years agoImproved flag prefs display - no need to show HTML color codes to users
Michael M Slusarz [Mon, 26 Apr 2010 19:32:46 +0000 (13:32 -0600)]
Improved flag prefs display - no need to show HTML color codes to users

15 years agoNeed the parent here also
Michael J. Rubinsky [Mon, 26 Apr 2010 20:26:11 +0000 (16:26 -0400)]
Need the parent here also

15 years agoMore improvements to provisioning, fix variable names.
Michael J. Rubinsky [Mon, 26 Apr 2010 19:30:10 +0000 (15:30 -0400)]
More improvements to provisioning, fix variable names.

With this and the last commit, provisioning can now be set to Allow,
while still allowing Android devices to connect. The Android devices will
not be provisioned, so setting it to 'Force' will still prevent them from
connecting, but now at least using Android won't prevent allowing other
devices to be provisioned.

15 years agoimprovements to device info handling and provisioning
Michael J. Rubinsky [Mon, 26 Apr 2010 19:03:58 +0000 (15:03 -0400)]
improvements to device info handling and provisioning

15 years agomake state a class member, pass the activesync server instance to the request
Michael J. Rubinsky [Mon, 26 Apr 2010 16:48:42 +0000 (12:48 -0400)]
make state a class member, pass the activesync server instance to the request

15 years agoRemove dead code, clean up some @todos
Michael J. Rubinsky [Mon, 26 Apr 2010 15:55:44 +0000 (11:55 -0400)]
Remove dead code, clean up some @todos

15 years agoUpdate turba's activesync support to correctly deal with ghosted properties
Michael J. Rubinsky [Mon, 26 Apr 2010 14:24:20 +0000 (10:24 -0400)]
Update turba's activesync support to correctly deal with ghosted properties

Unsupported fields on the device are no longer wiped in Turba during sync

15 years agoFinish up the SUPPORTED/GHOSTED implementation
Michael J. Rubinsky [Mon, 26 Apr 2010 14:23:52 +0000 (10:23 -0400)]
Finish up the SUPPORTED/GHOSTED implementation

15 years agoRequest #8092: Use CATENATE (RFC 4469) to strip MIME parts
Michael M Slusarz [Mon, 26 Apr 2010 07:36:28 +0000 (01:36 -0600)]
Request #8092: Use CATENATE (RFC 4469) to strip MIME parts

Even if IMAP server doesn't support CATENATE, use the same process to
build the message data as with CATENATE - by defining the parts on the
server using IMAP URLs.

15 years agoFix Content-Disposition header output when building MIME data.
Michael M Slusarz [Mon, 26 Apr 2010 07:23:19 +0000 (01:23 -0600)]
Fix Content-Disposition header output when building MIME data.

15 years agoIgnore \RECENT flag when doing an append
Michael M Slusarz [Mon, 26 Apr 2010 07:19:11 +0000 (01:19 -0600)]
Ignore \RECENT flag when doing an append

15 years agoAdd date-time IMAP output format
Michael M Slusarz [Mon, 26 Apr 2010 07:15:17 +0000 (01:15 -0600)]
Add date-time IMAP output format

15 years agoFixes to IMAP CATENATE code
Michael M Slusarz [Mon, 26 Apr 2010 07:03:18 +0000 (01:03 -0600)]
Fixes to IMAP CATENATE code

15 years agoThis function should return the result. That would be useful
Michael M Slusarz [Mon, 26 Apr 2010 06:24:28 +0000 (00:24 -0600)]
This function should return the result. That would be useful

15 years agophpdoc
Michael M Slusarz [Sun, 25 Apr 2010 07:58:02 +0000 (01:58 -0600)]
phpdoc

15 years agocreateUrl() can now create relative URLs
Michael M Slusarz [Sun, 25 Apr 2010 06:45:41 +0000 (00:45 -0600)]
createUrl() can now create relative URLs

15 years agoAllow obtaining a string from any subpart MIME ID
Michael M Slusarz [Sat, 24 Apr 2010 18:31:55 +0000 (12:31 -0600)]
Allow obtaining a string from any subpart MIME ID

Multipart boundary text is a part of the subpart ID, so this is
necessary to correctly get the proper contents of a part.

15 years agoUse IMP_Exception in more locations
Michael M Slusarz [Sat, 24 Apr 2010 17:29:39 +0000 (11:29 -0600)]
Use IMP_Exception in more locations

15 years agoUse annotated setter injection by default for Horde
Chuck Hagenbuch [Mon, 26 Apr 2010 01:20:40 +0000 (21:20 -0400)]
Use annotated setter injection by default for Horde

15 years agoDon't try to filter an empty object
Chuck Hagenbuch [Mon, 26 Apr 2010 01:17:16 +0000 (21:17 -0400)]
Don't try to filter an empty object

15 years agoMerge branch 'setter-injection'
Chuck Hagenbuch [Mon, 26 Apr 2010 00:27:51 +0000 (20:27 -0400)]
Merge branch 'setter-injection'

15 years agoAdd object creation filters, and provide one that injects annotated setter dependencies.
Chuck Hagenbuch [Mon, 26 Apr 2010 00:26:40 +0000 (20:26 -0400)]
Add object creation filters, and provide one that injects annotated setter dependencies.

15 years agoOnly save the stat structure, and make sure it has a mod time entry.
Michael J. Rubinsky [Sun, 25 Apr 2010 20:41:31 +0000 (16:41 -0400)]
Only save the stat structure, and make sure it has a mod time entry.

15 years agoRevert "first pass at automatic setter injection"
Chuck Hagenbuch [Sun, 25 Apr 2010 18:53:32 +0000 (14:53 -0400)]
Revert "first pass at automatic setter injection"

This reverts commit f92b1b61098f5cfdd4eb786f1fbacdedf5c38824. Going to do this
with post-creation filters, instead of baking a specific method into the default
Implementation binder.

15 years agows
Chuck Hagenbuch [Sun, 25 Apr 2010 18:51:56 +0000 (14:51 -0400)]
ws

15 years agomake sure pingState is always an array
Michael J. Rubinsky [Sun, 25 Apr 2010 18:22:26 +0000 (14:22 -0400)]
make sure pingState is always an array

15 years agotypo
Michael J. Rubinsky [Sun, 25 Apr 2010 18:19:02 +0000 (14:19 -0400)]
typo

15 years agoinitial work on supporting the SUPPORTED tag in SYNC requests.
Michael J. Rubinsky [Sun, 25 Apr 2010 17:24:41 +0000 (13:24 -0400)]
initial work on supporting the SUPPORTED tag in SYNC requests.

This is needed to avoid deleting field values when the PIM doesn't support/send a
particular value when editing an entry on the PIM.  This commit just adds support for
persisting the SUPPORTED (non-ghosted) fields.

15 years agows
Michael J. Rubinsky [Sun, 25 Apr 2010 14:56:19 +0000 (10:56 -0400)]
ws

15 years agoNo need to stat each change if we know for sure we don't have any PIM originated...
Michael J. Rubinsky [Sun, 25 Apr 2010 14:53:03 +0000 (10:53 -0400)]
No need to stat each change if we know for sure we don't have any PIM originated chagnes.

If we don't have any entries in the map table for this device, no need to check each change. This makes
another big improvement in syncing - this time during the initial sync.

15 years agoMove the autogenerated thrift code into Horde/Thrift/thrift_root to avoid any confusi...
Chuck Hagenbuch [Sun, 25 Apr 2010 14:33:18 +0000 (10:33 -0400)]
Move the autogenerated thrift code into Horde/Thrift/thrift_root to avoid any confusion if we add any Horde-written classes in the future.

15 years agophpdoc fixes
Michael J. Rubinsky [Sun, 25 Apr 2010 13:25:56 +0000 (09:25 -0400)]
phpdoc fixes

15 years agoadd the start of a administrative-level device management screen
Michael J. Rubinsky [Sat, 24 Apr 2010 22:43:34 +0000 (18:43 -0400)]
add the start of a administrative-level device management screen

Not fully functionaly yet, but will provide the means for an admin to request
a remote wipe or reset the device state for any device we know about. Also
provides a means to just get an idea of how many devices are syncing with your server.

15 years agoAdd some methods to get bulk device info and last sync times
Michael J. Rubinsky [Sat, 24 Apr 2010 22:42:36 +0000 (18:42 -0400)]
Add some methods to get bulk device info and last sync times

15 years agoneed to cast the theme objects too
Michael J. Rubinsky [Sat, 24 Apr 2010 21:59:07 +0000 (17:59 -0400)]
need to cast the theme objects too

15 years agoactually set the username
Michael J. Rubinsky [Sat, 24 Apr 2010 20:40:23 +0000 (16:40 -0400)]
actually set the username

15 years agostore the username for each device
Michael J. Rubinsky [Sat, 24 Apr 2010 20:34:24 +0000 (16:34 -0400)]
store the username for each device

15 years agoadd username to the device table
Michael J. Rubinsky [Sat, 24 Apr 2010 20:28:54 +0000 (16:28 -0400)]
add username to the device table

15 years agoAdd configuration switch for forcing the server heartbeat interval.
Michael J. Rubinsky [Sat, 24 Apr 2010 19:30:51 +0000 (15:30 -0400)]
Add configuration switch for forcing the server heartbeat interval.

For those of us who don't like devices telling us what we have to do...allow
overriding the heartbeat interval so we can force it to be shorter then most
devices would request...useful for managing load on the server.

15 years agoNeed to supply the mod time for ALL new entries, not just calendars.
Michael J. Rubinsky [Sat, 24 Apr 2010 18:48:46 +0000 (14:48 -0400)]
Need to supply the mod time for ALL new entries, not just calendars.

New entries will not have an existing mod time in history, so need to supply
it here, for the purposes of remembering the time this change was made and
not mirroring it back to the PIM.

15 years agofix adding new tasks from activesync messages
Michael J. Rubinsky [Sat, 24 Apr 2010 18:38:46 +0000 (14:38 -0400)]
fix adding new tasks from activesync messages

$storage->add() returns an array, not the uid.

15 years agoKeep individual implementations for now...
Michael J. Rubinsky [Sat, 24 Apr 2010 16:48:59 +0000 (12:48 -0400)]
Keep individual implementations for now...

15 years agoimplement the folderdata methods for older as versions.
Michael J. Rubinsky [Sat, 24 Apr 2010 16:47:16 +0000 (12:47 -0400)]
implement the folderdata methods for older as versions.

Not really tested, as I haven't found a client that uses these yet, but
similar functionality was present in the diff driver from z-push, so it's here
just in case.

15 years agoneed this for BC with older devices
Michael J. Rubinsky [Sat, 24 Apr 2010 16:38:03 +0000 (12:38 -0400)]
need this for BC with older devices

15 years agoFix persisting foldersync state
Michael J. Rubinsky [Sat, 24 Apr 2010 16:22:00 +0000 (12:22 -0400)]
Fix persisting foldersync state

15 years agoMove these to the base activesync class so the Provision class doesn't need to be...
Michael J. Rubinsky [Sat, 24 Apr 2010 13:48:06 +0000 (09:48 -0400)]
Move these to the base activesync class so the Provision class doesn't need to be loaded
just to check rwstatus

15 years agoConfiguration for new history based state driver. Further clean up.
Michael J. Rubinsky [Sat, 24 Apr 2010 13:29:57 +0000 (09:29 -0400)]
Configuration for new history based state driver. Further clean up.

15 years agophpdoc, cleanup the base abstract methods etc...
Michael J. Rubinsky [Sat, 24 Apr 2010 00:14:52 +0000 (20:14 -0400)]
phpdoc, cleanup the base abstract methods etc...

15 years agoMore stuff to move to the base class, implement the remaining methods for the history...
Michael J. Rubinsky [Sat, 24 Apr 2010 00:03:30 +0000 (20:03 -0400)]
More stuff to move to the base class, implement the remaining methods for the history driver.

15 years agostyle, phpdoc, some logic tweaks
Michael J. Rubinsky [Fri, 23 Apr 2010 23:34:37 +0000 (19:34 -0400)]
style, phpdoc, some logic tweaks

15 years agoMove to base class
Michael J. Rubinsky [Fri, 23 Apr 2010 22:13:07 +0000 (18:13 -0400)]
Move to base class

15 years agoNo need to gc this table on every addition.
Michael J. Rubinsky [Fri, 23 Apr 2010 22:09:32 +0000 (18:09 -0400)]
No need to gc this table on every addition.

This gets gc'd during the next SYNC operation anyway, don't do it explicitly here
for each entry.

15 years agostyle
Michael J. Rubinsky [Fri, 23 Apr 2010 22:00:49 +0000 (18:00 -0400)]
style

15 years agoadd sql creation script for the activesync tables
Michael J. Rubinsky [Fri, 23 Apr 2010 21:58:13 +0000 (17:58 -0400)]
add sql creation script for the activesync tables

15 years agoImplement a working history state driver.
Michael J. Rubinsky [Fri, 23 Apr 2010 21:56:03 +0000 (17:56 -0400)]
Implement a working history state driver.

15 years agoMatch the default value with the one Nag::listTaskLists() uses
Michael J. Rubinsky [Fri, 23 Apr 2010 21:54:00 +0000 (17:54 -0400)]
Match the default value with the one Nag::listTaskLists() uses

15 years agofix typo
Michael J. Rubinsky [Thu, 22 Apr 2010 14:25:24 +0000 (10:25 -0400)]
fix typo

15 years agoHave the state object be responsible for stating the message if needed.
Michael J. Rubinsky [Thu, 22 Apr 2010 14:23:15 +0000 (10:23 -0400)]
Have the state object be responsible for stating the message if needed.

This allows different state drivers to omit the stat if it's not necessary for
determining changes.

15 years agoclarify what this does
Michael J. Rubinsky [Thu, 22 Apr 2010 13:55:22 +0000 (09:55 -0400)]
clarify what this does

15 years agoHorde_Thrift package
Chuck Hagenbuch [Sat, 24 Apr 2010 16:13:48 +0000 (12:13 -0400)]
Horde_Thrift package

This wraps the auto-generated thrift-0.2.0 libraries and makes them
autoloadable. Services that use thrift can extend the Horde_Thrift class to
cause all of the thrift support code to be included. The thrift code itself is
unmodified (and under its original license/copyright), and we will update it
when there are new thrift releases.

15 years agoFirst try converting Luxor to H4-git
Chuck Hagenbuch [Sat, 24 Apr 2010 16:00:04 +0000 (12:00 -0400)]
First try converting Luxor to H4-git

15 years ago__toString can't throw an exception or PHP dies, so wrap registry calls in try/catch
Chuck Hagenbuch [Sat, 24 Apr 2010 01:53:03 +0000 (21:53 -0400)]
__toString can't throw an exception or PHP dies, so wrap registry calls in try/catch

15 years agoFix typos
Michael M Slusarz [Fri, 23 Apr 2010 22:15:57 +0000 (16:15 -0600)]
Fix typos

15 years agoUse short-form HTML colors
Michael M Slusarz [Fri, 23 Apr 2010 22:11:38 +0000 (16:11 -0600)]
Use short-form HTML colors

15 years agoFix capability name
Chuck Hagenbuch [Sat, 24 Apr 2010 01:45:31 +0000 (21:45 -0400)]
Fix capability name

15 years agoAdd support for CATENATE extension (RFC 4469).
Michael M Slusarz [Fri, 23 Apr 2010 05:08:53 +0000 (23:08 -0600)]
Add support for CATENATE extension (RFC 4469).

15 years agoAdd support for parsing relative IMAP URLs
Michael M Slusarz [Fri, 23 Apr 2010 19:01:40 +0000 (13:01 -0600)]
Add support for parsing relative IMAP URLs