summaryrefslogtreecommitdiff
path: root/lib/util.php
AgeCommit message (Collapse)Author
2008-08-26updates for invitationsEvan Prodromou
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-25fix the invite urlEvan Prodromou
darcs-hash:20080825193450-84dde-a9a2e16b65c21a22adcb5574c4040d401513e961.gz
2008-08-25invite fancy urlEvan Prodromou
darcs-hash:20080825193333-84dde-d02930a6e8c2333cbaa3ec4cddb7e31d1cbaf3eb.gz
2008-08-25add invite to the nav menuEvan Prodromou
darcs-hash:20080825193235-84dde-fb91c560029b3aa7c73709dba57e00d3cc7f5122.gz
2008-09-22use common-config instead of $config in common_languageEvan Prodromou
darcs-hash:20080922172631-84dde-357c532ac1fb1e2fec54680eb9d294a2ede23ab0.gz
2008-09-15cache noticesWithFriends in memcachedEvan Prodromou
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-04better @ linksEvan Prodromou
darcs-hash:20080904224129-84dde-6844b29ab1818954aacaf6d9ef11371dbb11812a.gz
2008-09-04Resolve remote subscribe and omb problems with quotes (Tickets #604 and #567)CiaranG
darcs-hash:20080904065504-f6e2c-f0c770f52624e7151a93f2ed2b8813657ca88c14.gz
2008-08-31Elide_TagsGarret Buell
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-31Allow_multicase_tagsGarret Buell
Make "#test", "#Test", and "#tEsT" all preserve appearance but link to the same tag darcs-hash:20080901001241-e3c0d-b466f35f4f023c6c90a6d2817487c97be9a1bbca.gz
2008-08-31Tags_without_fancyGarret Buell
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-30use common log in error handler rather than echoEvan Prodromou
darcs-hash:20080830053052-84dde-279d1c52e9b8696079ba686009ce2d71725a690e.gz
2008-08-29split public stream to its own queue handlerEvan Prodromou
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-29harmonize csrf and queuesEvan Prodromou
darcs-hash:20080829174012-84dde-4859ce0a34a50080f8376fa3278c3aa3e3a3046d.gz
2008-08-27misprint of omb as omsEvan Prodromou
darcs-hash:20080828012619-84dde-f7e993f345220d3642743e9f2567d7f8e6e4b6ce.gz
2008-08-27change return in queue functionEvan Prodromou
darcs-hash:20080828001414-d018c-fa900f60f0af20c01e8b83a74834ddf46829f4b2.gz
2008-08-27got two lines reversedEvan Prodromou
darcs-hash:20080827211940-84dde-d5b404023a2fb6b74b6255dd91910c9ec7df3cc6.gz
2008-08-27break up monolithic xmppdaemon into multiple queue handlersEvan Prodromou
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-28fix random function nameEvan Prodromou
darcs-hash:20080829021854-84dde-818492a31c07dd0921c2a693095ca7ac901b6d35.gz
2008-08-28code for session tokenEvan Prodromou
darcs-hash:20080829015304-84dde-1c93203bdfbd4c1696cdd3c07212ff16a9f727dd.gz
2008-08-27get language before setting it.Evan Prodromou
darcs-hash:20080828005323-84dde-8f69e1e6115faa544c22436539148dac53ed6f65.gz
2008-08-25never allow blank passwordsEvan Prodromou
darcs-hash:20080825185245-84dde-f2ad86c1aedc2a42f7b468775234be53a7e84d5b.gz
2008-08-25use common_sql_now() instead of DB_DataObject_CastEvan Prodromou
darcs-hash:20080825182338-84dde-ec0edef9469b294b7e23945f1bc7d810da988ed7.gz
2008-08-17use UTF-8 as the internal encodingEvan Prodromou
darcs-hash:20080817153024-84dde-ca566d665fff08d52f1f9796e2731417585d4c6f.gz
2008-08-07LOG_ERROR -> LOG_ERR (again)Evan Prodromou
darcs-hash:20080807234227-84dde-a64619c71de020aa2284ca1a36ea2a71ff8b29a6.gz
2008-08-06fix config globalEvan Prodromou
darcs-hash:20080806122119-84dde-41fb0645db58ac5ce74b485c8cb68f7275e74915.gz
2008-08-06fixup locale stuff from mikenzEvan Prodromou
darcs-hash:20080806040433-84dde-a504751a8a0329a37d866e68a9ecda6a5d629c55.gz
2008-08-04Set the C locate to avoid tr_TR php bug see http://www.topolis.lt/php/#35050mikec
darcs-hash:20080804133727-edabd-4bd34431d0ab8519ec512b59be354720925da9a0.gz
2008-08-05make init of lang environment happen earlier, or when user language may have ↵Evan Prodromou
changed darcs-hash:20080806034515-84dde-e32cbfec2890f50b610d0441659180038b060473.gz
2008-07-30try to slim down the top menu so it all fitsEvan Prodromou
darcs-hash:20080731020933-84dde-80d7abb2d681a9f748b16f6245d33396e1f899b2.gz
2008-07-30let @rejon do the homework http://ur1.ca/17cEvan Prodromou
darcs-hash:20080731020433-84dde-641127c2de488087c1525fc773d544ba5b136550.gz
2008-07-29Update some gettext strings and number the arguements so life is easier for ↵Mike Cochrane
translators darcs-hash:20080729080641-533db-560337e226a02dd6fc671f090883d4bedd50eaaa.gz
2008-07-29move the language info, fix dir for localesEvan Prodromou
darcs-hash:20080730035446-84dde-8ce202ea6956bb49e1be98307136fc299862ab9b.gz
2008-07-29relEvan Prodromou
darcs-hash:20080729182558-84dde-3f3eab4da119cf57fb55896b114146fd72007824.gz
2008-07-25change 'deletenotice' to 'notice/delete'Evan Prodromou
darcs-hash:20080726034209-84dde-02b25960aeb361319f8037b17aed6290d477cf7b.gz
2008-07-25Queue_item correct name in dequeue functionEvan Prodromou
darcs-hash:20080726033958-84dde-09d117b3e5bb997ddfd6548806ce7a51a38434e7.gz
2008-07-24Cache the DateTimeZon objectsMike Cochrane
darcs-hash:20080724234619-533db-015a2751ade3b5b8befb8a735fe89acd4742c4b9.gz
2008-07-22No errors if it's not setMike Cochrane
darcs-hash:20080722082840-533db-6df7b1fe05bbcaef6862d3e9b5ee3bcd277523e7.gz
2008-07-22Only Set reply details if there is something to reply toMike Cochrane
darcs-hash:20080722082724-533db-ead12f037aa716dc548d6a4b04493ada5049ec96.gz
2008-07-20Opensearch updatesmatthew.gregg
This adds htaccess and searches for people and notices. darcs-hash:20080720195505-982e4-3f03e6ab4c466ae131e025b6a3c26c7bb9a99c03.gz
2008-07-20User definable timezones. Work in UTC internally and display per user/site ↵Mike Cochrane
default. http://laconi.ca/PITS/00011 darcs-hash:20080720141325-533db-87cb60501434c9dc0ac13716ba5d8b17754431f5.gz
2008-07-20Strip characters that shouldn't be in xml. Fixes http://laconi.ca/PITS/00253 ↵Mike Cochrane
for future messages, or all after a regeneration of rendered messages darcs-hash:20080720122832-533db-7fda43b257160b90788f0d860d50df995d463ee8.gz
2008-07-20Fix undefined variable errorMike Cochrane
darcs-hash:20080720100024-533db-d2b5b63f169b6e16e08e81c8da63b7f9f69e7521.gz
2008-07-20Notice errorMike Cochrane
darcs-hash:20080720094917-533db-386e12dbeabcfb9bc74cdce11e6bc197964929b7.gz
2008-07-19Adds Opensearch descriptionmatthew.gregg
darcs-hash:20080720015823-982e4-b33e1ef01cd071e958c9c51625190513b86594f3.gz
2008-07-18Patch for PITS 00032, 00033, 00034matthew.gregg
darcs-hash:20080719003417-982e4-7004f8a4dfb447f941457c30b0b2289eee5582e6.gz
2008-07-15Added notice deletion http://laconi.ca/PITS/00045matthew.gregg
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-20First cut at hastags support.Mike Cochrane
darcs-hash:20080720055702-533db-193ed842b0d0a952bef71a3c5287213ada0ef15c.gz
2008-07-20More notice errors and fix and incorrect variable nameMike Cochrane
darcs-hash:20080720055558-533db-781488916e178921f1bcd6ea141df10c1a0ace55.gz
2008-07-24don't show register link if the site is closedEvan Prodromou
darcs-hash:20080724235804-84dde-daf159e938289ad2d593d3825ce845bcbecac053.gz