Zach Copley
e3c70cc30c
Merge branch 'friendships_show' into 0.8.x
...
* friendships_show:
Implement friendships/show API method
Route and stub for new friendships/show API method
2009-07-03 15:43:14 -07:00
Zach Copley
a2a4cc35f6
Implement friendships/show API method
2009-07-03 15:42:12 -07:00
Evan Prodromou
c04e3c7769
only show subscribe button in profile list for local users
2009-07-03 10:14:02 -04:00
Evan Prodromou
72d0ee4e25
move peoplesearchresults class to action/peoplesearch
2009-07-03 10:10:12 -04:00
Evan Prodromou
3e4be98ff6
add _queueName function
2009-07-03 10:05:07 -04:00
Evan Prodromou
00074cda73
Merge branch '0.8.x' into queuemanager
2009-07-03 03:08:34 -04:00
Zach Copley
acb4c78346
Route and stub for new friendships/show API method
2009-07-02 17:32:27 -07:00
Zach Copley
d80c553e5f
Make logging facility configurable
2009-07-02 16:06:13 -07:00
Evan Prodromou
e8f27025ba
more logging in stompqueuemanager
2009-07-02 12:43:09 -04:00
Sarven Capadisli
a9c83b064f
Added event to let the site owner add more information into <address>
...
for contact e.g., email, location, tagline
2009-07-02 16:06:06 +00:00
Sarven Capadisli
35a5934503
Changed sioc:reply_to to sioc:reply_of
2009-07-02 15:38:25 +00:00
Evan Prodromou
5f9a4ebef4
Merge branch '0.8.x' into queuemanager
2009-07-02 08:51:10 -04:00
Zach Copley
734f631e1e
Show correct number of profile avatars and 'all' link in subs asides
2009-07-01 18:40:14 -07:00
Evan Prodromou
721ba6c88f
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-07-01 12:58:49 -04:00
Evan Prodromou
8a8390c1a7
exclude p argument when calculating selfUrl
2009-07-01 12:58:16 -04:00
Evan Prodromou
e52997e52f
change queuehandler class to use queuemanager interface
2009-07-01 12:11:02 -04:00
Evan Prodromou
a35138b268
add fail() method to dbqueuemanager and fix logging
2009-07-01 12:10:25 -04:00
Evan Prodromou
2325d934a8
add fail() method to stompqueuemanager
2009-07-01 12:10:11 -04:00
Evan Prodromou
557418bc1e
better transport choices when xmpp is disabled
2009-07-01 12:09:41 -04:00
Evan Prodromou
887d35cfc8
better queue manager detection, new method fail()
2009-07-01 12:09:18 -04:00
Evan Prodromou
f61645aef8
take out session handler notification
2009-07-01 11:38:10 -04:00
Evan Prodromou
e0bf8ad95b
Add UnQueueManager for immediate handling
...
Perhaps it's a little precious, but I took out the switches in
util.php to determine what's supposed to be sent when, and made
a queuemanager class that will just do things when they're supposed to
be done.
2009-07-01 11:34:12 -04:00
Evan Prodromou
7b66a12913
save frames for StompQueueManager
2009-07-01 11:10:23 -04:00
Evan Prodromou
4c256a6d7e
better hook variables for StartQueueManager
2009-07-01 11:09:58 -04:00
Evan Prodromou
58b427869a
compile errors in DBQueueManager
2009-07-01 11:09:42 -04:00
Jeff Mitchell
b416df9312
Add site-wide option to change the length at which URLs are auto-shortened
2009-06-30 16:46:33 -07:00
Zach Copley
ccbc5c447d
Merge commit 'jeff-themovie/small-fixes' into 0.8.x
...
* commit 'jeff-themovie/small-fixes':
Fix missing max_id in API search calls
Fix "Trying to get property of non-object" errors when a user tries to log in using an unknown nickname
Fix "Trying to get property of non-object" errors when accessing the people search results page
Fix "Undefined variable: cnt"
Fix "Trying to get property of non-object" errors in groupeditform.php
Fix "Undefined property: DisfavorAction::$id"
2009-06-30 16:25:52 -07:00
Zach Copley
b10dba2798
Merge commit 'jeff-themovie/invite-enabled' into 0.8.x
...
* commit 'jeff-themovie/invite-enabled':
Adds $config['invite']['enabled'] to enable/disable invites.
2009-06-30 16:10:12 -07:00
Jeff Mitchell
c3cffaf9c7
Laconica defaults to a locale 'en' which uses language 'en'. Unfortunately, this language doesn't exist -- properly it's en_US. This causes a lot of spammy messages in syslog. This fix simply changes 'en' to have
...
the same properties as 'en-us', i.e. a language of en_US and a description of 'English (US)'.
2009-06-30 14:36:40 -07:00
Zach Copley
4321e02c7b
Delete orphaned background imgs. Design settings code now passes
...
phpcs.
2009-06-29 16:57:36 -07:00
Zach Copley
a23b612ae9
Small comment change (default is for both users an groups)
2009-06-29 15:37:13 -07:00
Zach Copley
135927e42a
Allow users and groups to reset their design to system default colors
2009-06-29 14:52:38 -07:00
Zach Copley
dd1fc46f09
Merge branch '0.8.x' into design_reset
...
* 0.8.x: (32 commits)
admin indicators in groups
show section with admins in sidebar of group
update to latest (r76) version of XMPPHP
better output for common error handler
fix logging error
note when going background
change name of constructor for xmppdaemon
add a lot more logging to xmppdaemon
error in get_option_value wasn't returning a value
reformat commandline.inc
if not in daemon mode, xmppdaemon sends log to stdout
extract log-line formatting to its own function
got my background/foreground logic backwards
twitter status fetcher takes an id argument
more efficient fixup of conversations
commandline processing handles errors better
xmppdaemon.php can stay in foreground
command line arg handling a little more flexible
Daemon can optionally not go into the background
don't canonicalize people's text into URLs
...
Conflicts:
theme/base/css/display.css
2009-06-29 13:23:45 -07:00
Evan Prodromou
14575fe6fc
better output for common error handler
2009-06-28 19:24:14 -04:00
Evan Prodromou
6557a569e5
fix logging error
2009-06-28 17:41:16 -04:00
Evan Prodromou
5cc58f1e01
note when going background
2009-06-28 17:38:02 -04:00
Evan Prodromou
9f079764aa
extract log-line formatting to its own function
2009-06-28 16:38:27 -04:00
Evan Prodromou
6ca4dfa7ef
Daemon can optionally not go into the background
2009-06-28 16:12:23 -04:00
Evan Prodromou
495c85544a
don't canonicalize people's text into URLs
2009-06-28 15:21:15 -04:00
Evan Prodromou
854c82cfd5
start of queuemanager code
2009-06-28 14:38:34 -04:00
Evan Prodromou
e5b758dbbe
start of queuemanager code
2009-06-28 14:38:31 -04:00
Evan Prodromou
871f598dcc
debug flag for sessions
2009-06-27 08:11:09 -07:00
Evan Prodromou
70521d55a8
log IP for API auth errors
2009-06-27 07:37:58 -07:00
Evan Prodromou
7af94dc125
some debugging code for sessions
2009-06-27 07:09:21 -07:00
Evan Prodromou
71dad1ff62
use the session class to store sessions
2009-06-27 06:20:24 -07:00
Evan Prodromou
0ca22cf6e2
a memcached_dataobject class for saving sessions
2009-06-27 05:48:22 -07:00
Evan Prodromou
ce76d61957
marker in sessions
2009-06-27 05:07:14 -07:00
Sarven Capadisli
f65015b24a
Added input submit to let the user to go back to site's default design
...
settings
2009-06-27 03:21:18 +00:00
Jeffery To
612a107e09
Merge branch '0.8.x' into small-fixes
2009-06-26 15:44:31 +08:00
Jeffery To
6328add622
Merge branch '0.8.x' into invite-enabled
2009-06-26 15:31:42 +08:00
Zach Copley
4662a4fa0d
Add attachment action back into router
2009-06-25 14:05:06 -07:00
Zach Copley
6262fdbe78
Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x
...
* '0.8.x' of git@gitorious.org:laconica/dev:
Added fragment identifier to the "in context" URL which points to
Adds a scrollbar if the filename is too long for the attached file
2009-06-25 12:52:55 -07:00
Zach Copley
2707622762
Return clippy to his rightful place next to attachments
2009-06-25 12:52:10 -07:00
Sarven Capadisli
0eb77e6753
Added fragment identifier to the "in context" URL which points to
...
the notice location in the Conversation page.
2009-06-25 18:57:39 +00:00
Sarven Capadisli
e872ca5bfa
Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x
2009-06-25 06:57:00 +00:00
Sarven Capadisli
fcb43dd711
Added class entry-content to attachment list container
2009-06-25 06:55:40 +00:00
Evan Prodromou
becfd6b3b5
all daemons take an id parameter
2009-06-24 19:31:12 -07:00
Evan Prodromou
a6c56d17e0
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-24 19:18:32 -07:00
Evan Prodromou
63f12c48a8
make stomp server work with username and password
2009-06-24 19:17:41 -07:00
Sarven Capadisli
835799ff16
Separated attachment view components
2009-06-25 00:49:54 +00:00
Sarven Capadisli
fa57e717e3
Moved the attachment representation outside of the anchor so that
...
onclick, it doesn't follow through on the href (e.g., it would play
the video in the overlay instead)
2009-06-25 00:25:22 +00:00
Brenda Wallace
56496a2cb5
add missing group by item, to make database that aren't mysql happy
2009-06-24 21:31:10 +12:00
Zach Copley
d72a90161b
Only show "tile background" setting once an img has been uploaded
2009-06-24 00:43:48 -07:00
Zach Copley
b702461f69
fix bad function call (needed to be static)
2009-06-24 00:27:37 -07:00
Sarven Capadisli
2d3e990ed4
Using default theme design values (it was previously set to identica
...
theme)
2009-06-23 21:26:47 +00:00
Jeffery To
280f8faab4
Merge branch '0.8.x' into small-fixes
...
Conflicts:
lib/peoplesearchresults.php
lib/profilelist.php
2009-06-24 01:25:55 +08:00
Evan Prodromou
a21a9f26c5
append uploads to content rather than showing them double
2009-06-23 07:29:43 -07:00
Evan Prodromou
e2becdb251
use a subclass for single notice items to show attachments
2009-06-23 07:25:18 -07:00
Evan Prodromou
7bcaa858af
make file command configurable
2009-06-23 05:35:20 -07:00
Evan Prodromou
205d8afe54
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-22 17:13:28 -07:00
Evan Prodromou
9171f16b73
add commandline.inc for parsing
2009-06-22 15:29:24 -07:00
Evan Prodromou
0461aafeef
Merge branch '0.8.x' into cmdline
2009-06-22 14:51:17 -07:00
Zach Copley
09e24af683
Add upload location to attachments config section
2009-06-22 21:36:04 +00:00
Zach Copley
e6559e3bea
Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x
...
* '0.8.x' of git@gitorious.org:laconica/dev:
Layout fix for IE6
theme dir, path configurable
2009-06-22 10:56:02 -07:00
Evan Prodromou
7cf0a4c647
theme dir, path configurable
2009-06-22 09:31:55 -07:00
Zach Copley
9014a0a90d
Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x
...
* '0.8.x' of git@gitorious.org:laconica/dev:
Add like for search
got rid of 'skin' concept a while ago
add collecta.com link
Update copyright dates in files modified in 2009
change Controlez-Vous to Control Yourself
ignore config.php.*
Position of max_file_size position helps IE
2009-06-21 22:30:39 -07:00
Evan Prodromou
876ab05927
Add like for search
2009-06-21 21:50:35 -07:00
Evan Prodromou
02a4ca9e2e
got rid of 'skin' concept a while ago
2009-06-21 21:38:16 -07:00
Evan Prodromou
b64ac083dd
add collecta.com link
2009-06-21 11:11:12 -07:00
Evan Prodromou
de0335fbe9
add TOS to footer menu if brought-by available
2009-06-20 22:36:56 -07:00
Evan Prodromou
29bebdb50b
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-20 21:32:27 -07:00
Evan Prodromou
aec6456c91
Update copyright dates in files modified in 2009
2009-06-20 16:12:55 -07:00
Evan Prodromou
793a6a1155
change Controlez-Vous to Control Yourself
2009-06-20 16:00:04 -07:00
Evan Prodromou
198afa0a1d
change scripts to take server and path from commandline
2009-06-20 14:58:47 -07:00
Sarven Capadisli
054e4459b2
Position of max_file_size position helps IE
2009-06-20 18:22:05 +00:00
Zach Copley
b8f3f32f3f
Keep Twitter gateway notices from leaking thru MySQL notice search
2009-06-19 20:21:57 -07:00
Sarven Capadisli
9be54a3dcf
Minor indenting
2009-06-19 16:04:14 +00:00
Sarven Capadisli
1c2cf10811
Includes a sioc:reply_to link between notices. It helps with things
...
like http://danbri.org/words/2009/06/16/415
Thanks to Toby Inkster for the patch:
http://buzzword.org.uk/2009/laconica-0.7.3-sioc-reply_to.patch
2009-06-19 15:54:24 +00:00
Evan Prodromou
597df6a234
better calculation of path
2009-06-18 16:19:26 -07:00
Sarven Capadisli
23d6d19e75
Better attachment view check
2009-06-18 19:03:44 +00:00
Sarven Capadisli
730c173238
Updated markup and CSS for attachment_view
2009-06-18 18:48:19 +00:00
Robin Millette
c442b400b9
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-18 06:02:54 -04:00
Robin Millette
65b4cfbb54
Display more oembed info in attachment popup.
2009-06-18 06:02:12 -04:00
Zach Copley
3f032bc36e
Left out some new user and group theming file in the previous commit
2009-06-18 02:16:39 -07:00
Zach Copley
57274d21ba
Group theming.
2009-06-18 02:01:06 -07:00
Zach Copley
6c7bdf9df6
Merge branch 'userdesign' into 0.8.x
...
* userdesign: (56 commits)
Fix for background image repetition for various page heights
Removed height:100% for better background image repetition
A little more specific selector for notice reply
Have user favorites page show user's design
Placed a check to make sure there is a reply button in a notice before
Make MailboxAction read only
Remove stale reference to deprecated personal.php
Uppercase hex color values
Default to image being on, no tile after upload
Fix sidebar color bug default design
Update background image settings to use bitflags
It was accidently removed
Dynamically tile background image and turn background image on or off
Show a background img in settings form
IE7/8 CSS update for user design
Enable tiling of background imgs for Designs
Added background image tile flag to Design
Init styles for tile and image use on/off for user design settings
Added form option to tile background image and to turn it on and off
Add background dir
...
2009-06-17 18:49:25 -07:00
Zach Copley
b0591cd982
Make MailboxAction read only
2009-06-17 17:29:57 -07:00
Zach Copley
4fc4c0a74b
Remove stale reference to deprecated personal.php
2009-06-17 17:13:59 -07:00
Evan Prodromou
2187ec7056
hide group name and aliases in group tag cloud section
2009-06-17 15:20:44 -07:00
Zach Copley
164588ef0f
Merge branch '0.8.x' into userdesign
2009-06-17 21:40:52 +00:00
Zach Copley
cd1361fe96
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-17 14:36:33 -07:00
Zach Copley
8992e8fa7a
Ticket 1612 - make destory (and create) favorites work via API
2009-06-17 14:34:04 -07:00
Zach Copley
7e25a7f3aa
Output XML and JSON error msgs for API calls
2009-06-17 14:32:36 -07:00
Robin Millette
b58dc5e961
Added config option to enable or disable file uploads with notices.
2009-06-17 16:55:01 -04:00
Robin Millette
28d02ec8cd
Make oohembed endpoint configurable.
2009-06-17 16:44:33 -04:00
Zach Copley
af4b18b1e2
Uppercase hex color values
2009-06-17 03:05:48 -07:00
Zach Copley
76cbeff33c
Update background image settings to use bitflags
2009-06-17 02:35:51 -07:00
Zach Copley
d1ae3176b6
Enable tiling of background imgs for Designs
2009-06-16 22:18:25 -07:00
Zach Copley
bc1f877f6e
Design settings now save and displays backgrounds
2009-06-16 19:17:37 -07:00
Zach Copley
c3c30aa0ea
Check to make sure a design exists before trying to display it
2009-06-15 23:18:54 -07:00
Zach Copley
ef99f83963
Output custom stylesheets on design sub-Actions
2009-06-15 22:13:35 -07:00
Zach Copley
44343986c3
Merge branch '0.8.x' into userdesign
...
* 0.8.x:
a little better query handling in redirect code
a little better query handling in redirect code
forgot some functions aren't available at status time
redirect on non-canonical server name
don't show create-a-group link if not logged in
allow a configured base for cache keys
Missing call to getProfile() caused verify_credentials to fail.
change mods for setup script
Script to set up new status networks
strncmp -> strcasecmp
Return network from network setup function
Configurable avatar directory
2009-06-15 21:24:22 -07:00
Zach Copley
e7e3709ae0
Throw an WebColorException if wrong # of hex chars
2009-06-15 21:21:33 -07:00
Zach Copley
20d9350877
User design setting save now
2009-06-15 20:21:33 -07:00
Evan Prodromou
fd290fc3f9
allow a configured base for cache keys
2009-06-15 16:09:40 -07:00
Zach Copley
92f095f589
Merge branch '0.8.x' into userdesign
...
* 0.8.x: (32 commits)
updates to Status_network
makeadmin action
make admins of groups
show aliases when showing a group
Link and distribute notices tagged for a group alias
Code for adding and saving group aliases
Styles for group block
add correct li for css magic for block stuff
typo in profileminilist class
return count from show
try to get the right class for profileminilist
fix perms for classes/statusnet.ini
fixup perms for classes
Added Group_alias class
add a table for group aliases
Cross-browser notice_attach
Allow users to be unblocked from a group
Some UI improvements for blocking and unblocking
The rest of the things necessary to make group block work
Make group block work
...
Conflicts:
db/laconica.sql
lib/common.php
2009-06-15 11:50:08 -07:00
Evan Prodromou
c077ad0775
Configurable avatar directory
...
Avatar directory and path are configurable.
2009-06-15 10:45:50 -07:00
Evan Prodromou
2b8a767770
make admins of groups
2009-06-15 00:59:15 -07:00
Evan Prodromou
4dad3191f6
Merge branch 'groupalias' into 0.8.x
2009-06-14 23:48:24 -07:00
Evan Prodromou
1b6b00a6d0
Link and distribute notices tagged for a group alias
...
Correctly link and distribute notices tagged for a group alias. Added
a helper function, getForNickname(), to User_group, to make it easier
to get a group by its nickname or aliases.
2009-06-14 23:43:47 -07:00
Evan Prodromou
ecbd7718d5
Code for adding and saving group aliases
...
Added code to add and save group aliases. Like tags, aliases are
free-texted in to the group admin page. configurable max number of
aliases, default is three.
2009-06-14 23:37:24 -07:00
Evan Prodromou
c0f3204a10
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-14 22:09:59 -07:00
Evan Prodromou
7097804eeb
typo in profileminilist class
2009-06-14 22:09:17 -07:00
Evan Prodromou
bef643352d
return count from show
2009-06-14 22:09:04 -07:00
Evan Prodromou
ee8dd62038
try to get the right class for profileminilist
2009-06-14 22:07:27 -07:00
Sarven Capadisli
8dd5871d4f
Merge branch '0.8.x' of git@gitorious.org:laconica/dev into 0.8.x
2009-06-15 03:26:32 +00:00
Sarven Capadisli
0bc9b2e730
Cross-browser notice_attach
2009-06-15 03:21:15 +00:00
Evan Prodromou
f8da15bf41
Allow users to be unblocked from a group
...
List users who are blocked from joining a group. Add a form to let
them be unblocked. Add an action that removes the block. Includes
changes to group and groupblock classes.
2009-06-14 16:17:44 -07:00
Evan Prodromou
bd26a80d45
Merge branch '0.8.x' into groupblock
...
Conflicts:
lib/router.php
2009-06-14 15:59:35 -07:00
Evan Prodromou
c2ba727d61
Merge branch '0.7.x' into 0.8.x
2009-06-14 15:58:19 -07:00
Evan Prodromou
203a5aba67
Some UI improvements for blocking and unblocking
...
Add unblock to the router table, so unblocking will work at all.
Block form and unblock form return to subscribers list, not
subscriptions list, by default.
showstream action sends its parameters to block and unblock forms to
better return to the right page.
2009-06-14 15:54:22 -07:00
Evan Prodromou
1c87532912
The rest of the things necessary to make group block work
...
Link to the group block form. Hide join button if the current user is
blocked.
2009-06-14 15:47:39 -07:00
Evan Prodromou
daf2e7ef47
Merge branch '0.8.x' of git@gitorious.org:+laconica-developers/laconica/dev into 0.8.x
2009-06-14 14:54:20 -07:00
Evan Prodromou
b6ef8e735b
base class SubscriptionList for some actions
2009-06-14 14:53:42 -07:00
Evan Prodromou
c2dae24701
Break profilelist into a recipe
...
Expanded the ProfileList class so it worked more like a recipe. This
helps to get rid of a lot of special cases and simplifies the code. It
also makes it possible to do things like group block.
2009-06-14 14:52:26 -07:00
Robin Millette
7c772e1d63
Removed another bit of dead (commented out) code.
2009-06-14 15:48:46 -04:00
Zach Copley
946d016df2
Reworked output for design settings page
2009-06-14 02:03:50 -07:00
Jeffery To
6d308f6ffe
Adds $config['invite']['enabled'] to enable/disable invites.
...
The invite function may not applicable for private and/or closed installs. This adds a configuration option to enable/disable invites (defaulting to enabled), hides the "Invite" nav item when necessary, and adds a check to actions/invite.php.
Note that I haven't tried the Facebook application so I didn't add any checks to actions/facebookinvite.php.
2009-06-14 16:17:22 +08:00
Jeffery To
bb3361467c
Merge branch '0.8.x' into small-fixes
2009-06-14 15:45:58 +08:00
Sarven Capadisli
77c94c44a6
Removed hanging skin crapola
2009-06-14 05:57:59 +00:00
Zach Copley
d0eb2058a5
Merge branch '0.8.x' into userdesign
...
Conflicts:
actions/showfavorites.php
lib/action.php
2009-06-14 00:23:48 +00:00
Zach Copley
89d0583b91
Fixes Ticket #1607 - empty 'page-notice' definition lists were
...
being output in a bunch of places.
2009-06-12 17:06:42 -07:00
Zach Copley
fc6154fe4d
Add a method to check for registered event handlers
2009-06-12 16:56:43 -07:00
Sarven Capadisli
8524990512
http://laconi.ca/trac/ticket/1367
...
Thanks to Toby Inkster for the patch.
2009-06-12 16:18:58 +00:00
Sarven Capadisli
4532babb6f
http://laconi.ca/trac/ticket/1370
...
Thanks to Toby Inkster for the patch.
2009-06-12 16:15:30 +00:00
Sarven Capadisli
392c8d4a96
http://laconi.ca/trac/ticket/863
...
Thanks to Toby Inkster for the patch.
2009-06-12 16:13:45 +00:00
Sarven Capadisli
1627fe8f33
http://laconi.ca/trac/ticket/1368 Site is the space that Container
...
sits in.
Thanks to Toby Inkster for the patch.
2009-06-12 15:42:53 +00:00
Sarven Capadisli
e2476307ba
Updated Creative Commons namespace to current.
...
Thanks to Toby Inkster for the patch.
2009-06-12 15:41:45 +00:00
Jeffery To
53f31a247e
Fix missing max_id in API search calls
2009-06-12 20:03:18 +08:00
Jeffery To
e2b20bd1e6
Fix "Trying to get property of non-object" errors when a user tries to log in using an unknown nickname
2009-06-12 19:58:30 +08:00