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
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
Michael M Slusarz [Mon, 26 Apr 2010 21:18:27 +0000 (15:18 -0600)]
phpdoc
Michael M Slusarz [Mon, 26 Apr 2010 21:03:53 +0000 (15:03 -0600)]
Add Horde_Imap_Client_Base::validSearchCharset()
Michael M Slusarz [Mon, 26 Apr 2010 20:48:48 +0000 (14:48 -0600)]
Charset specification is optional for SEARCH command
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
Michael J. Rubinsky [Mon, 26 Apr 2010 20:26:11 +0000 (16:26 -0400)]
Need the parent here also
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.
Michael J. Rubinsky [Mon, 26 Apr 2010 19:03:58 +0000 (15:03 -0400)]
improvements to device info handling and provisioning
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
Michael J. Rubinsky [Mon, 26 Apr 2010 15:55:44 +0000 (11:55 -0400)]
Remove dead code, clean up some @todos
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
Michael J. Rubinsky [Mon, 26 Apr 2010 14:23:52 +0000 (10:23 -0400)]
Finish up the SUPPORTED/GHOSTED implementation
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.
Michael M Slusarz [Mon, 26 Apr 2010 07:23:19 +0000 (01:23 -0600)]
Fix Content-Disposition header output when building MIME data.
Michael M Slusarz [Mon, 26 Apr 2010 07:19:11 +0000 (01:19 -0600)]
Ignore \RECENT flag when doing an append
Michael M Slusarz [Mon, 26 Apr 2010 07:15:17 +0000 (01:15 -0600)]
Add date-time IMAP output format
Michael M Slusarz [Mon, 26 Apr 2010 07:03:18 +0000 (01:03 -0600)]
Fixes to IMAP CATENATE code
Michael M Slusarz [Mon, 26 Apr 2010 06:24:28 +0000 (00:24 -0600)]
This function should return the result. That would be useful
Michael M Slusarz [Sun, 25 Apr 2010 07:58:02 +0000 (01:58 -0600)]
phpdoc
Michael M Slusarz [Sun, 25 Apr 2010 06:45:41 +0000 (00:45 -0600)]
createUrl() can now create relative URLs
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.
Michael M Slusarz [Sat, 24 Apr 2010 17:29:39 +0000 (11:29 -0600)]
Use IMP_Exception in more locations
Chuck Hagenbuch [Mon, 26 Apr 2010 01:20:40 +0000 (21:20 -0400)]
Use annotated setter injection by default for Horde
Chuck Hagenbuch [Mon, 26 Apr 2010 01:17:16 +0000 (21:17 -0400)]
Don't try to filter an empty object
Chuck Hagenbuch [Mon, 26 Apr 2010 00:27:51 +0000 (20:27 -0400)]
Merge branch 'setter-injection'
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.
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.
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.
Chuck Hagenbuch [Sun, 25 Apr 2010 18:51:56 +0000 (14:51 -0400)]
ws
Michael J. Rubinsky [Sun, 25 Apr 2010 18:22:26 +0000 (14:22 -0400)]
make sure pingState is always an array
Michael J. Rubinsky [Sun, 25 Apr 2010 18:19:02 +0000 (14:19 -0400)]
typo
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.
Michael J. Rubinsky [Sun, 25 Apr 2010 14:56:19 +0000 (10:56 -0400)]
ws
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.
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.
Michael J. Rubinsky [Sun, 25 Apr 2010 13:25:56 +0000 (09:25 -0400)]
phpdoc fixes
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.
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
Michael J. Rubinsky [Sat, 24 Apr 2010 21:59:07 +0000 (17:59 -0400)]
need to cast the theme objects too
Michael J. Rubinsky [Sat, 24 Apr 2010 20:40:23 +0000 (16:40 -0400)]
actually set the username
Michael J. Rubinsky [Sat, 24 Apr 2010 20:34:24 +0000 (16:34 -0400)]
store the username for each device
Michael J. Rubinsky [Sat, 24 Apr 2010 20:28:54 +0000 (16:28 -0400)]
add username to the device table
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.
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.
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.
Michael J. Rubinsky [Sat, 24 Apr 2010 16:48:59 +0000 (12:48 -0400)]
Keep individual implementations for now...
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.
Michael J. Rubinsky [Sat, 24 Apr 2010 16:38:03 +0000 (12:38 -0400)]
need this for BC with older devices
Michael J. Rubinsky [Sat, 24 Apr 2010 16:22:00 +0000 (12:22 -0400)]
Fix persisting foldersync state
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
Michael J. Rubinsky [Sat, 24 Apr 2010 13:29:57 +0000 (09:29 -0400)]
Configuration for new history based state driver. Further clean up.
Michael J. Rubinsky [Sat, 24 Apr 2010 00:14:52 +0000 (20:14 -0400)]
phpdoc, cleanup the base abstract methods etc...
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.
Michael J. Rubinsky [Fri, 23 Apr 2010 23:34:37 +0000 (19:34 -0400)]
style, phpdoc, some logic tweaks
Michael J. Rubinsky [Fri, 23 Apr 2010 22:13:07 +0000 (18:13 -0400)]
Move to base class
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.
Michael J. Rubinsky [Fri, 23 Apr 2010 22:00:49 +0000 (18:00 -0400)]
style
Michael J. Rubinsky [Fri, 23 Apr 2010 21:58:13 +0000 (17:58 -0400)]
add sql creation script for the activesync tables
Michael J. Rubinsky [Fri, 23 Apr 2010 21:56:03 +0000 (17:56 -0400)]
Implement a working history state driver.
Michael J. Rubinsky [Fri, 23 Apr 2010 21:54:00 +0000 (17:54 -0400)]
Match the default value with the one Nag::listTaskLists() uses
Michael J. Rubinsky [Thu, 22 Apr 2010 14:25:24 +0000 (10:25 -0400)]
fix typo
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.
Michael J. Rubinsky [Thu, 22 Apr 2010 13:55:22 +0000 (09:55 -0400)]
clarify what this does
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.
Chuck Hagenbuch [Sat, 24 Apr 2010 16:00:04 +0000 (12:00 -0400)]
First try converting Luxor to H4-git
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
Michael M Slusarz [Fri, 23 Apr 2010 22:15:57 +0000 (16:15 -0600)]
Fix typos
Michael M Slusarz [Fri, 23 Apr 2010 22:11:38 +0000 (16:11 -0600)]
Use short-form HTML colors
Chuck Hagenbuch [Sat, 24 Apr 2010 01:45:31 +0000 (21:45 -0400)]
Fix capability name
Michael M Slusarz [Fri, 23 Apr 2010 05:08:53 +0000 (23:08 -0600)]
Add support for CATENATE extension (RFC 4469).
Michael M Slusarz [Fri, 23 Apr 2010 19:01:40 +0000 (13:01 -0600)]
Add support for parsing relative IMAP URLs
Michael M Slusarz [Fri, 23 Apr 2010 18:18:11 +0000 (12:18 -0600)]
Make message header string more translation friendly
Michael M Slusarz [Fri, 23 Apr 2010 18:12:59 +0000 (12:12 -0600)]
Clean up message template/output
Michael M Slusarz [Fri, 23 Apr 2010 17:26:07 +0000 (11:26 -0600)]
Can't reuse Horde_Template instance.
Michael M Slusarz [Fri, 23 Apr 2010 16:55:27 +0000 (10:55 -0600)]
Further cleanup of mailbox template output
Makes things a bit more templateable - move CSS-related stuff out of PHP
script. Also, try to remove some complexity/wordiness/excessive layout.
Michael M Slusarz [Fri, 23 Apr 2010 16:34:25 +0000 (10:34 -0600)]
Fix typo.
Michael M Slusarz [Fri, 23 Apr 2010 16:28:27 +0000 (10:28 -0600)]
Further improvements to contextmenu generation/initialization
Michael M Slusarz [Fri, 23 Apr 2010 15:59:58 +0000 (09:59 -0600)]
Fix positioning of message loading image
Not sure if this is due to recent prototypejs changes. But it does fix
things.
Chuck Hagenbuch [Fri, 23 Apr 2010 19:44:24 +0000 (15:44 -0400)]
Find the framework libs one level up from test.php as well
Michael M Slusarz [Fri, 23 Apr 2010 06:40:27 +0000 (00:40 -0600)]
Move some javascript out of PHP script file
Michael M Slusarz [Fri, 23 Apr 2010 06:10:31 +0000 (00:10 -0600)]
Clean up tasks/notes creation
Michael M Slusarz [Fri, 23 Apr 2010 05:38:31 +0000 (23:38 -0600)]
Remove messageid parameter to append()
Michael M Slusarz [Thu, 22 Apr 2010 22:45:09 +0000 (16:45 -0600)]
Handle binary literal data in a single location.
Benefit: cleans up append() implementation, and allows append data to be
handled entirely via streams.
Michael M Slusarz [Thu, 22 Apr 2010 21:18:09 +0000 (15:18 -0600)]
Bug #8880: Close contextmenu when clicking on any element that activates the same contextmenu
Michael M Slusarz [Thu, 22 Apr 2010 20:57:12 +0000 (14:57 -0600)]
Improve clarity of popdown generation code
Michael M Slusarz [Thu, 22 Apr 2010 20:21:37 +0000 (14:21 -0600)]
Use prototypejs' sub()/gsub()
Michael M Slusarz [Thu, 22 Apr 2010 18:43:22 +0000 (12:43 -0600)]
Better way of grabbing viewport rows (ignores empty message rows)
Michael M Slusarz [Thu, 22 Apr 2010 18:43:18 +0000 (12:43 -0600)]
Fix ViewPort:clear firing
Michael M Slusarz [Thu, 22 Apr 2010 18:27:14 +0000 (12:27 -0600)]
Need a more unique DOM ID
Michael M Slusarz [Thu, 22 Apr 2010 17:47:35 +0000 (11:47 -0600)]
Disable test script by default
Michael M Slusarz [Thu, 22 Apr 2010 17:33:15 +0000 (11:33 -0600)]
Bug #8984: Always encode address headers using Horde_Mime::encodeAddress()
Michael M Slusarz [Thu, 22 Apr 2010 17:19:41 +0000 (11:19 -0600)]
Not needed
Michael M Slusarz [Thu, 22 Apr 2010 17:13:45 +0000 (11:13 -0600)]
If marked as updated, need to re-add the viewport row
Michael M Slusarz [Thu, 22 Apr 2010 16:55:01 +0000 (10:55 -0600)]
Suppress fopen() errors for IMAP debugging
Michael M Slusarz [Thu, 22 Apr 2010 16:54:48 +0000 (10:54 -0600)]
Fallback to STATUS if LIST-STATUS doesn't work properly
Michael M Slusarz [Wed, 21 Apr 2010 00:04:46 +0000 (18:04 -0600)]
Rewrite IMAP command generator.
An unfortunate IMAP implementation detail is the various ways strings
are handled. Depending on the command, and different portions of the
command, different quoting styles are needed. And to make things worse,
literals are always needed in certain cases (if CR or LF is present in
the string; if 8-bit characters are present).
Refactor the _sendLine() function to accept array input, with the
various elements of the array identified as the various IMAP string
types. Then, in a central location, figure out how to quote/send the
command to the server.
Michael M Slusarz [Wed, 21 Apr 2010 21:00:28 +0000 (15:00 -0600)]
escape() should only add quotes if string needs to be quoted
Jan Schneider [Thu, 22 Apr 2010 10:53:29 +0000 (12:53 +0200)]
[jan] Delete Horde alarms when resetting an event alarm.
[jan] Set an alarm to one minute, if users try to set an alarm without time.
Jan Schneider [Wed, 21 Apr 2010 08:12:11 +0000 (10:12 +0200)]
MFB: Add warning that caching has been removed from eAccelerator 0.9.5 (Request #8979).