Commit Graph

499 Commits

Author SHA1 Message Date
zach db236870c6 Twitter bridge - was checking the wrong bit (!) for reply sync preference
darcs-hash:20081007004432-462f3-6385dcaf69cbcf18ce36a45dc17f5e8b9a19ba31.gz
2008-10-06 20:44:32 -04:00
Zach Copley 654f9b8c97 Twitter bridge -- more explicit checking of noticesync bits
darcs-hash:20080926190543-7b5ce-b67b1f2a27825a38782ea8a7a11cc5f50e49725a.gz
2008-09-26 15:05:43 -04:00
CiaranG b49c2f051a Combined language patches that got missed due to repo dependencies
darcs-hash:20081002181338-f6e2c-cf9cf3791680634fa457cb83dc2e4f933073a9b1.gz
2008-10-02 14:13:38 -04:00
Evan Prodromou 47edd73581 fancy url for favorites rss
darcs-hash:20080928175626-5ed1f-cb8775fbff6825e56378f4b900f496cbc6cb3678.gz
2008-09-28 13:56:26 -04:00
Evan Prodromou 82084ab74c move memcache connections to util.php
darcs-hash:20080926200102-5ed1f-debbc18981424d7724277ac82e5fbfd5e797090e.gz
2008-09-26 16:01:02 -04:00
Evan Prodromou 72b4196db1 correct url for new message form
darcs-hash:20080924210254-5ed1f-2c6fd16b9be0dafb3b72ef23b53193db5e188b46.gz
2008-09-24 17:02:54 -04:00
Evan Prodromou fc7663e86a put message form on inbox and outbox
darcs-hash:20080924204131-5ed1f-099c73720b3a4f2263ca28566fcd6b4c809fd4ab.gz
2008-09-24 16:41:31 -04:00
Evan Prodromou 59682f24d0 change the rule for detecting replies.
darcs-hash:20080924200710-5ed1f-be75fac6babb59469a1967436c32f0d8c8271680.gz
2008-09-24 16:07:10 -04:00
Evan Prodromou 392137b403 change foreign links flags code to use bitmasks
Zach was doing a lot of integer comparisons on the Foreign_link sync
fields. I switched them to use named bitmasks instead. I also switched
the semantics of bit 3 to be the opposite of what Zach had -- I find
lots of double-negatives in a checkbox to be hard to read.

darcs-hash:20080924150834-5ed1f-54cd945f61e43bc06768037c60c1e6180a8feead.gz
2008-09-24 11:08:34 -04:00
Zach Copley 06859cc14e Twitter bridge - pref setting to turn off sending @-replies to Twitter
darcs-hash:20080924023615-7b5ce-c747e8236b3967824ed93f18285e1b6e0b46c3f0.gz
2008-09-23 22:36:15 -04:00
Zach Copley 285f062197 Twitter bridge - Bugfix: You can now turn off brige via prefs
darcs-hash:20080923231921-7b5ce-751490e59ae0a76cebf83eea98da902a63e39645.gz
2008-09-23 19:19:21 -04:00
Zach Copley 6548c6cd18 Added option to add disable attr to common_checkbox()
darcs-hash:20080923213829-7b5ce-da5c5d25639812403eb59787c4c429cc9931d08a.gz
2008-09-23 17:38:29 -04:00
Zach Copley 04b95c25ad Twitter bridge: Hack to get around PHP cURL's use of @ as a metachar,
which was keeping @reply messages from getting posted to Twitter.

darcs-hash:20080923083632-7b5ce-02498acc9fba3070b984eb473ec7825a5eaa2a77.gz
2008-09-23 04:36:32 -04:00
Evan Prodromou cf34bd5da5 make it look like a query
darcs-hash:20080923065211-5ed1f-7d028a9e42be5ba1151a172d0a4e81f4c618dd2e.gz
2008-09-23 02:52:11 -04:00
Evan Prodromou 07500a8d8b append LACONICA_VERSION to css files to force reload
darcs-hash:20080923065021-5ed1f-cef0ed94149b862aa4bf3b1d0189d6fb6d15aaf7.gz
2008-09-23 02:50:21 -04:00
Evan Prodromou e24425d44e correct a couple of bugs
darcs-hash:20080922190937-5ed1f-9439cd9cff178323ac1445f33e2520260b4b267e.gz
2008-09-22 15:09:37 -04:00
Evan Prodromou 054b4d0be6 if favor/disfavor submitted through ajax, return micro-html of form
darcs-hash:20080918135608-5ed1f-d753cb01f96e04871eb4f503ccd258674a03623a.gz
2008-09-18 09:56:08 -04:00
Evan Prodromou cdf125c3e4 correct urls from fancy url for show-message
darcs-hash:20080917185950-5ed1f-27fc1ee8d68df57b8dd687eb4e701beba2269924.gz
2008-09-17 14:59:50 -04:00
Evan Prodromou e42de1ccc1 fancy urls for show message, new message
darcs-hash:20080917180244-5ed1f-06e2ac2d8f094eacd12b316794b0599b57d76596.gz
2008-09-17 14:02:44 -04:00
Evan Prodromou 7f8aaf46c8 move rendering stuff that doesn't depend on notice to a separate function
darcs-hash:20080917112730-84dde-d8bf234bf2a0bf0aca17d653c3cdf57a76ad1a00.gz
2008-09-17 07:27:30 -04:00
Evan Prodromou 00eb929c6b use common_local_url() in tagging, add canonicalization function
darcs-hash:20080917112234-84dde-69fb6c2dc279b8fffd5c524673808d8991e99429.gz
2008-09-17 07:22:34 -04:00
CiaranG b57182a8ef Get correct configured language when all else fails
darcs-hash:20080916172706-f6e2c-762079233fd311ac6f1995415beb36d60484c496.gz
2008-09-16 13:27:06 -04:00
Zach Copley 6b42c984ee Twitter integration - added $config option for source attribute when posting to Twitter
darcs-hash:20080907062118-7b5ce-b4412446bbf245b1d14a78b01ecde0f71f621185.gz
2008-09-07 02:21:18 -04:00
Zach Copley 9eca4e0874 Fold password form into profile settings
darcs-hash:20080907053604-7b5ce-4e01cefdbab4cc73a28960b265c23abf5e2f2b0a.gz
2008-09-07 01:36:04 -04:00
Zach Copley 4f1c30fd88 Conflated Avatar and Profile settings + removed a bunch of unnecessary whitespace
darcs-hash:20080905194732-7b5ce-2797acd4d04f3b02c4ad67be629badbae469e8ed.gz
2008-09-05 15:47:32 -04:00
Zach Copley 412eae10fe Twitter integration - Notices now broadcast (directly) to Twitter from linked accts.
darcs-hash:20080828192509-7b5ce-8387c67500c082eb5a0107c0f78d4cf5620825af.gz
2008-08-28 15:25:09 -04:00
zach a90b556e21 Twitter integration - Oh look, a Twitter settings tab.
darcs-hash:20080822034157-462f3-398e2ba92d9c38520ea6518c3ff614b41f3cc7ec.gz
2008-08-21 23:41:57 -04:00
Evan Prodromou 7416e50daa inbox and outbox for direct messages
Added an inbox and outbox for direct messages.

Factored common code to mailbox.php. Factored common code with
stream.php to personal.php.

darcs-hash:20080916195346-84dde-b5c846f713a970c41fd1b0671cb333e91f3cb920.gz
2008-09-16 15:53:46 -04:00
Evan Prodromou 04f87895ba make favorites form use Ajax
darcs-hash:20080908211610-84dde-8a7819ee8733cf73a778c2448c93974e2adecca7.gz
2008-09-08 17:16:10 -04:00
Evan Prodromou b4db40ce1d write our own submit so there's no <p>
darcs-hash:20080908202226-84dde-bf0bf0d67f1f9a9e4cf70bc20fb12b4ca736b594.gz
2008-09-08 16:22:26 -04:00
Evan Prodromou 9dafde2c9f styling on the favor/disfavor forms to show inline
darcs-hash:20080908201751-84dde-a498395d26b957b72350d8075d056b661a1f77c7.gz
2008-09-08 16:17:51 -04:00
Evan Prodromou 0075f1136f better styling for favor/disfavor buttons
darcs-hash:20080908183515-84dde-7630e2185aa2f0a4e95e3eb8502294361d9879e5.gz
2008-09-08 14:35:15 -04:00
Evan Prodromou 59ef19b7d3 fix requires in dis/favor and correct url in form
darcs-hash:20080908182559-84dde-27b288efd341a4dd148abb641064d9e48ca2aa11.gz
2008-09-08 14:25:59 -04:00
Evan Prodromou c47a576f6c change input buttons to submit buttons
darcs-hash:20080908182353-84dde-c2825731b071e140b8bf8f633246eddc7c5b1f3c.gz
2008-09-08 14:23:53 -04:00
Evan Prodromou a8a3667774 initial non-Ajax version of favorites
darcs-hash:20080908181624-84dde-8200e1d91eb5f560ef0f296c9e1c56f93ef1b0c5.gz
2008-09-08 14:16:24 -04:00
Evan Prodromou e248066b74 updates for invitations
Add the code to registration to handle invitation codes.

Some edge cases on invitations: is the user already subbed to this
person? Tell them. Is the person already on the system? Sub the user
to them, then, and tell the user.

Add some code to User to auto-sub invitees whenever the email address
changes. Call it from a new registration with an invite code, and also
from confirmaddress.

Some whitespace cleanup in the files touched.

darcs-hash:20080827001927-84dde-b50e5d921ca3f2fb894821730ff93cac09d2ba66.gz
2008-08-26 20:19:27 -04:00
Evan Prodromou a442d4d04a fix the invite url
darcs-hash:20080825193450-84dde-a9a2e16b65c21a22adcb5574c4040d401513e961.gz
2008-08-25 15:34:50 -04:00
Evan Prodromou 245b9584bf invite fancy url
darcs-hash:20080825193333-84dde-d02930a6e8c2333cbaa3ec4cddb7e31d1cbaf3eb.gz
2008-08-25 15:33:33 -04:00
Evan Prodromou 1b7e8405c9 add invite to the nav menu
darcs-hash:20080825193235-84dde-fb91c560029b3aa7c73709dba57e00d3cc7f5122.gz
2008-08-25 15:32:35 -04:00
Evan Prodromou ec3c936234 use common-config instead of $config in common_language
darcs-hash:20080922172631-84dde-357c532ac1fb1e2fec54680eb9d294a2ede23ab0.gz
2008-09-22 13:26:31 -04:00
Evan Prodromou f246b8f2d7 cache noticesWithFriends in memcached
noticesWithFriends is turning out to be one of our most expensive
queries. The join is costly, and this method is hit over and over and
over by desktop clients and other API users.

So, I've added a first pass at caching the results. I store a "window"
of notices -- equal to the first 3 pages of notices, plus one for
pagination -- in the memcached cache. If with-friends notices are
requests, I fetch the whole window out of the cache and grab the slice
requested. If the requested notices are outside the window, we just do
the query. If there's nothing in the cache, we request the window and
store it, then return a slice.

I had to add a NoticeWrapper class that works like DB_DataObject
(well, just the fetch() part...) but just holds an array of notices
instead of a DB cursor.

Finally, saving a new notice blows away the caches for subscribed users.

darcs-hash:20080915065616-84dde-1b1e814c2294498a10b763b779cbb62c3f96aa84.gz
2008-09-15 02:56:16 -04:00
Evan Prodromou f72b12c7b8 better @ links
darcs-hash:20080904224129-84dde-6844b29ab1818954aacaf6d9ef11371dbb11812a.gz
2008-09-04 18:41:29 -04:00
CiaranG fff677e6c4 Resolve remote subscribe and omb problems with quotes (Tickets #604 and #567)
darcs-hash:20080904065504-f6e2c-f0c770f52624e7151a93f2ed2b8813657ca88c14.gz
2008-09-04 02:55:04 -04:00
Garret Buell 51caab6e5e Elide_Tags
Make "#sanfrancisco", "#SanFrancisco", "#san_francisco", "#San.Francisco", and "#SAN-FRANCISCO" all link to http://identi.ca/tag/sanfrancisco but preserve appearance

darcs-hash:20080901025932-e3c0d-c0a939eaf7e242d88cbcb0d651c9d53718c60a9d.gz
2008-08-31 22:59:32 -04:00
Garret Buell cca78b26f7 Allow_multicase_tags
Make "#test", "#Test", and "#tEsT" all preserve appearance but link to the same tag

darcs-hash:20080901001241-e3c0d-b466f35f4f023c6c90a6d2817487c97be9a1bbca.gz
2008-08-31 20:12:41 -04:00
Garret Buell e333345722 Tags_without_fancy
Change common_tag_link to format the tag link based on the setting of $config['site']['fancy']

darcs-hash:20080831233401-e3c0d-4e0e43f5a53a6659c49d65a2b1f2a47c5cdec228.gz
2008-08-31 19:34:01 -04:00
Evan Prodromou 439c14d986 use common log in error handler rather than echo
darcs-hash:20080830053052-84dde-279d1c52e9b8696079ba686009ce2d71725a690e.gz
2008-08-30 01:30:52 -04:00
Evan Prodromou c4d6789275 split public stream to its own queue handler
Add another queue handler for the public stream. Should further
parallelize the work of sending out messages.

darcs-hash:20080829181702-84dde-594505aa73d2380b13bd98917b70b02bac597d12.gz
2008-08-29 14:17:02 -04:00
Evan Prodromou f652418863 harmonize csrf and queues
darcs-hash:20080829174012-84dde-4859ce0a34a50080f8376fa3278c3aa3e3a3046d.gz
2008-08-29 13:40:12 -04:00
Evan Prodromou 241881238c misprint of omb as oms
darcs-hash:20080828012619-84dde-f7e993f345220d3642743e9f2567d7f8e6e4b6ce.gz
2008-08-27 21:26:19 -04:00
Evan Prodromou 7887147603 change return in queue function
darcs-hash:20080828001414-d018c-fa900f60f0af20c01e8b83a74834ddf46829f4b2.gz
2008-08-27 20:14:14 -04:00
Evan Prodromou cd5dc3246e got two lines reversed
darcs-hash:20080827211940-84dde-d5b404023a2fb6b74b6255dd91910c9ec7df3cc6.gz
2008-08-27 17:19:40 -04:00
Evan Prodromou b9f0ea6f0e break up monolithic xmppdaemon into multiple queue handlers
Eventually, the poor xmppdaemon has become overloaded with extra
tasks. So, I've broken it up. Now, we have 5 background scripts, and
more coming:

* xmppdaemon.php - handles incoming XMPP messages only.
* xmppqueuehandler.php - sends notices from the queue out through XMPP.
* smsqueuehandler.php - sends notices from the queue out over SMS
* ombqueuehandler.php - sends notices from the queue out over OMB
* xmppconfirmhandler.php - sends confirmation requests out over XMPP.

This is in addition to maildaemon.php, which takes incoming messages.

None of these are "true" daemons -- they don't daemonize themselves
automatically. Use nohup or another tool to background them. monit can
also be useful to keep them running.

At some point, these might become fork()'ing daemons, able to handle
more than one notice at a time. For now, I'm just running multiple
instances, hoping they don't interfere.

darcs-hash:20080827205407-84dde-97884a12f5f4e54c93bc785bd280683d1ee7e749.gz
2008-08-27 16:54:07 -04:00
Evan Prodromou 1df845db78 fix random function name
darcs-hash:20080829021854-84dde-818492a31c07dd0921c2a693095ca7ac901b6d35.gz
2008-08-28 22:18:54 -04:00
Evan Prodromou 54bee1b999 code for session token
darcs-hash:20080829015304-84dde-1c93203bdfbd4c1696cdd3c07212ff16a9f727dd.gz
2008-08-28 21:53:04 -04:00
Evan Prodromou cf3902d8ac get language before setting it.
darcs-hash:20080828005323-84dde-8f69e1e6115faa544c22436539148dac53ed6f65.gz
2008-08-27 20:53:23 -04:00
Evan Prodromou 4cc84c3225 never allow blank passwords
darcs-hash:20080825185245-84dde-f2ad86c1aedc2a42f7b468775234be53a7e84d5b.gz
2008-08-25 14:52:45 -04:00
Evan Prodromou cba4b50e44 use common_sql_now() instead of DB_DataObject_Cast
darcs-hash:20080825182338-84dde-ec0edef9469b294b7e23945f1bc7d810da988ed7.gz
2008-08-25 14:23:38 -04:00
Evan Prodromou e8e91dc29d use UTF-8 as the internal encoding
darcs-hash:20080817153024-84dde-ca566d665fff08d52f1f9796e2731417585d4c6f.gz
2008-08-17 11:30:24 -04:00
Evan Prodromou 2c3ed64027 LOG_ERROR -> LOG_ERR (again)
darcs-hash:20080807234227-84dde-a64619c71de020aa2284ca1a36ea2a71ff8b29a6.gz
2008-08-07 19:42:27 -04:00
Evan Prodromou 80aa8b83db fix config global
darcs-hash:20080806122119-84dde-41fb0645db58ac5ce74b485c8cb68f7275e74915.gz
2008-08-06 08:21:19 -04:00
Evan Prodromou 0d58d4216b fixup locale stuff from mikenz
darcs-hash:20080806040433-84dde-a504751a8a0329a37d866e68a9ecda6a5d629c55.gz
2008-08-06 00:04:33 -04:00
mikec 369354505f Set the C locate to avoid tr_TR php bug see http://www.topolis.lt/php/#35050
darcs-hash:20080804133727-edabd-4bd34431d0ab8519ec512b59be354720925da9a0.gz
2008-08-04 09:37:27 -04:00
Evan Prodromou 4c8dfadf2d make init of lang environment happen earlier, or when user language may have changed
darcs-hash:20080806034515-84dde-e32cbfec2890f50b610d0441659180038b060473.gz
2008-08-05 23:45:15 -04:00
Evan Prodromou b1f28f4457 try to slim down the top menu so it all fits
darcs-hash:20080731020933-84dde-80d7abb2d681a9f748b16f6245d33396e1f899b2.gz
2008-07-30 22:09:33 -04:00
Evan Prodromou f2ae665e13 let @rejon do the homework http://ur1.ca/17c
darcs-hash:20080731020433-84dde-641127c2de488087c1525fc773d544ba5b136550.gz
2008-07-30 22:04:33 -04:00
Mike Cochrane 9d89e7b4ac Update some gettext strings and number the arguements so life is easier for translators
darcs-hash:20080729080641-533db-560337e226a02dd6fc671f090883d4bedd50eaaa.gz
2008-07-29 04:06:41 -04:00
Evan Prodromou 353aa5a0d8 move the language info, fix dir for locales
darcs-hash:20080730035446-84dde-8ce202ea6956bb49e1be98307136fc299862ab9b.gz
2008-07-29 23:54:46 -04:00
Evan Prodromou 4577182d2c rel
darcs-hash:20080729182558-84dde-3f3eab4da119cf57fb55896b114146fd72007824.gz
2008-07-29 14:25:58 -04:00
Evan Prodromou 7e8a58923f change 'deletenotice' to 'notice/delete'
darcs-hash:20080726034209-84dde-02b25960aeb361319f8037b17aed6290d477cf7b.gz
2008-07-25 23:42:09 -04:00
Evan Prodromou b5bd567668 Queue_item correct name in dequeue function
darcs-hash:20080726033958-84dde-09d117b3e5bb997ddfd6548806ce7a51a38434e7.gz
2008-07-25 23:39:58 -04:00
Mike Cochrane dd3ae36084 Cache the DateTimeZon objects
darcs-hash:20080724234619-533db-015a2751ade3b5b8befb8a735fe89acd4742c4b9.gz
2008-07-24 19:46:19 -04:00
Mike Cochrane 22c51b27ef No errors if it's not set
darcs-hash:20080722082840-533db-6df7b1fe05bbcaef6862d3e9b5ee3bcd277523e7.gz
2008-07-22 04:28:40 -04:00
Mike Cochrane 334b840c3e Only Set reply details if there is something to reply to
darcs-hash:20080722082724-533db-ead12f037aa716dc548d6a4b04493ada5049ec96.gz
2008-07-22 04:27:24 -04:00
matthew.gregg ed37d83fa3 Opensearch updates
This adds htaccess and searches for people and notices.

darcs-hash:20080720195505-982e4-3f03e6ab4c466ae131e025b6a3c26c7bb9a99c03.gz
2008-07-20 15:55:05 -04:00
Mike Cochrane 88717d8805 User definable timezones. Work in UTC internally and display per user/site default. http://laconi.ca/PITS/00011
darcs-hash:20080720141325-533db-87cb60501434c9dc0ac13716ba5d8b17754431f5.gz
2008-07-20 10:13:25 -04:00
Mike Cochrane de81e92f0b Strip characters that shouldn't be in xml. Fixes http://laconi.ca/PITS/00253 for future messages, or all after a regeneration of rendered messages
darcs-hash:20080720122832-533db-7fda43b257160b90788f0d860d50df995d463ee8.gz
2008-07-20 08:28:32 -04:00
Mike Cochrane bd0b6970ae Fix undefined variable error
darcs-hash:20080720100024-533db-d2b5b63f169b6e16e08e81c8da63b7f9f69e7521.gz
2008-07-20 06:00:24 -04:00
Mike Cochrane 92e90ee636 Notice error
darcs-hash:20080720094917-533db-386e12dbeabcfb9bc74cdce11e6bc197964929b7.gz
2008-07-20 05:49:17 -04:00
matthew.gregg e20362a60a Adds Opensearch description
darcs-hash:20080720015823-982e4-b33e1ef01cd071e958c9c51625190513b86594f3.gz
2008-07-19 21:58:23 -04:00
matthew.gregg 6dd211530f Patch for PITS 00032, 00033, 00034
darcs-hash:20080719003417-982e4-7004f8a4dfb447f941457c30b0b2289eee5582e6.gz
2008-07-18 20:34:17 -04:00
matthew.gregg faa3933fbb Added notice deletion http://laconi.ca/PITS/00045
Removes selected notice and any replies that reference it.
Attempts to de-queue anything pending.

This patch does not archive notices.

darcs-hash:20080716032045-982e4-a0b5d37ecfa84796f1681dda54110094ad1424c6.gz
2008-07-15 23:20:45 -04:00
Mike Cochrane 5d84485001 First cut at hastags support.
darcs-hash:20080720055702-533db-193ed842b0d0a952bef71a3c5287213ada0ef15c.gz
2008-07-20 01:57:02 -04:00
Mike Cochrane e4f1d6f504 More notice errors and fix and incorrect variable name
darcs-hash:20080720055558-533db-781488916e178921f1bcd6ea141df10c1a0ace55.gz
2008-07-20 01:55:58 -04:00
Evan Prodromou e0e5013a32 don't show register link if the site is closed
darcs-hash:20080724235804-84dde-daf159e938289ad2d593d3825ce845bcbecac053.gz
2008-07-24 19:58:04 -04:00
Evan Prodromou 905ba4998b fix content check so it shows zeros
darcs-hash:20080722163618-84dde-5a519a92a84bb94de225fbb3da61af51cfdfdef4.gz
2008-07-22 12:36:18 -04:00
zach 140689800b Twitter-compatible API - Error handling that better matches Twitter's
darcs-hash:20080720070905-ca946-dda57dd92210461361fd58b7a3244bf24c01e801.gz
2008-07-20 03:09:05 -04:00
Evan Prodromou 0876b60006 rewrite for settings of sms
darcs-hash:20080721083758-84dde-76534893df215e9754c00c1e0a6d6351f64f1818.gz
2008-07-21 04:37:58 -04:00
Evan Prodromou 3372a98f8e add sms broadcast to broadcasting
darcs-hash:20080720195549-84dde-4193f27f8efda497fbe55f1c514fe30e4dd8a69d.gz
2008-07-20 15:55:49 -04:00
Evan Prodromou 5fd0a788d5 start sms settings
darcs-hash:20080720193005-84dde-97e098996309550dc98b658923d84620e7715c69.gz
2008-07-20 15:30:05 -04:00
Mike Cochrane a1515e5411 Some more notice errors - I guess I'm the only one developing with E_ALL
darcs-hash:20080720033236-533db-95f6a169f73e69549a8ff0eefb0e4c8ba21f090e.gz
2008-07-19 23:32:36 -04:00
Mike Cochrane 08dfd72bad A couple more notice errors
darcs-hash:20080720025546-533db-7044949bfaa6676c86f3e1d84d20ecb85aab0937.gz
2008-07-19 22:55:46 -04:00
Mike Cochrane 32136f978a Another notice error
darcs-hash:20080720023510-533db-74cdcbc59c5956c1bd1ce3b01921fd4cd1c7376c.gz
2008-07-19 22:35:10 -04:00
Mike Cochrane e59cfea9bc Fix a couple of notice errors
darcs-hash:20080720023259-533db-6a4e8abb730b2192fcf2887a665dee2e1048529a.gz
2008-07-19 22:32:59 -04:00
Evan Prodromou 54a931a31a LOG_ERROR -> LOG_ERR
darcs-hash:20080718190835-84dde-1ce20cb3ac604f0e9fa9e4ed86118bca7bec3a06.gz
2008-07-18 15:08:35 -04:00
zach 42bbd38417 Twitter-API: /account/verify_credentials.format now works
darcs-hash:20080718040332-ca946-0c8da4f5e98355ccbb1ee929693fa74bff3c2481.gz
2008-07-18 00:03:32 -04:00
zach ac2d811a46 Twitter-compatible API - code cleanup
darcs-hash:20080716220223-ca946-e3eed117cded61eb9c2d2805fd07758f883fb85b.gz
2008-07-16 18:02:23 -04:00
zach 0c90e94864 First volly at a Twitter-compatible API. Just working out the
detials of 1) Basic Auth and 2) dispatch to the right Action class
files to handle the requests.

You can hit it with...

	http://localhost/laconica/api/public_timeline.json

or to try Basic Auth you can try something like:

	http://nickname:password@localhost/laconica/api/statuses/friends_timeline.xml

Although that actual method isn't done yet, so it should authenticate
and then complain.

darcs-hash:20080712081247-ca946-acd3e0e2762c7d9ff0cb3cd7a53cfdfcc5b26660.gz
2008-07-12 04:12:47 -04:00
Evan Prodromou c51d1521f0 uniquify the list of reply nicknames (DOH!)
darcs-hash:20080717164042-84dde-191bc47dc302911e4ceae0d3b1e74116bb95bcba.gz
2008-07-17 12:40:42 -04:00
Evan Prodromou 3ea1119e50 define syslog variables in common.php
darcs-hash:20080717163613-84dde-2684415a03d1a2754e148e4921ce39ad075bbc5b.gz
2008-07-17 12:36:13 -04:00
Evan Prodromou 265d267d81 remove tag URI stuff; unused and confusing
darcs-hash:20080716205359-84dde-590916f8812c7c03a2b81b3e7aeb021194ac0f25.gz
2008-07-16 16:53:59 -04:00
Evan Prodromou eb9715992c utility function for getting a profile URI
I added a utility function for getting a profile URI. At some point we
need to push commonalities between Remote_profile and User into the
Profile class; single-table inheritance. We do a lot of switching
around for no good reason on users and profiles.

darcs-hash:20080716152511-84dde-6f73d947d11083e7235756fde635e145f02e2483.gz
2008-07-16 11:25:11 -04:00
Dave Barry 8b1bf1e38c Fixup rememberme cookie handling in the POST only case
darcs-hash:20080714050037-08d49-b00c6370c4eed918eee94f828e2d6098b922ba69.gz
2008-07-14 01:00:37 -04:00
Evan Prodromou a440afda54 sigh
darcs-hash:20080716031718-84dde-74ce45fdb3be03ae7974f76698d43ecf78730f23.gz
2008-07-15 23:17:18 -04:00
Evan Prodromou c0527f7952 yet more array munging
darcs-hash:20080716031544-84dde-a04b4057e5d7aa394ae061daac47f38089ff5343.gz
2008-07-15 23:15:44 -04:00
Evan Prodromou 542cadd33c lcase tname
darcs-hash:20080716031459-84dde-ccb707bb9059bbc95eabb48cf32edf6dfe803108.gz
2008-07-15 23:14:59 -04:00
Evan Prodromou af03429704 more array munging
darcs-hash:20080716031346-84dde-2aa160254fd80537ba89df2b39b4560c044d1bab.gz
2008-07-15 23:13:46 -04:00
Evan Prodromou f3409f4e70 back out my change to the link format; see if it helps
darcs-hash:20080716030200-84dde-eaff2cdf00d9268594b5ecf7913a6746a516af62.gz
2008-07-15 23:02:00 -04:00
Evan Prodromou 1e9fabbfa3 got the args to array unshift backwards
darcs-hash:20080716030022-84dde-d24e4881e143163031a7b6c077d3eed77a58b579.gz
2008-07-15 23:00:22 -04:00
Evan Prodromou 225208e634 add alternative reply format
darcs-hash:20080716025842-84dde-b4100ca8cec891d34d14c1bc66912cbd3762bdfb.gz
2008-07-15 22:58:42 -04:00
erik ae9fb6a4e5 PITS.00114: 'T USERNAME' should work like an @-link
darcs-hash:20080709010415-7f4fe-943321fd9ad9df3890599fc1b3f99e97db16e43d.gz
2008-07-08 21:04:15 -04:00
Earle Martin 1509f3893c Don't capture trailing ")", "]" or ">" as part of URLs
darcs-hash:20080715022045-68ac8-8f8222e7a97009297bed6ff88b6c020192fe6dd2.gz
2008-07-14 22:20:45 -04:00
Evan Prodromou 61487d4cd0 move email settings to its own tab
darcs-hash:20080715221826-84dde-8a3692f95199818c11dbb0be159d07f1ab10cf6a.gz
2008-07-15 18:18:26 -04:00
Evan Prodromou 8c42fac88a utility for getting avatar or default avatar
darcs-hash:20080714034443-84dde-f443b04e6733b22709d746a700c0ba032d7afb60.gz
2008-07-13 23:44:43 -04:00
Evan Prodromou 68528246e7 extra space in link
darcs-hash:20080714060517-84dde-7ff9417a790ded358d7fc5fe0d565fc5f3591906.gz
2008-07-14 02:05:17 -04:00
Mike Cochrane 834c21b2aa Merge some gettext strings to one line so translation tools are happier
darcs-hash:20080713044608-533db-ee16aecee9b6d82b22ce6a25f6a9573c23eee9f8.gz
2008-07-13 00:46:08 -04:00
Mike Cochrane e6d74660c3 Stop after a redirect. Fixed remote subscription for me.
darcs-hash:20080710055726-533db-4b96201b090970f390d62b305256a786a1a96d44.gz
2008-07-10 01:57:26 -04:00
Mike Cochrane 8fe61b0b92 Missing sprintf
darcs-hash:20080710050459-533db-251d9fec6b700628e3e56607f25e551381f2fad2.gz
2008-07-10 01:04:59 -04:00
Mike Cochrane da19d12620 Bracket in correct place
darcs-hash:20080710050202-533db-31739e6dc9d57058df99c8e6592249563f484179.gz
2008-07-10 01:02:02 -04:00
Mike Cochrane 7e38142d4a Resolve conflicts and convert _t( to _( where it was introduced again.
darcs-hash:20080710045126-533db-ffd9bcfe1295b3a376579ed7cd2278d5597b1884.gz
2008-07-10 00:51:26 -04:00
Mike Cochrane 4b656f47df Merge conflicts and kill a whole lot of trailing whitespace on lines.
darcs-hash:20080709224630-533db-b5399baef280133858dac9b89c2cd6a2aba9f861.gz
2008-07-09 18:46:30 -04:00
Mike Cochrane 67921b1c18 bracket in the wrong place
darcs-hash:20080708130408-533db-9e7fb996a7c37af9557f097d785a53ff77c7559f.gz
2008-07-08 09:04:08 -04:00
Mike Cochrane 4d65b99c68 Translate a few more strings.
darcs-hash:20080708100519-533db-b326ea0bb16ea6c8244cfd00a0dd639d0553dd21.gz
2008-07-08 06:05:19 -04:00
Mike Cochrane 87b494f1eb Convert _t() to _() for gettext.
darcs-hash:20080708094531-533db-83399a46e6ec4c0fcc6249b0235961f969d1ae73.gz
2008-07-08 05:45:31 -04:00
Evan Prodromou a25f5010e6 add the logfile entry to common, a little recoding in common_log
darcs-hash:20080712151521-84dde-a81c53bacbe15e77b70fc460ad9143e7e4f8402c.gz
2008-07-12 11:15:21 -04:00
zach 74c3b9de23 Log msgs can now go to a file as well as syslog
darcs-hash:20080711070021-ca946-8f8f385ddacc098c8a0c2627e3a8690a9f3aa2c7.gz
2008-07-11 03:00:21 -04:00
Evan Prodromou 69445a6179 get avatar by nickname
This is to support third-party apps that want to build an URL to an
avatar given a user's name.

darcs-hash:20080711060045-84dde-08b0072de764d5b67ce7abe73fa0553f32de4ab3.gz
2008-07-11 02:00:45 -04:00
Evan Prodromou 63d34061a2 add notice search rss ("tracking")
darcs-hash:20080709234228-84dde-f24d277947ab49031a1b6d74184568fe2f50a685.gz
2008-07-09 19:42:28 -04:00
Evan Prodromou f09382f9a4 try some scoping
darcs-hash:20080709223803-84dde-c04d91be4d0a39d173297633cf5cad464ea52c4e.gz
2008-07-09 18:38:03 -04:00
Evan Prodromou 5d525893c3 use smarter query builder
darcs-hash:20080709223701-84dde-a2bc25d65eeb70d24d4c598ef962e17062390fc4.gz
2008-07-09 18:37:01 -04:00
Evan Prodromou f20eca5187 fix syntax errors in URL builder
darcs-hash:20080709223409-84dde-809bfe5eb294f24cb3a99faf6436e57ff054cd16.gz
2008-07-09 18:34:09 -04:00
Evan Prodromou 62747030ca add fancy urls for search
darcs-hash:20080709223144-84dde-10f7f9db7dc5ba200fdeea4d6c1f277e71c54c16.gz
2008-07-09 18:31:44 -04:00
Evan Prodromou 5adb386774 wrong comparison operator for saving reply to self
darcs-hash:20080709204050-84dde-b7ed70cb1820e8257f47d5cae23fbc1e1ff5a52f.gz
2008-07-09 16:40:50 -04:00
Evan Prodromou 709f9fe1b7 don't record a reply_to for responses to self
darcs-hash:20080709203925-84dde-d494ddd0188bea229ca75391949ec2f4c6a7bdb3.gz
2008-07-09 16:39:25 -04:00
Evan Prodromou cbe07c1d37 store replies on the notice record, not the reply record
darcs-hash:20080709202716-84dde-30ffe46b711ff108fa210757eeb856803b09de82.gz
2008-07-09 16:27:16 -04:00
Evan Prodromou c8162f7d97 accept replyto for fancy newnotice URL
darcs-hash:20080709072833-84dde-42c600c5facb073f502318cae389832bd2115927.gz
2008-07-09 03:28:33 -04:00
Evan Prodromou 99eaec8c89 forgot to change null check at beginning of set user
darcs-hash:20080709062502-84dde-7e4c574dc0a710bcd0b662bfbab263308d1c9cd5.gz
2008-07-09 02:25:02 -04:00
Evan Prodromou a67108190a don't refetch user objects so much
darcs-hash:20080709055343-84dde-ac550608a4736ce5daed70af19866c75a1cfb416.gz
2008-07-09 01:53:43 -04:00
Evan Prodromou 625ac7e1d9 some debug stuff for remember me
darcs-hash:20080709051943-84dde-1b866d62097c549f14fcf783f4404ae1b31cae18.gz
2008-07-09 01:19:43 -04:00
Evan Prodromou 485314fe20 don't call text if you don't mean it
darcs-hash:20080708235004-84dde-bca47ff45828387ed256195ef5cf9051f99a5163.gz
2008-07-08 19:50:04 -04:00
Evan Prodromou 91af9de7e4 don't do an end tag for empty elements
darcs-hash:20080708233218-84dde-45850157b8fce2ac1d5c1d16a4fdb4fbcc817b76.gz
2008-07-08 19:32:18 -04:00
Evan Prodromou ca4fed34b5 take out queuing debugging
darcs-hash:20080708070457-34904-8c6d51dc78b9ee08aca9890a833a0572de3b7f76.gz
2008-07-08 03:04:57 -04:00
Evan Prodromou 350b6f63a5 UNDO: debugging info for queueing notices
darcs-hash:20080704083216-34904-b1129dd872951f7659de01c991cc00a4c3d276d0.gz
2008-07-04 04:32:16 -04:00
Evan Prodromou cec671443d debugging info for queueing notices
darcs-hash:20080704083216-34904-b170843a5fa73cb36ffb900be6f1bb56a08515d6.gz
2008-07-04 04:32:16 -04:00
Evan Prodromou 31db4cd94e more debug output for rememberme cookies
darcs-hash:20080708064241-84dde-6c72e4e5d5ec5675bdef027e1b241f0555ce8dd1.gz
2008-07-08 02:42:41 -04:00
Evan Prodromou 1c272c2a41 don't try to do date relative
darcs-hash:20080707074755-84dde-478a9a82c598c8d377ea64de50a3523defb34804.gz
2008-07-07 03:47:55 -04:00
Evan Prodromou 8688d707eb better error reporting
darcs-hash:20080707074434-84dde-ffc9b2caeef3e9fef9607511b425880986883d72.gz
2008-07-07 03:44:34 -04:00
Evan Prodromou 834df790ce fancy url for replies rss
darcs-hash:20080707073025-84dde-724deaf0db1c40a95296b53b895a60a04ff7f957.gz
2008-07-07 03:30:25 -04:00
Evan Prodromou dcb6ee8544 created -> modified in Reply
darcs-hash:20080707063731-84dde-0ce24e15c33d1d12e4e2ea1e05129ae6de84cb0e.gz
2008-07-07 02:37:31 -04:00
Evan Prodromou af2fdd0c7b check to see the reply_for worked
darcs-hash:20080707062618-84dde-2bf8d7476a7b234d0f3bc88ce0a20024654c6625.gz
2008-07-07 02:26:18 -04:00
Evan Prodromou 97f9d226dd fix constant in common_db_log_error
darcs-hash:20080707061912-84dde-944b786092dbd40f784ee4c4698d9abf7eab4ffd.gz
2008-07-07 02:19:12 -04:00
Evan Prodromou 208b82a299 use db error logger for common_save_replies
darcs-hash:20080707061639-84dde-a52c5533d52841072acf50a013a89962e4eb644d.gz
2008-07-07 02:16:39 -04:00
Evan Prodromou fac74ecba1 default for datetime in common_relative_profile
darcs-hash:20080707060733-84dde-d0cd0a70aa94b124019378840de1e893ead912d7.gz
2008-07-07 02:07:33 -04:00
Evan Prodromou 8d3ec9c920 twiddle a few bits to make replies work correctly
darcs-hash:20080707054358-84dde-916977a2af4f792e0dc9e02a9f5344ec60911319.gz
2008-07-07 01:43:58 -04:00
Evan Prodromou f6303475aa add replies fancy url and include Reply class
darcs-hash:20080707032348-84dde-e217ed87ae6947d6fdda64dc105ac4a433c7793a.gz
2008-07-06 23:23:48 -04:00
matthew.gregg 0b21ac3dd7 First pass at replies support http://laconi.ca/PITS/00080
Doesn't handle a reply to a user that has never updated.

darcs-hash:20080623030837-982e4-532ccd8899fd8be00575f8840da0defb44cd56f8.gz
2008-06-22 23:08:37 -04:00
Evan Prodromou 6dbf7beb0b prefer, barely, text/html to application/xhtml+xml
darcs-hash:20080706220020-84dde-7e700e953c18909edd05de240c0f989584417294.gz
2008-07-06 18:00:20 -04:00
Evan Prodromou c414746e74 rememberme debugging
darcs-hash:20080705162142-84dde-6bc70413f43e0890e6372962eb14697ee6f88992.gz
2008-07-05 12:21:42 -04:00
Evan Prodromou f6b9662783 error notices
darcs-hash:20080705005602-84dde-3c99dbed5e431a9d4f1de124454296d4709eb115.gz
2008-07-04 20:56:02 -04:00
Evan Prodromou 25e93288ba a little more error-checking in the queuedaemon
darcs-hash:20080705002207-84dde-c5bc4da7dbca8a32ea4126badb772e99bd4f8bf1.gz
2008-07-04 20:22:07 -04:00
Evan Prodromou 4e5ccb933b problem with dates in db error
darcs-hash:20080704071726-34904-bb327b11a8e38788c5d50b1af5e0df5a7feb9275.gz
2008-07-04 03:17:26 -04:00
Evan Prodromou a742505306 log some errors for missed inserts
darcs-hash:20080704062056-84dde-6d5173a345be8fe3e9099e09b438fe69f3d2a1e2.gz
2008-07-04 02:20:56 -04:00
Evan Prodromou d0897f4d1f info about stuff getting queued
darcs-hash:20080704053846-84dde-11afd488ba31664be6cd6955d4198ae11670f6ae.gz
2008-07-04 01:38:46 -04:00
Evan Prodromou 985ba79b4a a couple of things to make queue items work
darcs-hash:20080704052240-34904-c6458bbd6842cd8a86929bba60fb0d4408b56345.gz
2008-07-04 01:22:40 -04:00
Evan Prodromou 73a0271960 enqueue notices for offline broadcast
darcs-hash:20080704050425-84dde-d0106845c7b16b80be8e0d5ee9ac93a457334df7.gz
2008-07-04 01:04:25 -04:00
Evan Prodromou 7816e4122a add a display url function to display URLs
darcs-hash:20080703170347-84dde-1ba2e178dd4051aa63e4073e472c73240e3d9fe8.gz
2008-07-03 13:03:47 -04:00
Evan Prodromou 121b7e60b4 update using a config'd server
darcs-hash:20080703165043-34904-1e63865bc37f34e5dbb6e194d22e4f35383861c2.gz
2008-07-03 12:50:43 -04:00
Evan Prodromou 721d6f94c7 method
darcs-hash:20080702131507-84dde-507a6380fcab66c1fbcbaad6d1399c8a2f210acf.gz
2008-07-02 09:15:07 -04:00
Evan Prodromou 8c1ac74f7c full end element, no space in textarea
darcs-hash:20080702130029-84dde-481fe1f3d7df5cc931010374a7eb8db4f179cf92.gz
2008-07-02 09:00:29 -04:00
Evan Prodromou 74e7dd253c rationalize with mgs version
darcs-hash:20080701182758-84dde-0c80052ea50e6c1c6e8e173c98beb56bc516b2cf.gz
2008-07-01 14:27:58 -04:00
matthew.gregg 11070e6ab7 Fix for space being added to notice form
darcs-hash:20080625142131-982e4-04a23e0c07cff075a3d0ad33f6d765d4eb8b5057.gz
2008-06-25 10:21:31 -04:00
matthew.gregg 240989994d Char counter for notice update text area. http://laconi.ca/PITS/00094
Added a util.js and this uses JQuery.

darcs-hash:20080624174613-982e4-1a6f11365957e6f4ed70b87ce64fb9938441f01f.gz
2008-06-24 13:46:13 -04:00
Evan Prodromou f767a8b63b add more contact information
darcs-hash:20080701175611-84dde-59873964e036f3c9bc225ea8272e840535ea7643.gz
2008-07-01 13:56:11 -04:00
Evan Prodromou 2bb1198774 fancy url for remote subscribe
darcs-hash:20080701164058-84dde-9e3864ddd1174b771d0830bb77db7889c4e3def1.gz
2008-07-01 12:40:58 -04:00
Evan Prodromou c64f137497 refactor common behaviour in settings pages
darcs-hash:20080630170342-84dde-5d7feb88a0a707b24c8070802a7ec99dd1f35687.gz
2008-06-30 13:03:42 -04:00
Evan Prodromou 6c6d94763b add FAQ to foot menu
darcs-hash:20080630161201-84dde-835e66e9abb6e5c447bfc9b97b29bdd27962ac41.gz
2008-06-30 12:12:01 -04:00
Evan Prodromou e41a90e7e9 822 -> 850
darcs-hash:20080627223439-84dde-2d0a8a8284e2f6d6af8710a5b9a52f7d45658f81.gz
2008-06-27 18:34:39 -04:00
Evan Prodromou 3265812833 show exact date when needed
darcs-hash:20080627222930-84dde-e54a369d91060b7ff2559af9ff08735b2eec43d9.gz
2008-06-27 18:29:30 -04:00
Evan Prodromou aa8dac17d3 more natural date strings
darcs-hash:20080627222522-84dde-9bef8dc543bbb945b1f05dbeed43924d27f704d1.gz
2008-06-27 18:25:22 -04:00
Evan Prodromou 5b0d514f08 add some classes to inputs
darcs-hash:20080627145553-84dde-31e52074c9b8327bcebc46372e4ee8f86b77ea20.gz
2008-06-27 10:55:53 -04:00
Evan Prodromou 42322efb25 revert to common_user_error, which is what is used everywhere
darcs-hash:20080626225002-84dde-898a118457577e321f426270f8c98072962341ab.gz
2008-06-26 18:50:02 -04:00
matthew.gregg a9cf27c4e6 Missing quote in the conditional CSS for IE browsers. Fix for http://laconi.ca/PITS/00104
darcs-hash:20080624171305-982e4-732e5d4f9ad5d92145c6cbc7568ef9393e962dfb.gz
2008-06-24 13:13:05 -04:00
matthew.gregg 25dad58d42 xhtml/xml and IE do not mix so well PITS # 00103
darcs-hash:20080623173043-982e4-5951fba93a2aa28f3e8e622167f6b33c1abc6949.gz
2008-06-23 13:30:43 -04:00
Evan Prodromou cc35d84545 take out the instructions
darcs-hash:20080626215525-34904-6642f29eebddcdb52955017bdd69da9ee87c3d20.gz
2008-06-26 17:55:25 -04:00
Evan Prodromou b73a06f7a2 UNDO: better formatting for notice instructions
darcs-hash:20080626215308-34904-3dc92c082d793a92f3d3521f83ef38c009432d0b.gz
2008-06-26 17:53:08 -04:00
Evan Prodromou 877f56851c better formatting for notice instructions
darcs-hash:20080626215308-34904-872bd73f57b618e9f5670d47ee26da993f81a431.gz
2008-06-26 17:53:08 -04:00
Evan Prodromou e9dd281735 add a bit of instructions
darcs-hash:20080626215204-34904-04b3c1508c0265d47f7a01c5d0d99f9a4b1d1535.gz
2008-06-26 17:52:04 -04:00
Evan Prodromou d34fc127a5 better handling of too-long messages
darcs-hash:20080626214654-34904-68a52888deaaca54fe39bcd77ae51997aa3a3959.gz
2008-06-26 17:46:54 -04:00
Evan Prodromou ec4a6c7812 fancy URLs for IM settings
darcs-hash:20080626184931-34904-d83ce6fc0f3d126929e01804dafea466249b329b.gz
2008-06-26 14:49:31 -04:00
Evan Prodromou f5caccc827 show checkbox as checked or not
darcs-hash:20080626182705-34904-893d72f480c330beb2d8f871da0d2cd9b902ffbf.gz
2008-06-26 14:27:05 -04:00
Evan Prodromou 1152a0f680 move text out of input, into a separate span
darcs-hash:20080626182231-34904-e8d139c2a8b5cd07fa0179b0bcf5cd41f1a1217b.gz
2008-06-26 14:22:31 -04:00
Evan Prodromou c20bcca0c5 get rid of label on checkbox, just include it as contents
darcs-hash:20080626181726-34904-c21801c5f2a74b6e66130308cdc106429cf7f43c.gz
2008-06-26 14:17:26 -04:00
Evan Prodromou db2d79cd31 some UI changes to the IM settings
darcs-hash:20080626181144-34904-87503e70e6705b06ebb6c19910583f4fba1b22e0.gz
2008-06-26 14:11:44 -04:00
Evan Prodromou ae18afc070 less tricky with recoverpassword
darcs-hash:20080624220626-34904-94cb8a4cd1f1a7a96e78ab57e760f8de42f4eaca.gz
2008-06-24 18:06:26 -04:00
Evan Prodromou bb3c796c25 url for confirmation email is better, fancy url
darcs-hash:20080624220335-34904-2c4089bf6d1b37b6f613ce89c6fad104727e7487.gz
2008-06-24 18:03:35 -04:00
Evan Prodromou 5650d698be using bogus attribute of $rm
darcs-hash:20080624040234-34904-bf5e87a55ee94c74b840c6a62e78e476c7b5f8d3.gz
2008-06-24 00:02:34 -04:00
Evan Prodromou cdeddb6ffc think && was binding too closely in remembered_user
darcs-hash:20080624040058-34904-0f16041ec545e1a42384178f6cd52edcae967d2a.gz
2008-06-24 00:00:58 -04:00
Evan Prodromou 1db5ba0576 check session name COOKIE before ensuring session
darcs-hash:20080624034906-34904-a21bab1db498d69c616606126f6b788a2188b1e2.gz
2008-06-23 23:49:06 -04:00
Evan Prodromou 25a6f240a4 better cookie building
darcs-hash:20080624033223-34904-39ffa0aebcb9d173a7e5dd09870681ebb6e7313d.gz
2008-06-23 23:32:23 -04:00
Evan Prodromou fcd473a1a3 set user takes a nickname, not a user object
darcs-hash:20080624032818-34904-bf8c5594c42c797820e080250c955645a5a84aa1.gz
2008-06-23 23:28:18 -04:00