Dan Williams
563810ec56
Add hooks for filtering on specific application UIDs
2006-06-16 16:32:56 -04:00
Dan Williams
e4a8518d02
Fix starting browser activity
2006-06-16 16:31:54 -04:00
Marco Pesenti Gritti
0363ed5457
More work on chats
2006-06-16 16:29:51 -04:00
Marco Pesenti Gritti
99d26223e5
Fixup model iterations to take the new filter in
...
account.
2006-06-16 16:07:14 -04:00
Dan Williams
5e549e7a8f
Fix up bits of presence window
2006-06-16 15:58:47 -04:00
Dan Williams
cd3d98cb77
A pass at fixing single-computer with more than one sugar instance work
2006-06-16 15:48:44 -04:00
Marco Pesenti Gritti
c7075255f8
Merge branch 'master' of git+ssh://crank.laptop.org/git/sugar
2006-06-16 15:43:03 -04:00
Marco Pesenti Gritti
a4f9a15b5d
Show buddies always if there is no activity
2006-06-16 15:42:55 -04:00
Dan Williams
333d341c3d
Remove debug prints
2006-06-16 15:31:07 -04:00
Dan Williams
b31a2176ba
- Clarify when a service type is supposed to be full/network, and when it's supposed
...
to be a short one. Activities should _never_ be exposed to the full/network stype
since that's an implementation detail of the PresenceService
- Make everything having to do with service objects non-unicode (?) to stop the madness.
Ideally we want everything to be UTF-8 eventually.
- Fix up PS to deal with service types of short/long variety
- Remove a hack from the Start Page that gets all service advertisements, will fix soon
2006-06-16 15:27:50 -04:00
Dan Williams
38565321d5
Merge branch 'master' of git+ssh://dcbw@crank.laptop.org/git/sugar
2006-06-16 15:25:25 -04:00
Dan Williams
c46d300c18
merge
2006-06-16 15:25:21 -04:00
Marco Pesenti Gritti
29a730e0a4
Monitor service addition and update buddy list
...
on these.
2006-06-16 15:21:09 -04:00
Marco Pesenti Gritti
9db404afb9
Filter presence by activity
2006-06-16 15:13:39 -04:00
Marco Pesenti Gritti
0cae557ab5
Register the model service and start working on
...
looking it up
2006-06-16 14:20:09 -04:00
Marco Pesenti Gritti
792481c669
Merge branch 'master' of git+ssh://crank.laptop.org/git/sugar
2006-06-16 13:21:34 -04:00
Marco Pesenti Gritti
e633c2ef8d
Missing import
2006-06-16 13:21:28 -04:00
Dan Williams
73aecebb90
Another git test
2006-06-16 13:19:35 -04:00
Dan Williams
b16dd2a549
Test stuff to see if git is as irritating as mercurial
2006-06-16 13:11:01 -04:00
Dan Williams
48fa6a8934
Merge branch 'master' of git+ssh://dcbw@crank.laptop.org/git/sugar
2006-06-16 13:09:37 -04:00
Dan Williams
d62060ae0d
Test stuff to see if git is as irritating as mercurial
2006-06-16 13:09:02 -04:00
Marco Pesenti Gritti
e30f9c337a
Merge branch 'master' of git+ssh://crank.laptop.org/git/sugar
2006-06-16 13:07:10 -04:00
Marco Pesenti Gritti
4a0e8ac2d4
Some work on the getting model back
2006-06-16 13:06:11 -04:00
Dan Williams
6db22150b1
Remove unused function
2006-06-16 13:05:45 -04:00
Marco Pesenti Gritti
29fb2321fe
Unquote title
2006-06-16 02:37:28 -04:00
Marco Pesenti Gritti
a6b2b4981c
More unescaping...
2006-06-16 02:36:18 -04:00
Marco Pesenti Gritti
7eeb43b98a
Fix with_id method signature
2006-06-16 02:04:31 -04:00
Marco Pesenti Gritti
bdce0eb48c
Get activities sharing sort of working
2006-06-16 01:43:42 -04:00
Marco Pesenti Gritti
20afcfa475
Merge
2006-06-15 18:28:21 -04:00
Marco Pesenti Gritti
6a8e863a16
Fix the problem with service resolution (Dan please have a look...)
2006-06-15 18:27:50 -04:00
Dan Williams
7b507d545b
Shorten activity service type
2006-06-15 18:03:12 -04:00
Dan Williams
be575803ae
remove debug print
2006-06-15 18:02:52 -04:00
Dan Williams
f234ebfff0
Merge with Marco
2006-06-15 17:42:35 -04:00
Dan Williams
2aaefdd52b
Hook into PresenceService to find new advertisements and track them
2006-06-15 17:41:49 -04:00
Dan Williams
e4677ee22a
Announce new activities when we resolve them, and add a hook to intercept new service advertisements
2006-06-15 17:41:26 -04:00
Dan Williams
31e9671190
Validate options for compose_service_type
2006-06-15 17:40:33 -04:00
Marco Pesenti Gritti
9c4da3c172
F11 now put the activities window in fullscreen,
2006-06-15 17:31:41 -04:00
Marco Pesenti Gritti
122c0dad16
Simplify focus a lot by using transient windows
2006-06-15 17:22:36 -04:00
Dan Williams
9034dc8f3b
More fixes for sharing activities
2006-06-15 17:05:44 -04:00
Dan Williams
97881ae7c0
Escape markup so we don't make pango angry
2006-06-15 17:03:59 -04:00
Dan Williams
a03f850ce8
Accept unicode types too
2006-06-15 17:03:43 -04:00
Dan Williams
465c49179c
Make xmlrpc client non-blocking
2006-06-15 17:03:20 -04:00
Marco Pesenti Gritti
1b611fc842
More chat refactoring
2006-06-15 16:51:30 -04:00
Marco Pesenti Gritti
c05bc5a669
Fix
2006-06-15 11:46:42 -04:00
Marco Pesenti Gritti
27b4f25fad
Merge
2006-06-15 11:29:00 -04:00
Marco Pesenti Gritti
f0af49616c
Fixed a bunch of issues reported by pylint
2006-06-15 11:18:33 -04:00
Dan Williams
ecf81ba35f
Generalize activity publishing code for > 1 activity per process
2006-06-15 11:20:18 -04:00
Marco Pesenti Gritti
f2ae132410
Fix a bunch of outdated makefiles.
2006-06-15 08:38:21 -04:00
Marco Pesenti Gritti
4fda4b8cb4
Start refactoring chat. Get the UI to show as a slide in (ctrl+up)
2006-06-14 23:24:11 -04:00
Marco Pesenti Gritti
7e6f6ec349
Dan doesn't like the big share button, tasteless!
2006-06-14 22:20:28 -04:00
Marco Pesenti Gritti
4eaa096576
Cast to int where necessary
2006-06-14 22:08:18 -04:00
Marco Pesenti Gritti
a4b2e74d25
Get rid of the web search activity, refactor
2006-06-14 22:04:44 -04:00
Marco Pesenti Gritti
3e3c168ab0
Cleanup searching some
2006-06-14 21:52:46 -04:00
Marco Pesenti Gritti
3497fd3ad2
More work on the slide in windows
2006-06-14 19:00:56 -04:00
Marco Pesenti Gritti
6cca4f34f3
My first window manager!!! :P
2006-06-14 16:30:53 -04:00
Marco Pesenti Gritti
26b117cff0
Use ignore_reply rather than idle_add, thanks j5
2006-06-14 15:27:54 -04:00
Dan Williams
ca60226fb0
Do callbacks in an idle handler so we don't dbus deadlock at any point
2006-06-14 15:06:25 -04:00
Marco Pesenti Gritti
3ea146e17c
Initial start page implementation
2006-06-14 15:01:17 -04:00
Dan Williams
4a7aac0e01
Add makefile for presence module
2006-06-14 14:43:56 -04:00
Dan Williams
1cdaf97f20
Switch from Groups to grouping services based on activity UID
2006-06-14 14:42:44 -04:00
Dan Williams
55f538253c
Error checking on activity UID
2006-06-13 16:01:39 -04:00
Dan Williams
b92c730457
Add uid argument to PresenceService.start()
2006-06-13 16:00:11 -04:00
Dan Williams
26ee2d57d8
Clean up tracking of service advertisements and conversion to Service objects.
2006-06-13 15:25:54 -04:00
Marco Pesenti Gritti
3e666c005f
Forgot to add this
2006-06-13 15:18:29 -04:00
Marco Pesenti Gritti
0f3c33de86
Add messages on idle so that we don't break
2006-06-13 15:18:04 -04:00
Marco Pesenti Gritti
9ebcd65659
Implement the share button on the presence window
2006-06-13 14:49:01 -04:00
Marco Pesenti Gritti
2415fee0ed
Add util to generate unique ids.
2006-06-13 13:32:49 -04:00
Dan Williams
21d1294c7a
Fix service disappearance
2006-06-12 21:33:05 -04:00
Marco Pesenti Gritti
20d7582f1d
Add scrollbars to the console, wrap word
2006-06-12 20:22:12 -04:00
Marco Pesenti Gritti
6037caa691
Run gtk_main only if it's __main__,
2006-06-12 20:08:27 -04:00
Marco Pesenti Gritti
cdf7583d39
Adapt to the new api... get back the browser running
2006-06-12 19:52:37 -04:00
Marco Pesenti Gritti
37d6c00fc3
Remove unused files
2006-06-12 19:44:08 -04:00
Dan Williams
ce1d1c879f
Add Owner.py, forgot that one too
2006-06-12 18:51:40 -04:00
Dan Williams
ef35f9327e
Forgot to add the Group.py file
2006-06-12 18:51:06 -04:00
Dan Williams
e934e153f6
Add module init file
2006-06-12 18:50:04 -04:00
Dan Williams
17c371119d
More presence service rework
2006-06-12 18:31:26 -04:00
Dan Williams
d931dca579
Main bits of presence service refactor
2006-06-09 17:23:42 -04:00
Marco Pesenti Gritti
c4b112366c
Force themes to be olpc, so people can get
2006-06-07 16:08:14 -04:00
Marco Pesenti Gritti
09353c0154
Merge
2006-06-07 13:26:38 -04:00
Marco Pesenti Gritti
8ae9f43540
ugly workaround for a dbus < 0.61 bug
2006-06-07 13:26:01 -04:00
Dan Williams
a0ed2fa232
merge
2006-06-07 12:23:14 -04:00
Dan Williams
f7cd0939c4
Fix traceback on focus changes
2006-06-07 12:22:28 -04:00
Marco Pesenti Gritti
55d863fc71
Add a few missing files to the makefiles,
2006-06-07 12:21:47 -04:00
Marco Pesenti Gritti
3710eea217
Start factoring out the presence stuff from chat UI... very very very broken right now
2006-06-06 12:43:26 -04:00
Dan Williams
046a954de1
Change Activity so that subclasses don't have to call Activity superclass methods from the shell callbacks. Makes subclasses simpler since they don't (necessarily) have to care about OO concepts like superclasses right away.
2006-06-05 12:35:00 -04:00
Dan Williams
93333ed5cf
Ignore avahi 'Local name collision' exceptions for now, but this should really get fixed
2006-06-05 10:47:14 -04:00
Dan Williams
a0f7a4abc6
Only try for buddy icon 3 times
2006-06-05 10:46:41 -04:00
Dan Williams
46a6122d26
Return correct GSource callback return value
2006-06-05 10:46:26 -04:00
Dan Williams
f2161d533b
Further fixes for Activity refactoring changes.
2006-06-02 15:02:59 -04:00
Dan Williams
4c7f15f694
Refactor dbus out of Activity objects so that we're sure when
2006-06-02 14:52:20 -04:00
Marco Pesenti Gritti
f96fbfc10b
Split up the browser, some cleanups and
2006-05-31 18:01:24 -04:00
Marco Pesenti Gritti
03af8bceea
Simplify redirecting output to the console
2006-05-23 16:02:13 -04:00
Marco Pesenti Gritti
f2e9500a9b
s/Web Browser/Web
2006-05-23 15:46:42 -04:00
Marco Pesenti Gritti
92280c8503
Remove notify_new.. again, bad dcbw
2006-05-23 13:47:01 -04:00
Marco Pesenti Gritti
b9734f4da3
Add missing file
2006-05-23 13:04:06 -04:00
Marco Pesenti Gritti
dde63625a5
Merge
2006-05-23 12:48:29 -04:00
Marco Pesenti Gritti
178468e2c0
Don't show hidden tabs border in the editor
2006-05-23 12:48:08 -04:00
Dan Williams
a7a0c2cda5
Fix some spacing issues; catch exceptions in XMLRPC client code and return result status (success or failure) to XMLRPC client callback
2006-05-23 12:42:26 -04:00
Marco Pesenti Gritti
89f9730641
Merge
2006-05-23 12:42:17 -04:00
Marco Pesenti Gritti
dcf78f2665
Change notification for browser sharing
2006-05-23 12:37:31 -04:00
Dan Williams
d9314f5314
Remove hack for scroll-to-bottom and do it properly.
2006-05-23 12:23:38 -04:00
Marco Pesenti Gritti
5879cc8190
Fix links in one-to-one chat
2006-05-23 12:01:42 -04:00
Dan Williams
8c21c67cf1
- (__key_press_event_cb): don't send zero-length messages
2006-05-23 02:59:27 -04:00
Dan Williams
54450d3482
Nicely space buddy icons, and bold-ify nicknames in chat view
2006-05-23 01:55:27 -04:00
Dan Williams
6cc5d749f6
- Implement async XML-RPC client
2006-05-23 00:15:14 -04:00
Dan Williams
8e7a72c9da
Fix traceback on activity disconnect
2006-05-23 00:10:10 -04:00
Marco Pesenti Gritti
fc5e077bdc
Make that red not so red ;)
2006-05-22 23:16:54 -04:00
Marco Pesenti Gritti
073ffd1bff
Default to tab active, this is damn racy
2006-05-22 23:10:12 -04:00
Marco Pesenti Gritti
bbeced56e5
Finish up chat notification, there are races but it seem
2006-05-22 23:08:41 -04:00
Marco Pesenti Gritti
9df1c653d5
Make it easy to run two instances. See README
2006-05-22 22:40:49 -04:00
Marco Pesenti Gritti
a32007ec7a
Add two env vars to set nick name and user dir
2006-05-22 22:14:22 -04:00
Marco Pesenti Gritti
d213eada76
Change tab label color when there are
2006-05-22 17:59:42 -04:00
Marco Pesenti Gritti
a6b1307eb4
Fix tab focus stuff
2006-05-22 16:45:50 -04:00
Marco Pesenti Gritti
112f067c01
Merge
2006-05-22 16:36:02 -04:00
Marco Pesenti Gritti
d5ff67caa5
Listen on buddy for icon changes
2006-05-22 16:35:31 -04:00
Dan Williams
4fb745e204
Turn off debug print
2006-05-22 16:12:45 -04:00
Dan Williams
c52b59cd6c
Turn off debug print
2006-05-22 16:11:02 -04:00
Dan Williams
a7a2211b68
Ensure that services this sugar instance registers are register with the owner as well.
2006-05-22 16:05:17 -04:00
Marco Pesenti Gritti
0c2940d56e
Get rid of the new message icon entirely
2006-05-22 15:25:10 -04:00
Dan Williams
30f3c73dcb
Add some comments; retry icon requests after a bit
2006-05-22 14:27:35 -04:00
Dan Williams
84ae7feb3a
String-ify data before trying to pack it into the struct.
2006-05-22 14:27:06 -04:00
Dan Williams
55bf8c79cb
Fix bad usage of a dict
2006-05-22 14:26:14 -04:00
Marco Pesenti Gritti
2b2dbc8099
Clear the setchpad after sending
2006-05-22 13:36:58 -04:00
Dan Williams
8b4a4e2afe
Ensure buddy icon is at least None; if the sugar directory doesn't exist, make it.
2006-05-22 13:30:13 -04:00
Dan Williams
dabfae4763
Remove thread init stuff again, dbus angry
2006-05-22 12:53:27 -04:00
Dan Williams
d4fb0608fd
Another try at not making dbus angry with threads.
2006-05-22 12:52:07 -04:00
Dan Williams
6998f6b3a6
Ensure keys exist or don't exist before using them or adding them, respectively
2006-05-22 12:51:39 -04:00
Dan Williams
3f320fcc52
Get group from the right place
2006-05-22 12:02:00 -04:00
Dan Williams
560648afa5
Make dbus happy by _not_ initializing gtk threading... (WTF?)
2006-05-22 11:53:22 -04:00
Dan Williams
58ed74bae6
Stick main code into main()
2006-05-22 11:47:59 -04:00
Marco Pesenti Gritti
cf283a91a8
Missing []
2006-05-22 02:35:22 -04:00
Marco Pesenti Gritti
7ecf98ba95
Check if the icon exists
2006-05-22 02:32:34 -04:00
Marco Pesenti Gritti
f5173c33d0
Merge
2006-05-22 02:11:39 -04:00
Marco Pesenti Gritti
d3c5da1a66
Display icons in the chat
2006-05-22 02:10:30 -04:00
Dan Williams
3b2f185e5c
- Refactor service handling. Buddies can now have more than one service associated
2006-05-22 01:21:12 -04:00
Marco Pesenti Gritti
cbae21b487
Add an .hgignore file so that I stop to forget
2006-05-22 00:18:33 -04:00
Marco Pesenti Gritti
e4cad71b56
Forgot to add this
2006-05-21 23:33:47 -04:00
Marco Pesenti Gritti
67beb6298b
Merge
2006-05-21 22:21:42 -04:00
Marco Pesenti Gritti
325fb8ff25
Add an emoticons menu
2006-05-21 22:20:37 -04:00
Dan Williams
3841ac9983
merge
2006-05-21 21:31:57 -04:00
Dan Williams
2c272cc892
Do buddy icons
2006-05-21 21:30:26 -04:00
Dan Williams
1c54ef5002
Make colors work in Sketch
2006-05-21 00:29:20 -04:00
Marco Pesenti Gritti
1a2f5cc3f7
Parse text emoticons
2006-05-21 20:37:29 -04:00
Marco Pesenti Gritti
58d6cbd76f
Add support for icons
2006-05-21 20:02:14 -04:00
Marco Pesenti Gritti
bd8b2437a6
Start drawing from the actual start point
2006-05-21 18:55:37 -04:00
Marco Pesenti Gritti
2174b6e0fd
Add a way to get user dir
2006-05-21 17:49:27 -04:00
Marco Pesenti Gritti
41ec035dc7
First go at drawing UI
2006-05-20 18:50:39 -04:00
Dan Williams
dc276e7b7f
Show sketches inline in chat
2006-05-19 20:45:17 -04:00
Dan Williams
3267a94c06
Extract and receive sketches as well as text messages
2006-05-19 20:01:03 -04:00
Marco Pesenti Gritti
19c75f6c4f
Forgot to add this
2006-05-19 19:55:55 -04:00
Marco Pesenti Gritti
b4d4d9eb21
Merge
2006-05-19 18:05:59 -04:00
Marco Pesenti Gritti
11a1925c2d
Write a toolbox and partially integrate it with the chat.
2006-05-19 18:05:00 -04:00
Dan Williams
2a2903d1fb
Change chat's send_message() -> send_text_message() to prepare for sketch-in-chat
2006-05-19 16:27:29 -04:00
Dan Williams
2b8d593f4a
Only parse <richtext> tagged XML
2006-05-19 16:26:08 -04:00
Dan Williams
887034c8a4
Consolidate recv_message() and send_message() code
2006-05-19 15:52:44 -04:00
Dan Williams
9a1324d0b0
Replace StreamReader and StreamWriter with a unified Stream class. Since the
2006-05-19 14:50:20 -04:00
Dan Williams
8cfc17ff55
argument is a string, not a buddy
2006-05-19 14:44:42 -04:00
Marco Pesenti Gritti
8499e97a00
Merge
2006-05-19 14:19:03 -04:00
Marco Pesenti Gritti
d2cc475095
Get something basic working
2006-05-19 14:18:41 -04:00
Dan Williams
795e4bb2db
Deal with keyboard interrupt correctly.
2006-05-19 13:23:07 -04:00
Dan Williams
1e2d880d6d
More informative error if avahi isn't around.
2006-05-19 13:20:52 -04:00
Dan Williams
825f1d205d
Don't traceback on Ctrl+C
2006-05-19 12:57:56 -04:00
Marco Pesenti Gritti
6fd95df6b5
First go at the sketch pad thing
2006-05-19 12:45:08 -04:00
Dan Williams
96a90ca32c
Pathetically simplify retransmit timings.
2006-05-19 11:37:05 -04:00
Marco Pesenti Gritti
4dca6521aa
Some tiny UI improvements
2006-05-18 17:31:23 -04:00
Marco Pesenti Gritti
745f5982b4
Add icon to the bar
2006-05-18 17:11:09 -04:00
Marco Pesenti Gritti
c87af3d782
Fix switched title/address
2006-05-18 16:52:20 -04:00
Marco Pesenti Gritti
230c7379be
Forgot to add these
2006-05-18 16:46:31 -04:00
Marco Pesenti Gritti
8b24b5eaaa
Dont break if PYTHONPATH is undefined
2006-05-18 16:42:56 -04:00
Marco Pesenti Gritti
fd8a921d96
Improve the page sharing UI
2006-05-18 16:35:12 -04:00
Marco Pesenti Gritti
6f77290880
Improve notification bar appeareance.
2006-05-18 15:58:42 -04:00
Dan Williams
533dbd638e
Implement retransmit requests on receiver side, fix some stuff up.
2006-05-18 13:09:56 -04:00
Marco Pesenti Gritti
3e1f404879
Check activities dir exists
2006-05-18 12:17:25 -04:00
Marco Pesenti Gritti
b67a967699
Remove the old, non functional activity example. We have a
2006-05-18 01:43:05 -04:00
Marco Pesenti Gritti
3f624fdcf7
Add a sample activity. Too bad gmail crashes the
2006-05-18 01:17:40 -04:00
Marco Pesenti Gritti
e31583daad
Merge
2006-05-18 00:25:40 -04:00
Marco Pesenti Gritti
11a923d4b1
Load session from .activity files
2006-05-18 00:24:32 -04:00
Dan Williams
64dc217f52
Ensure that RetransmitSegment construction from data is correct.
2006-05-17 22:33:52 -04:00
Marco Pesenti Gritti
2b310dda96
Some renaming
2006-05-17 17:29:23 -04:00
Marco Pesenti Gritti
e0658bfc1d
Wrong function signature
2006-05-17 17:21:18 -04:00
Marco Pesenti Gritti
d89682bfe5
merge
2006-05-17 17:17:21 -04:00
Marco Pesenti Gritti
8d1e105e51
Actually hook up the action button
2006-05-17 17:14:36 -04:00
Dan Williams
7f33469924
More testcases for RetransmitSegment, and fix some RetransmitSegment bugs
2006-05-17 17:06:06 -04:00
Marco Pesenti Gritti
de8ef99294
Forgot to add the file
2006-05-17 17:04:42 -04:00
Marco Pesenti Gritti
835bb66852
First implementation of the totems ui
2006-05-17 16:56:42 -04:00
Dan Williams
11d54d71a9
Add a bunch of testcases
2006-05-17 16:23:35 -04:00
Dan Williams
f751407d50
Refactor the segment class into two type-specific classes and base class
2006-05-17 13:11:48 -04:00
Dan Williams
093667d253
Refactor global vars into appropriate classes
2006-05-17 10:30:11 -04:00
Marco Pesenti Gritti
6d7e1dcb4c
Do not crash if cannot find icon
2006-05-17 00:23:00 -04:00
Marco Pesenti Gritti
2ae62db4cc
Enable the console only when running from source path.
2006-05-17 00:12:01 -04:00
Marco Pesenti Gritti
53ccec5267
Forgot to add new file
2006-05-16 19:23:42 -04:00
Marco Pesenti Gritti
8a9d0b657c
Add a gui console so I can see output in
2006-05-16 19:21:52 -04:00
Dan Williams
b6d50a215b
Add a segment type and start bits for retransmission requests.
2006-05-16 17:08:39 -04:00
Marco Pesenti Gritti
17b77fc7cc
Make this work also when running from inside sugar/
2006-05-16 16:52:54 -04:00
Marco Pesenti Gritti
1f33120951
Merge
2006-05-16 16:33:11 -04:00
Marco Pesenti Gritti
8162cc8468
Do not rely on dbus auto-activation.
2006-05-16 16:32:08 -04:00
Dan Williams
0f7dc51ac0
Do message reassembly
2006-05-16 16:26:23 -04:00
Dan Williams
e4516c6d81
Add start of mostly reliable UDP pipe communication code
2006-05-16 14:40:52 -04:00
Marco Pesenti Gritti
7fa4630cd3
Fixup a bunch of missing files in the makefiles
2006-05-16 13:42:39 -04:00
Marco Pesenti Gritti
7b2927166b
Typo
2006-05-15 17:33:33 -04:00