Commit Graph

196 Commits

Author SHA1 Message Date
Evan Prodromou
70d5fc4684 Document the site-logo configuration option
The configuration option for site logo wasn't well documented, so I
added it to the README file, config.php.sample, and common.php.
2009-03-11 16:21:10 -04:00
Zach Copley
91980c73a7 Updates to the API to improve Atom feeds 2009-03-10 16:15:57 -07:00
Evan Prodromou
986a322231 Limit duplicate notices in a particular time period (default 60s)
We disallow posting a notice with duplicate content more than once a
minute.

Conflicts:

	config.php.sample
2009-03-07 09:43:50 -08:00
Evan Prodromou
eaac9350dd Merge branch 'ping' of /var/www/mublog.corrupt into corrupt/ping
Conflicts:

	lib/util.php
2009-03-05 14:34:53 -08:00
Evan Prodromou
8cc19b90ee Merge branch '0.7.x' of git@gitorious.org:laconica/dev into 0.7.x 2009-03-04 11:05:58 -08:00
Evan Prodromou
f9babf6a7d Check for config file when running
When running the full system, check for a config file, and throw an
error if none is found.
2009-03-04 06:24:33 -08:00
CiaranG
7279554681 Additional (optional, defaults to off) logging of PEAR error details, which allows database issues to be more easily diagnosed. 2009-03-04 00:23:34 +00:00
Evan Prodromou
b70218dc43 automatically handle non-laconica-named databases 2009-02-28 20:32:31 -08:00
Evan Prodromou
f0d3ba2bc2 Add a flag for if there's no config file 2009-02-28 17:42:12 -08:00
Evan Prodromou
da2348fbbe Optionally ignore some notice sources for public page
We optionally ignore some notice sources from the public page.
Typically these are automatic notice sources like twitterfeed that
don't usually represent the community on the site very well.
2009-02-14 21:55:25 -05:00
Evan Prodromou
9e23b5c5d7 Change action autoloading to allow actions in plugins
Since plugins may define custom actions, we shouldn't require that
there be a file in our actions/ subdir for every action. So, I changed
the (admittedly hackish) auto-loading code in index.php so it instead
checks whether a class exists with the expected name. This, in turn,
uses the increasingly hacking __autoload() function, which I changed
to auto-load stuff named "BlahblahAction" from the actions subdir if
available.
2009-02-09 11:46:26 -05:00
Evan Prodromou
ee4ee388ff include plugin.php early so config can use it 2009-02-09 08:49:28 -05:00
Evan Prodromou
f4e8cc6d9f Add InitializePlugin and CleanupPlugin events
We add two events to allow plugins to initialize and cleanup.
2009-02-09 08:44:30 -05:00
Evan Prodromou
5466f6a6d0 Better exception handling in index
Some better exception handling in Web entry point.
2009-02-09 07:25:35 -05:00
Evan Prodromou
12d7c30ef7 Add event.php before config.php is called 2009-02-09 06:52:39 -05:00
Evan Prodromou
60f737dc1e Update README and version number
README and version number.
2009-02-06 15:35:29 -05:00
Sean Murphy
d4bdb2dc19 Better fix for displaying max file size. 2009-02-05 15:01:44 -05:00
Evan Prodromou
74bf2bf672 Enable configuration files in /etc/laconica/
Enable storing config files in /etc/laconica/, which makes it much
easier to have a single installation with multiple mublogs supported.
2009-01-31 09:38:39 -05:00
Evan Prodromou
32f81b3c0e Initial support for ping service
It makes sense to use the weblogs.com ping service to alert people to
changes on the site. So, we do. Includes an extra ping queue handler.
2009-01-24 18:38:12 +01:00
Evan Prodromou
aadf10cedb Update version number 2009-01-23 08:15:40 +01:00
Evan Prodromou
4163f45004 Update register action to match phpcs and new framework 2009-01-18 13:37:58 +00:00
sarven
4549e577ac Updating Creative Commons text and image 2009-01-16 15:52:17 +00:00
Evan Prodromou
38ad44f632 Auto-load from lib as well as classes 2009-01-16 02:35:56 +00:00
Evan Prodromou
04ef1ba8ee change function headers to K&R style
Another huge change, for PEAR code standards compliance. Function
headers have to be in K&R style (opening brace on its own line),
instead of having the opening brace on the same line as the function
and parameters. So, a little perl magic found all the function
definitions and move the opening brace to the next line (properly
indented... usually).

darcs-hash:20081223193323-84dde-a28e36ecc66672c783c2842d12fc11043c13ab28.gz
2008-12-23 14:33:23 -05:00
Evan Prodromou
eb2f9c98ac replace NULL with null
Another global search-and-replace update. Here, I've replaced the PHP
keyword 'NULL' with its lowercase version. This is another PEAR code
standards change.

darcs-hash:20081223192129-84dde-4a0182e0ec16a01ad88745ad3e08f7cb501aee0b.gz
2008-12-23 14:21:29 -05:00
Evan Prodromou
edbc0c665c replace all tabs with four spaces
The PEAR coding standards decree: no tabs, but indent by four spaces.
I've done a global search-and-replace on all tabs, replacing them by
four spaces. This is a huge change, but it will go a long way to
getting us towards phpcs-compliance. And that means better code
readability, and that means more participation.

darcs-hash:20081223191907-84dde-21e8efe210e6d5d54e935a22d0cee5c7bbfc007d.gz
2008-12-23 14:19:07 -05:00
Evan Prodromou
29b6858f23 bugpatch release code
darcs-hash:20081220204852-34904-d63d2050408db9eeaea0af8e81c5b5c9e0c8f227.gz
2008-12-20 15:48:52 -05:00
Zach Copley
3e70bfa287 Fixed Popular tab (hopefully)
darcs-hash:20081212075617-7b5ce-c56db92d928c58eaa3fed7e4f226e0fca62e2bbf.gz
2008-12-12 02:56:17 -05:00
Evan Prodromou
203bc45842 documentation and version number
darcs-hash:20081212043201-84dde-1bf07467f85f743fb5cb4ec92e5b8934bfb49578.gz
2008-12-11 23:32:01 -05:00
Zach Copley
1e4e6eee32 Ban certain users from posting by nickname and/or ID
darcs-hash:20081210191337-7b5ce-f9a083596b3f5627405c9e233c1994d8338f5731.gz
2008-12-10 14:13:37 -05:00
Evan Prodromou
a143b64666 edit throttling
darcs-hash:20081210174722-84dde-4c79d7f73230d008195bd19738bc9a6017b940e9.gz
2008-12-10 12:47:22 -05:00
Evan Prodromou
f2d9e40787 README for new version
darcs-hash:20081124043723-84dde-289b6415c59eb6955d0a8d3c74bbbdb225b01a02.gz
2008-11-23 23:37:23 -05:00
millette
095ff0feed conflict resolution on people search
darcs-hash:20081123190555-099f7-cd09b07e99355e2f61562324221840f869fea5bb.gz
2008-11-23 14:05:55 -05:00
millette
6b29f6ed70 sphinx integration for notices and profiles
darcs-hash:20081123185136-099f7-ca600dbdfff09762802e1cc58cf8777c45a24402.gz
2008-11-23 13:51:36 -05:00
millette
0bd6f76451 sphinx search of people
darcs-hash:20081120211347-099f7-d5588788dcd9a16cf72ece59da3d2bf9b8171b85.gz
2008-11-20 16:13:47 -05:00
Zach Copley
727c4060a5 New public tabs - Public, Recent tags, Featured, and Favorited
darcs-hash:20081120071930-7b5ce-a15d7308bde085f03aa335c98ecd0aaa3833bc35.gz
2008-11-20 02:19:30 -05:00
Zach Copley
147dd16ab3 trac685 Twitter bridge - Shell script to sync all users' Twitter friends
darcs-hash:20081119011128-7b5ce-74471277443b44d0075f66131028447cfda3b1e4.gz
2008-11-18 20:11:28 -05:00
Evan Prodromou
35407614bb hide certain users from the public stream
On identi.ca, certain users (http://identi.ca/derricklo) publish 5-10
automated notices every half hour or hour. This can flood the public
stream, making it unreadable for casual readers.

We don't want to prevent anyone from using the site for personal use.
However, if their personal use clouds up the public space, we can
gently remove them from that public space without interfering with
their personal activity.

So: this change prevents selected people's notices from appearing in
the public stream. It's hand-configured by an administrator, and
probably doesn't scale beyond 10-20 blacklisted users. It's a stopgap
measure.

darcs-hash:20081120183722-84dde-8a8401fbcbb6abb60a8b36de249323586ea0b22c.gz
2008-11-20 13:37:22 -05:00
Evan Prodromou
4b5158dd4d update version number in common.php
darcs-hash:20081118173250-34904-ebde2dda47e743d5728a3ff9f556a8945b734009.gz
2008-11-18 12:32:50 -05:00
Evan Prodromou
169b3e00e1 add documentation on notice inboxes
darcs-hash:20081113214544-84dde-a6de7a968847a7043aecdf0201abca648dd15e70.gz
2008-11-13 16:45:44 -05:00
millette
4abd5a6ed9 added Shorturl_api to add support for ur1, 2tu and other services lacking a native api - trac31
darcs-hash:20081107193831-099f7-e340280ba9d2abb4dca05733bc04bb5a5069b62b.gz
2008-11-07 14:38:31 -05:00
Evan Prodromou
3a246c1726 add 'invite-only' mode for registration
darcs-hash:20081021182822-5ed1f-9a8ee3960f82d115d43e35baac646f69bc702533.gz
2008-10-21 14:28:22 -04:00
Evan Prodromou
67184b3375 increment the version
darcs-hash:20081006040713-5ed1f-da7f2235b5301c1889922f5c133c01920a316c57.gz
2008-10-06 00:07:13 -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
Evan Prodromou
27b7987b3c version number -- doh!
darcs-hash:20080923045449-5ed1f-073632fdff95f4869730d01d57cfdb83b31401a9.gz
2008-09-23 00:54:49 -04:00
Evan Prodromou
ac60342e89 merge CiaranG's changes for subs
darcs-hash:20080922225031-84dde-c6967f46ae642f8943b0de77d9a82892ecadb4ce.gz
2008-09-22 18:50:31 -04:00
CiaranG
26634ef0a0 Initial support for PostgreSQL
darcs-hash:20080909072224-f6e2c-881bd2e7fb032f336fecae9ca5ce527dd821d3dc.gz
2008-09-09 03:22:24 -04:00
Evan Prodromou
eb4df223e6 integrate local changes with Zach's
darcs-hash:20080916210813-84dde-c2cadb63b09f59ac6c76dc1205a56687de9483ce.gz
2008-09-16 17:08:13 -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
CiaranG
bfb22a9932 XMPP daemon updates including help, sub and subsub commands, plus subscribe/unsubcribe logic broken out into standalone module for sharing
darcs-hash:20080816083422-f6e2c-fb8b4e0581719bd8c3f433e661ec9742e1b84cbc.gz
2008-08-16 04:34:22 -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
aed0fff4ea scripts daemonize themselves
darcs-hash:20080904184031-84dde-eba2061f3aa898d0c791ffeb70837f759778c567.gz
2008-09-04 14:40:31 -04:00
Evan Prodromou
782fe0130f optionally turn encryption on or off in the XMPP connection
For identi.ca, we had some problems with the XMPP daemon getting
"stuck" in I/O through the encrypted (by default) XMPP socket. Turning
off encryption helped. So, now it's an option.

darcs-hash:20080826131814-84dde-2c4a809c6fb666dfb4b96d0d61205fe418f4e4b4.gz
2008-08-26 09:18:14 -04:00
CiaranG
92645bbc57 XMPP sub/unsub and help commands
darcs-hash:20080822191032-f6e2c-a3a7efbbaad1ec7c48ef132a8ba34fc8b8651969.gz
2008-08-22 15:10:32 -04:00
Evan Prodromou
97341a4c94 fix include path bug
darcs-hash:20080822210654-84dde-68595effcfc11d5e4497c72b189b5f046a8b3ca6.gz
2008-08-22 17:06:54 -04:00
Evan Prodromou
a91cd75c17 local-only is optional on public timeline
darcs-hash:20080822210307-84dde-c90f6e7953d11c5b12c7a084ac23e5578412932c.gz
2008-08-22 17:03:07 -04:00
Evan Prodromou
14c9366aac include external libs in a subdir to make install easier
darcs-hash:20080822131714-84dde-6978424ded2ed1041a65142a25560654ac717fcd.gz
2008-08-22 09:17:14 -04:00
Evan Prodromou
5923f958c9 auto-load OAuthRequest
darcs-hash:20080813195408-84dde-a1de441ce50759f50b2c88b45d626dc4e0892d31.gz
2008-08-13 15:54:08 -04:00
Evan Prodromou
37c5e8ca3c make tag dropoff configurable
darcs-hash:20080811175820-84dde-f3d934495fa90fadde5f7d5d0c37c5f2a575a9d8.gz
2008-08-11 13:58:20 -04:00
Evan Prodromou
d2807d966e version upgrade
darcs-hash:20080731050632-34904-db9fc10c55321b81a33732a2062bf72914927cec.gz
2008-07-31 01:06:32 -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
984b9b6b42 require validation code
darcs-hash:20080729025156-84dde-f3d9d26db3a500ff04f3a4ce3a3ff1846b6eca08.gz
2008-07-28 22:51:56 -04:00
Mike Cochrane
341563d6cd Auto/Lazy load the class files
darcs-hash:20080724234701-533db-ceab005e4c418a62d49af04e7835e963b67b03e0.gz
2008-07-24 19:47:01 -04:00
mikec
a4fa34cecb Resolve conflicts after pull from evan
darcs-hash:20080721135637-edabd-cca33bc0a0936423b9fd2ffdf9413236123d680e.gz
2008-07-21 09:56:37 -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
matthew.gregg
6dd211530f Patch for PITS 00032, 00033, 00034
darcs-hash:20080719003417-982e4-7004f8a4dfb447f941457c30b0b2289eee5582e6.gz
2008-07-18 20:34:17 -04:00
Mike Cochrane
5d84485001 First cut at hastags support.
darcs-hash:20080720055702-533db-193ed842b0d0a952bef71a3c5287213ada0ef15c.gz
2008-07-20 01:57:02 -04:00
Evan Prodromou
e97c06e8e2 let admins prevent registration
darcs-hash:20080724235508-84dde-8bac4d9dd772adb9f27d083b3d0b6ed5b7526dbf.gz
2008-07-24 19:55:08 -04:00
Evan Prodromou
60ba63b04e default for mirror in DB
darcs-hash:20080724205456-84dde-855e907d68c9548e99efe1068b5a53733e5555bf.gz
2008-07-24 16:54:56 -04:00
Evan Prodromou
64ed01f0af centralize and optimize with-friends query
darcs-hash:20080722160213-84dde-2e466b9cc4601a8cb7237770a7df17a2f9dcadb9.gz
2008-07-22 12:02:13 -04:00
Evan Prodromou
3642967315 require sms carrier
darcs-hash:20080720193228-84dde-00e82ee00a1c94f6adb079ea3ac6affa5aad280c.gz
2008-07-20 15:32:28 -04:00
Evan Prodromou
f50bc70445 increment software version
darcs-hash:20080718164317-34904-693c42830fa5682f49ac2213b31153172815b9a5.gz
2008-07-18 12:43:17 -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
753a03d895 public indexers in config file
darcs-hash:20080717134331-84dde-b63c9b7e318d74e2cfea14cc962ec2d519f20d43.gz
2008-07-17 09:43:31 -04:00
Evan Prodromou
d9b164b3bd default timezone
darcs-hash:20080716210949-84dde-b12d95acdf6f15887fe83fea8f968c972b862be5.gz
2008-07-16 17:09:49 -04:00
Evan Prodromou
4798cd3126 theme server support
darcs-hash:20080716205947-84dde-fa57c8fc140cc479e14b50479df13447abaef31b.gz
2008-07-16 16:59:47 -04:00
Evan Prodromou
0b1528382b default value for avatar server
darcs-hash:20080716205541-84dde-1c98befb2d53613fe1b161d479b8f91adbfb7f6c.gz
2008-07-16 16:55:41 -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
c265587612 bad default for email on command-line systems
darcs-hash:20080716055326-5a68a-368860d9a9dfd071e7855c3d05a24b7004f59912.gz
2008-07-16 01:53:26 -04:00
Evan Prodromou
e81361812f debugging changes on development server
darcs-hash:20080714140209-d018c-02b3372603f4a012c230f0fffb6e7f29e43e013a.gz
2008-07-14 10:02:09 -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
Evan Prodromou
84aee646fa update version number
darcs-hash:20080710042324-84dde-9d26f10470fa0e9614717c2f2b976d6d9e6f4361.gz
2008-07-10 00:23:24 -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
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
18849f46e9 bump the version number
darcs-hash:20080702183839-34904-540719c718ab29fc4d808e0d8b1b65b53c2f3b0b.gz
2008-07-02 14:38:39 -04:00
Evan Prodromou
c6ddd4268b change version number
Update the version number.

darcs-hash:20080701185305-34904-482a2392e60f26ca80147798cb39d955414050cb.gz
2008-07-01 14:53:05 -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
f874067401 move markdown require to common
darcs-hash:20080630170545-84dde-7bd95c43f3943e9cc5bf9ec6f57da0ff12204601.gz
2008-06-30 13:05:45 -04:00
Evan Prodromou
c2d20ccdd8 new version number
darcs-hash:20080626205409-34904-62ff39380f8fc22085825d0cee5fe8cf356459e5.gz
2008-06-26 16:54:09 -04:00
Evan Prodromou
64ba09f9a3 handle host !
darcs-hash:20080626075920-34904-0aad06d788f8dbf3a03d17752ba49d866322594e.gz
2008-06-26 03:59:20 -04:00
Evan Prodromou
be3a44651c implement rememberme functionality
Added a checkbox on login or register to remember the current user. If
the login is successful, this sets a cookie with a random code (saved
in the DB). If they come back, and they aren't logged in "normally",
we check to see if they have a rememberme cookie. If so, we log them
in.

However, they can't change settings -- cookie theft is too prevalent.
So we mark a session as having a "real" (password or OpenID) login, or
not. In settings pages, we check to see if the login is "real", and if
not, we redirect to the login page.

darcs-hash:20080624025234-34904-ad20001bf35bf41fcb63a0c357fd929aacc55fdb.gz
2008-06-23 22:52:34 -04:00
Evan Prodromou
7d9372ec50 first pass at a daemon to receive XMPP messages
darcs-hash:20080623022710-84dde-bf3d3e3ce87957b9a91d38c16cf834d07b9933ea.gz
2008-06-22 22:27:10 -04:00
Evan Prodromou
d758c11784 disallow nicknames on a blacklist
darcs-hash:20080622180437-34904-4b6313f6fd8845232031663c5c2df00dff725183.gz
2008-06-22 14:04:37 -04:00
Evan Prodromou
a554e28e37 version number changed
darcs-hash:20080622172354-34904-6d09d8e6cceafb348b88528fe15e907bf1244347.gz
2008-06-22 13:23:54 -04:00
Evan Prodromou
403039510c require the right class
darcs-hash:20080622155454-34904-2598501f3d1788eb1ead9252e5925637e721a525.gz
2008-06-22 11:54:54 -04:00
Evan Prodromou
bf0be3ddb7 confirm email addresses
darcs-hash:20080620051536-5ed1f-231e427832dd20c861eb7a6dc1171315e90f455b.gz
2008-06-20 01:15:36 -04:00
Evan Prodromou
d08a2761f2 update version
darcs-hash:20080619150158-5ed1f-e488de5630d8ca131b3ad95c6701bfb3c1e5d569.gz
2008-06-19 11:01:58 -04:00
Evan Prodromou
de9cd14a6f default DB driver is DB
darcs-hash:20080619020634-84dde-37a8f87b9f293534ed167e183fa2d08f6714c2ad.gz
2008-06-18 22:06:34 -04:00
Evan Prodromou
024dc6c098 email notification on new subscriptions
darcs-hash:20080615030202-84dde-ebed7919c227ce280dc818f301e15001eb8b5926.gz
2008-06-14 23:02:02 -04:00