Merge branch 'testing' of git@gitorious.org:statusnet/mainline into testing

This commit is contained in:
Sarven Capadisli 2010-03-04 13:28:53 -05:00
commit 9cedb154b4
47 changed files with 19971 additions and 13249 deletions

378
README
View File

@ -2,33 +2,33 @@
README README
------ ------
StatusNet 0.9.0 ("Stand") Beta 5 StatusNet 0.9.0 ("Stand")
1 Feb 2010 4 Mar 2010
This is the README file for StatusNet (formerly Laconica), the Open This is the README file for StatusNet, the Open Source microblogging
Source microblogging platform. It includes installation instructions, platform. It includes installation instructions, descriptions of
descriptions of options you can set, warnings, tips, and general info options you can set, warnings, tips, and general info for
for administrators. Information on using StatusNet can be found in the administrators. Information on using StatusNet can be found in the
"doc" subdirectory or in the "help" section on-line. "doc" subdirectory or in the "help" section on-line.
About About
===== =====
StatusNet (formerly Laconica) is a Free and Open Source microblogging StatusNet is a Free and Open Source microblogging platform. It helps
platform. It helps people in a community, company or group to exchange people in a community, company or group to exchange short (140
short (140 characters, by default) messages over the Web. Users can characters, by default) messages over the Web. Users can choose which
choose which people to "follow" and receive only their friends' or people to "follow" and receive only their friends' or colleagues'
colleagues' status messages. It provides a similar service to sites status messages. It provides a similar service to sites like Twitter,
like Twitter, Jaiku, Yammer, and Plurk. Google Buzz, or Yammer.
With a little work, status messages can be sent to mobile phones, With a little work, status messages can be sent to mobile phones,
instant messenger programs (GTalk/Jabber), and specially-designed instant messenger programs (GTalk/Jabber), and specially-designed
desktop clients that support the Twitter API. desktop clients that support the Twitter API.
StatusNet supports an open standard called OpenMicroBlogging StatusNet supports an open standard called OStatus
<http://openmicroblogging.org/> that lets users on different Web sites <http://ostatus.org/> that lets users in different networks follow
or in different companies subscribe to each others' notices. It each other. It enables a distributed social network spread all across
enables a distributed social network spread all across the Web. the Web.
StatusNet was originally developed for the Open Software Service, StatusNet was originally developed for the Open Software Service,
Identi.ca <http://identi.ca/>. It is shared with you in hope that you Identi.ca <http://identi.ca/>. It is shared with you in hope that you
@ -77,203 +77,51 @@ for additional terms.
New this version New this version
================ ================
This is a major feature release since version 0.8.2, released Nov 1 2009. This is a major feature release since version 0.8.3, released Feb 1
It is also a security release since 0.9.0beta4 January 27 2010. Beta 2010. It is the final release version of 0.9.0.
users are strongly encouraged to upgrade to deal with a security alert.
http://status.net/wiki/Security_alert_0000002
Notable changes this version: Notable changes this version:
- Records of deleted notices are stored without the notice content. - Support for the new distributed status update standard OStatus
- Much of the optional core featureset has been moved to plugins. <http://ostatus.org>, based on PubSubHubbub, Salmon, Webfinger,
- OpenID support moved from core to a plugin. Helps test the strength of and Activity Streams.
our plugin architecture and makes it easy to disable this - Support for location. Notices are (optionally) marked with lat-long
functionality for e.g. intranet sites. information, and can be shown on a map.
- Many additional hook events (see EVENTS.txt for details). - No fixed content size. Notice size is configurable, from 1 to
- OMB 0.1 support re-implemented using libomb. unlimited number of characters. Default is still 140!
- Re-structure database so notices, messages, bios and group - An authorization framework, allowing different levels of users.
descriptions can be over 140 characters. Limit defined by - A Web-based administration panel.
site administrator as configuration option; can be unlimited. - A moderation system that lets site moderators sandbox, silence,
- Configuration data now optionally stored in the database, which or delete uncooperative users.
overrides any settings in config files. - A flag system that lets users flag profiles for moderator review.
- Twitter integration re-implemented as a plugin. - Support for OAuth <http://oauth.net> authentication in the Twitter
- Facebook integration re-implemented as a plugin. API.
- Role-based authorization framework. Users can have named roles, and - A pluggable authentication system.
roles can have rights (e.g., to delete notices, change configuration - An authentication plugin for LDAP servers.
data, or ban uncooperative users). Default roles 'admin' (for - Many features that were core in 0.8.x are now plugins, such
configuration) and 'moderator' (for community management) added. as OpenID, Twitter integration, Facebook integration
- Plugin for PubSubHubBub (PuSH) support. - A much-improved offline processing system
- Considerable code style cleanup to meet PEAR code standards. - In-browser "realtime" updates using a number of realtime
- Made a common library for HTTP-client access which uses available servers (Meteor, Orbited, Cometd)
HTTP libraries where possible. - A plugin to provide an interface optimized for mobile browsers
- Added statuses/home_timeline method to API. - Support for Facebook Connect
- Hooks for plugins to handle notices offline, either by defining - Support for logging in with a Twitter account
their own queue handler scripts or to use a default plugin queue - Vastly improved translation with additional languages and
handler script. translation in plugins
- Plugins can now modify the database schema, adding their own tables - Support for all-SSL instances
or modifying existing ones. - Core support for "repeats" (like Twitter's "retweets")
- Groups API. - Pluggable caching system, with plugins for Memcached,
- Twitter API supports Web caching for some methods. APC, XCache, and a disk-based cache
- Twitter API refactored into one-action-per-method. - Plugin to support RSSCloud
- Realtime plugin supports a tear-off window. - A framework for adding advertisements to a public site,
- FOAF for groups. and plugins for Google AdSense and OpenX server
- Moved all JavaScript tags to just before </body> by default,
significantly speeding up apparent page load time. There are also literally thousands of bugs fixed and minor features
- Added a Realtime plugin for Orbited server. added. A full changelog is available at http://status.net/wiki/StatusNet_0.9.0.
- Added a mobile plugin to give a more mobile-phone-friendly layout
when a mobile browser is detected. Under the covers, the software has a vastly improved plugin and
- Use CSS sprites for most common icons. extension mechanism that makes writing powerful and flexible additions
- Fixes for images and buttons on Web output. to the core functionality much easier.
- New plugin requires that users validate their email before posting.
- New plugin UserFlag lets users flag other profiles for review.
- Considerably better i18n support. Use TranslateWiki to update
translations.
- Notices and profiles now store location information.
- New plugin, Geonames, for turning location names and lat/long pairs
into structured IDs and vice versa. Architecture reusable for other
systems.
- Better check of license compatibility between site licenses.
- Some improvements in XMPP output.
- Media upload in the API.
- Replies appear in the user's inbox.
- Improved the UI on the bookmarklet.
- StatusNet identities can be used as OpenID identities.
- Script to register a user.
- Script to make someone a group admin.
- Script to make someone a site admin or moderator.
- 'login' command.
- Pluggable authentication.
- LDAP authentication plugin.
- Script for console interaction with the site (!).
- Users don't see group posts from people they've blocked.
- Admin panel interface for changing site configuration.
- Users can be sandboxed (limited contributions) or silenced
(no contributions) by moderators.
- Many changes to make language usage more consistent.
- Sphinx search moved to a plugin.
- GeoURL plugin.
- Profile and group lists support hAtom.
- Massive refactoring of util.js.
- Mapstraction plugin to show maps on inbox and profile pages.
- Play/pause buttons for realtime notices.
- Support for geo microformat.
- Partial support for feed subscriptions, RSSCloud, PubSubHubBub.
- Support for geolocation in browser (Chrome, Firefox).
- Quit trying to negotiate HTML format. Always use text/html.
We lose, and so do Web standards. Boo.
- Better logging of request info.
- Better output for errors in Web interface.
- No longer store .mo files; these need to be generated.
- Minify plugin.
- Events to allow pluginizing logger.
- New framework for plugin localization.
- Gravatar plugin.
- Add support for "repeats" (similar to Twitter's "retweets").
- Support for repeats in Twitter API.
- Better notification of direct messages.
- New plugin to add "powered by StatusNet" to logo.
- Returnto works for private sites.
- Localisation updates, including new Persian translation.
- CAS authentication plugin
- Get rid of DB_DataObject native cache (big memory leaker)
- setconfig.php script to set configuration variables
- Blacklist plugin, to blacklist URLs and nicknames
- Users can set flag whether they want to share location
both in notice form (for one notice) and profile settings
(any notice)
- notice inboxes moved from normalized notice_inbox table to
denormalized inbox table
- Automatic compression of Memcache
- Memory caching pluginized
- Memcache, XCache, APC and Diskcache plugins
- A script to update user locations
- cache empty query results
- A sample plugin to show best plugin practices
- CacheLog plugin to debug cache accesses
- Require users to login to view attachments on private sites
- Plugin to use Mollom spam detection service
- Plugin for RSSCloud
- Add an array of default plugins
- A version action to give credit to contributors and plugin
developers
- Daemon to read IMAP mailbox instead of using a mailbox script
- Pass session information between SSL and non-SSL server
when SSL set to 'sometimes'
- Major refactoring of queue handlers to manage very
large hosting site (like status.net)
- SubscriptionThrottle plugin to prevent subscription spamming
- Don't enqueue into plugin or SMS queues when disabled (breaks unqueuehandler if SMS queue isn't attached)
- Improve name validation checks on local File references
- fix local file include vulnerability in doc.php
- Reusing fixed selector name for 'processing' in util.js
- Removed hAtom pattern from registration page.
- restructuring of User::registerNew() lost password munging
- Add a script to clear the cache for a given key
- buggy fetch for site owner
- Added missing concat of </li> in Realtime response
- Updated XHR binded events to work better in jQuery 1.4.1. Using .live() for event delegation instead of jQuery.data() and checking to see if an element was previously binded.
- Updated jQuery Form Plugin from v2.17 to v2.36
- Updated jQuery JavaScript Library from v1.3.2 to v1.4.1
- move schema.type.php to typeschema.php like other files
- Add Really Simple Discovery (RSD) support
- Add a robots.txt URL to the site root
- error clearing tags for profiles from memcached
- on exceptions, stomp logs the error and reenqueues
- add lat, lon, location and remove closing tag from geocode.php
- Use passed-in lat long in geocode.php
- better handling of null responses from geonames.org
- Globalized form notice data geo values
- Using jQuery chaining in FormNoticeXHR
- Using form object instead of form_id and find(). Slightly faster and easier to read.
- removed describeTable from base class, and fixed it up in pgsql
- getTableDef() mostly working in postgres
- move the schema DDL sql off into seperate files for each db we support
- plugin to limit number of registered users
- add hooks for user registration
- live fast, die young in bash scripts
- for single-user mode, retrieve either site owner or defined nickname
- method to get the site owner
- define a constant for the 'owner' role of a site
- add simple cache getter/setter static functions to Memcached_DataObject
- Adds notice author's name to @title in Realtime response
- Hides .author from XHR response in showstream
- Hides .author from XHR response in showstream
- Fix more fatal errors in queue edge cases
- Don't attempt to resend XMPP messages that can't be broadcast due to the profile being deleted.
- Wrap each bit of distrib queue handler's saving operation in a try/catch; log exceptions but let everything else continue.
- Log exceptions from queuedaemon.php if they're not already caught
- Move sessions settings to its own panel
- Fixes for status_network db object .ini and tag setter script
- Add a script to set tags for sites
- Adjust API authentication to also check for OAuth protocol params in the HTTP Authorization header, as defined in OAuth HTTP Authorization Scheme.
- Last-chance distribution if enqueueing fails
- Manual failover for stomp queues.
- lost config in index.php made all traffic go to master
- "Revert "move RW setup above user get in index.php so remember_me works""
- Revert "move RW setup above user get in index.php so remember_me works"
- move RW setup above user get in index.php so remember_me works
- hide most DB_DataObject errors
- always set up database_rw, regardless, so cached sessions work
- update mysqltimestamps on insert and update
- additional debugging data for Sessions
- 'Sign in with Twitter' button img
- Update to biz theme
- Remove redundant session token field from form (was already being added by base class).
- 'Sign in with Twitter' button img
- Can now set $config['queue']['stomp_persistent'] = false; to explicitly disable persistence when we queue items
- Showing processing indicator for form_repeat on submit instead of form
- Removed avatar from repeat of username (matches noticelist)
- Removed unused variable assignment for avatar URL and added missing fn
- Don't preemptively close existing DB connections for web views (needed to keep # of conns from going insane on multi-site queue daemons, so just doing for CLI) May, or may not, help with mystery session problems
- dropping the setcookie() call from common_ensure_session() since we're pretty sure it's unnecessary
- append '/' on cookie path for now (may still need some refactoring)
- set session cookie correctly
- Fix for Mapstraction plugin's zoomed map links
- debug log line for control channel sub
- Move faceboookapp.js to the Facebook plugin
- fix for fix for bad realtime JS load
- default 24-hour expiry on Memcached objects where not specified.
Prerequisites Prerequisites
============= =============
@ -312,6 +160,8 @@ For some functionality, you will also need the following extensions:
- Sphinx Search. A client for the sphinx server, an alternative - Sphinx Search. A client for the sphinx server, an alternative
to MySQL or Postgresql fulltext search. You will also need a to MySQL or Postgresql fulltext search. You will also need a
Sphinx server to serve the search queries. Sphinx server to serve the search queries.
- bcmath or gmp. For Salmon signatures (part of OStatus). Needed
if you have OStatus configured.
You will almost definitely get 2-3 times better performance from your You will almost definitely get 2-3 times better performance from your
site if you install a PHP bytecode cache/accelerator. Some well-known site if you install a PHP bytecode cache/accelerator. Some well-known
@ -361,6 +211,9 @@ and the URLs are listed here for your convenience.
- PEAR Validate is an oEmbed dependency. - PEAR Validate is an oEmbed dependency.
- PEAR Net_URL2 is an oEmbed dependency. - PEAR Net_URL2 is an oEmbed dependency.
- Console_GetOpt for parsing command-line options. - Console_GetOpt for parsing command-line options.
- libomb. a library for implementing OpenMicroBlogging 0.1, the
predecessor to OStatus.
- HTTP_Request2, a library for making HTTP requests.
A design goal of StatusNet is that the basic Web functionality should A design goal of StatusNet is that the basic Web functionality should
work on even the most restrictive commercial hosting services. work on even the most restrictive commercial hosting services.
@ -378,9 +231,9 @@ especially if you've previously installed PHP/MySQL packages.
1. Unpack the tarball you downloaded on your Web server. Usually a 1. Unpack the tarball you downloaded on your Web server. Usually a
command like this will work: command like this will work:
tar zxf statusnet-0.8.2.tar.gz tar zxf statusnet-0.9.0.tar.gz
...which will make a statusnet-0.8.2 subdirectory in your current ...which will make a statusnet-0.9.0 subdirectory in your current
directory. (If you don't have shell access on your Web server, you directory. (If you don't have shell access on your Web server, you
may have to unpack the tarball on your local computer and FTP the may have to unpack the tarball on your local computer and FTP the
files to the server.) files to the server.)
@ -388,34 +241,34 @@ especially if you've previously installed PHP/MySQL packages.
2. Move the tarball to a directory of your choosing in your Web root 2. Move the tarball to a directory of your choosing in your Web root
directory. Usually something like this will work: directory. Usually something like this will work:
mv statusnet-0.8.2 /var/www/mublog mv statusnet-0.9.0 /var/www/statusnet
This will make your StatusNet instance available in the mublog path of This will make your StatusNet instance available in the statusnet path of
your server, like "http://example.net/mublog". "microblog" or your server, like "http://example.net/statusnet". "microblog" or
"statusnet" might also be good path names. If you know how to "statusnet" might also be good path names. If you know how to
configure virtual hosts on your web server, you can try setting up configure virtual hosts on your web server, you can try setting up
"http://micro.example.net/" or the like. "http://micro.example.net/" or the like.
3. Make your target directory writeable by the Web server. 3. Make your target directory writeable by the Web server.
chmod a+w /var/www/mublog/ chmod a+w /var/www/statusnet/
On some systems, this will probably work: On some systems, this will probably work:
chgrp www-data /var/www/mublog/ chgrp www-data /var/www/statusnet/
chmod g+w /var/www/mublog/ chmod g+w /var/www/statusnet/
If your Web server runs as another user besides "www-data", try If your Web server runs as another user besides "www-data", try
that user's default group instead. As a last resort, you can create that user's default group instead. As a last resort, you can create
a new group like "mublog" and add the Web server's user to the group. a new group like "statusnet" and add the Web server's user to the group.
4. You should also take this moment to make your avatar, background, and 4. You should also take this moment to make your avatar, background, and
file subdirectories writeable by the Web server. An insecure way to do file subdirectories writeable by the Web server. An insecure way to do
this is: this is:
chmod a+w /var/www/mublog/avatar chmod a+w /var/www/statusnet/avatar
chmod a+w /var/www/mublog/background chmod a+w /var/www/statusnet/background
chmod a+w /var/www/mublog/file chmod a+w /var/www/statusnet/file
You can also make the avatar, background, and file directories You can also make the avatar, background, and file directories
writeable by the Web server group, as noted above. writeable by the Web server group, as noted above.
@ -438,16 +291,16 @@ especially if you've previously installed PHP/MySQL packages.
MySQL shell: MySQL shell:
GRANT ALL on statusnet.* GRANT ALL on statusnet.*
TO 'lacuser'@'localhost' TO 'statusnetuser'@'localhost'
IDENTIFIED BY 'lacpassword'; IDENTIFIED BY 'statusnetpassword';
You should change 'lacuser' and 'lacpassword' to your preferred new You should change 'statusnetuser' and 'statusnetpassword' to your preferred new
username and password. You may want to test logging in to MySQL as username and password. You may want to test logging in to MySQL as
this new user. this new user.
7. In a browser, navigate to the StatusNet install script; something like: 7. In a browser, navigate to the StatusNet install script; something like:
http://yourserver.example.com/mublog/install.php http://yourserver.example.com/statusnet/install.php
Enter the database connection information and your site name. The Enter the database connection information and your site name. The
install program will configure your site and install the initial, install program will configure your site and install the initial,
@ -467,16 +320,16 @@ By default, StatusNet will use URLs that include the main PHP program's
name in them. For example, a user's home profile might be name in them. For example, a user's home profile might be
found at: found at:
http://example.org/mublog/index.php/mublog/fred http://example.org/statusnet/index.php/statusnet/fred
On certain systems that don't support this kind of syntax, they'll On certain systems that don't support this kind of syntax, they'll
look like this: look like this:
http://example.org/mublog/index.php?p=mublog/fred http://example.org/statusnet/index.php?p=statusnet/fred
It's possible to configure the software so it looks like this instead: It's possible to configure the software so it looks like this instead:
http://example.org/mublog/fred http://example.org/statusnet/fred
These "fancy URLs" are more readable and memorable for users. To use These "fancy URLs" are more readable and memorable for users. To use
fancy URLs, you must either have Apache 2.x with .htaccess enabled and fancy URLs, you must either have Apache 2.x with .htaccess enabled and
@ -501,7 +354,7 @@ your server.
You should now be able to navigate to a "fancy" URL on your server, You should now be able to navigate to a "fancy" URL on your server,
like: like:
http://example.net/mublog/main/register http://example.net/statusnet/main/register
If you changed your HTTP server configuration, you may need to restart If you changed your HTTP server configuration, you may need to restart
the server first. the server first.
@ -553,7 +406,7 @@ For this to work, there *must* be a domain or sub-domain for which all
1. Run the SQL script carrier.sql in your StatusNet database. This will 1. Run the SQL script carrier.sql in your StatusNet database. This will
usually work: usually work:
mysql -u "lacuser" --password="lacpassword" statusnet < db/carrier.sql mysql -u "statusnetuser" --password="statusnetpassword" statusnet < db/carrier.sql
This will populate your database with a list of wireless carriers This will populate your database with a list of wireless carriers
that support email SMS gateways. that support email SMS gateways.
@ -697,43 +550,6 @@ our kind of hacky home-grown DB-based queue solution. See the "queues"
config section below for how to configure to use STOMP. As of this config section below for how to configure to use STOMP. As of this
writing, the software has been tested with ActiveMQ. writing, the software has been tested with ActiveMQ.
Sitemaps
--------
Sitemap files <http://sitemaps.org/> are a very nice way of telling
search engines and other interested bots what's available on your site
and what's changed recently. You can generate sitemap files for your
StatusNet instance.
1. Choose your sitemap URL layout. StatusNet creates a number of
sitemap XML files for different parts of your site. You may want to
put these in a sub-directory of your StatusNet directory to avoid
clutter. The sitemap index file tells the search engines and other
bots where to find all the sitemap files; it *must* be in the main
installation directory or higher. Both types of file must be
available through HTTP.
2. To generate your sitemaps, run the following command on your server:
php scripts/sitemap.php -f index-file-path -d sitemap-directory -u URL-prefix-for-sitemaps
Here, index-file-path is the full path to the sitemap index file,
like './sitemapindex.xml'. sitemap-directory is the directory where
you want the sitemaps stored, like './sitemaps/' (make sure the dir
exists). URL-prefix-for-sitemaps is the full URL for the sitemap dir,
typically something like <http://example.net/mublog/sitemaps/>.
You can use several methods for submitting your sitemap index to
search engines to get your site indexed. One is to add a line like the
following to your robots.txt file:
Sitemap: /mublog/sitemapindex.xml
This is a good idea for letting *all* Web spiders know about your
sitemap. You can also submit sitemap files to major search engines
using their respective "Webmaster centres"; see sitemaps.org for links
to these resources.
Themes Themes
------ ------
@ -806,7 +622,7 @@ management, but host it on a public server.
Note that this is an experimental feature; total privacy is not Note that this is an experimental feature; total privacy is not
guaranteed or ensured. Also, privacy is all-or-nothing for a site; you guaranteed or ensured. Also, privacy is all-or-nothing for a site; you
can't have some accounts or notices private, and others public. can't have some accounts or notices private, and others public.
Finally, the interaction of private sites with OpenMicroBlogging is Finally, the interaction of private sites with OStatus is
undefined. Remote users won't be able to subscribe to users on a undefined. Remote users won't be able to subscribe to users on a
private site, but users of the private site may be able to subscribe private site, but users of the private site may be able to subscribe
to users on a remote site. (Or not... it's not well tested.) The to users on a remote site. (Or not... it's not well tested.) The
@ -816,17 +632,17 @@ Access to file attachments can also be restricted to logged-in users only.
1. Add a directory outside the web root where your file uploads will be 1. Add a directory outside the web root where your file uploads will be
stored. Usually a command like this will work: stored. Usually a command like this will work:
mkdir /var/www/mublog-files mkdir /var/www/statusnet-files
2. Make the file uploads directory writeable by the web server. An 2. Make the file uploads directory writeable by the web server. An
insecure way to do this is: insecure way to do this is:
chmod a+x /var/www/mublog-files chmod a+x /var/www/statusnet-files
3. Tell StatusNet to use this directory for file uploads. Add a line 3. Tell StatusNet to use this directory for file uploads. Add a line
like this to your config.php: like this to your config.php:
$config['attachments']['dir'] = '/var/www/mublog-files'; $config['attachments']['dir'] = '/var/www/statusnet-files';
Upgrading Upgrading
========= =========
@ -841,7 +657,7 @@ with this situation.
If you've been using StatusNet 0.7, 0.6, 0.5 or lower, or if you've If you've been using StatusNet 0.7, 0.6, 0.5 or lower, or if you've
been tracking the "git" version of the software, you will probably been tracking the "git" version of the software, you will probably
want to upgrade and keep your existing data. There is no automated want to upgrade and keep your existing data. There is no automated
upgrade procedure in StatusNet 0.8.2. Try these step-by-step upgrade procedure in StatusNet 0.9.0. Try these step-by-step
instructions; read to the end first before trying them. instructions; read to the end first before trying them.
0. Download StatusNet and set up all the prerequisites as if you were 0. Download StatusNet and set up all the prerequisites as if you were
@ -861,8 +677,8 @@ instructions; read to the end first before trying them.
maildaemon.php file, and running something like "newaliases". maildaemon.php file, and running something like "newaliases".
5. Once all writing processes to your site are turned off, make a 5. Once all writing processes to your site are turned off, make a
final backup of the Web directory and database. final backup of the Web directory and database.
6. Move your StatusNet directory to a backup spot, like "mublog.bak". 6. Move your StatusNet directory to a backup spot, like "statusnet.bak".
7. Unpack your StatusNet 0.8.2 tarball and move it to "mublog" or 7. Unpack your StatusNet 0.9.0 tarball and move it to "statusnet" or
wherever your code used to be. wherever your code used to be.
8. Copy the config.php file and avatar directory from your old 8. Copy the config.php file and avatar directory from your old
directory to your new directory. directory to your new directory.
@ -972,7 +788,7 @@ This section is a catch-all for site-wide variables.
name: the name of your site, like 'YourCompany Microblog'. name: the name of your site, like 'YourCompany Microblog'.
server: the server part of your site's URLs, like 'example.net'. server: the server part of your site's URLs, like 'example.net'.
path: The path part of your site's URLs, like 'mublog' or '' path: The path part of your site's URLs, like 'statusnet' or ''
(installed in root). (installed in root).
fancy: whether or not your site uses fancy URLs (see Fancy URLs fancy: whether or not your site uses fancy URLs (see Fancy URLs
section above). Default is false. section above). Default is false.
@ -1662,7 +1478,7 @@ repository (see below), and you get a compilation error ("unexpected
T_STRING") in the browser, check to see that you don't have any T_STRING") in the browser, check to see that you don't have any
conflicts in your code. conflicts in your code.
If you upgraded to StatusNet 0.8.2 without reading the "Notice If you upgraded to StatusNet 0.9.0 without reading the "Notice
inboxes" section above, and all your users' 'Personal' tabs are empty, inboxes" section above, and all your users' 'Personal' tabs are empty,
read the "Notice inboxes" section above. read the "Notice inboxes" section above.
@ -1717,16 +1533,16 @@ There are several ways to get more information about StatusNet.
* The #statusnet IRC channel on freenode.net <http://www.freenode.net/>. * The #statusnet IRC channel on freenode.net <http://www.freenode.net/>.
* The StatusNet wiki, http://status.net/wiki/ * The StatusNet wiki, http://status.net/wiki/
* The StatusNet blog, http://status.net/blog/ * The StatusNet blog, http://status.net/blog/
* The StatusNet status update, <http://status.status.net/status> (!) * The StatusNet status update, <http://status.status.net/> (!)
Feedback Feedback
======== ========
* Microblogging messages to http://identi.ca/evan are very welcome. * Microblogging messages to http://support.status.net/ are very welcome.
* The microblogging group http://identi.ca/group/statusnet is a good
place to discuss the software.
* StatusNet's Trac server has a bug tracker for any defects you may find, * StatusNet's Trac server has a bug tracker for any defects you may find,
or ideas for making things better. http://status.net/trac/ or ideas for making things better. http://status.net/trac/
* e-mail to evan@status.net will usually be read and responded to very
quickly, unless the question is really hard.
Credits Credits
======= =======

View File

@ -664,7 +664,7 @@ STR;
updateStatus("StatusNet has been installed at $link"); updateStatus("StatusNet has been installed at $link");
updateStatus( updateStatus(
"You can visit your <a href='$link'>new StatusNet site</a> (login as '$adminNick')." "<strong>DONE!</strong> You can visit your <a href='$link'>new StatusNet site</a> (login as '$adminNick'). If this is your first StatusNet install, you may want to poke around our <a href='http://status.net/wiki/Getting_started'>Getting Started guide</a>."
); );
} }

View File

@ -22,7 +22,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
//exit with 200 response, if this is checking fancy from the installer //exit with 200 response, if this is checking fancy from the installer
if (isset($_REQUEST['p']) && $_REQUEST['p'] == 'check-fancy') { exit; } if (isset($_REQUEST['p']) && $_REQUEST['p'] == 'check-fancy') { exit; }
define('STATUSNET_VERSION', '0.9.0beta6+bugfix1'); define('STATUSNET_VERSION', '0.9.0');
define('LACONICA_VERSION', STATUSNET_VERSION); // compatibility define('LACONICA_VERSION', STATUSNET_VERSION); // compatibility
define('STATUSNET_CODENAME', 'Stand'); define('STATUSNET_CODENAME', 'Stand');

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-07 20:38-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -59,63 +59,31 @@ msgstr ""
msgid "Lost or forgotten password?" msgid "Lost or forgotten password?"
msgstr "" msgstr ""
#: facebookaction.php:386 facebookhome.php:248 #: facebookaction.php:330 facebookhome.php:248
msgid "Pagination" msgid "Pagination"
msgstr "" msgstr ""
#: facebookaction.php:395 facebookhome.php:257 #: facebookaction.php:339 facebookhome.php:257
msgid "After" msgid "After"
msgstr "" msgstr ""
#: facebookaction.php:403 facebookhome.php:265 #: facebookaction.php:347 facebookhome.php:265
msgid "Before" msgid "Before"
msgstr "" msgstr ""
#: facebookaction.php:421 #: facebookaction.php:365
msgid "No notice content!" msgid "No notice content!"
msgstr "" msgstr ""
#: facebookaction.php:427 #: facebookaction.php:371
#, php-format #, php-format
msgid "That's too long. Max notice size is %d chars." msgid "That's too long. Max notice size is %d chars."
msgstr "" msgstr ""
#: facebookaction.php:523 #: facebookaction.php:430
msgid "Notices" msgid "Notices"
msgstr "" msgstr ""
#: facebookutil.php:280
#, php-format
msgid "Your %1$s Facebook application access has been disabled."
msgstr ""
#: facebookutil.php:283
#, php-format
msgid ""
"Hi, %1$s. We're sorry to inform you that we are unable to update your "
"Facebook status from %2$s, and have disabled the Facebook application for "
"your account. This may be because you have removed the Facebook "
"application's authorization, or have deleted your Facebook account. You can "
"re-enable the Facebook application and automatic status updating by re-"
"installing the %2$s Facebook application.\n"
"\n"
"Regards,\n"
"\n"
"%2$s"
msgstr ""
#: FBConnectLogin.php:33
msgid "Already logged in."
msgstr ""
#: FBConnectLogin.php:41
msgid "Login with your Facebook Account"
msgstr ""
#: FBConnectLogin.php:55
msgid "Facebook Login"
msgstr ""
#: facebookhome.php:111 #: facebookhome.php:111
msgid "Server error - couldn't get user!" msgid "Server error - couldn't get user!"
msgstr "" msgstr ""
@ -149,6 +117,56 @@ msgstr ""
msgid "Skip" msgid "Skip"
msgstr "" msgstr ""
#: facebookinvite.php:72
#, php-format
msgid "Thanks for inviting your friends to use %s"
msgstr ""
#: facebookinvite.php:74
msgid "Invitations have been sent to the following users:"
msgstr ""
#: facebookinvite.php:94
#, php-format
msgid "You have been invited to %s"
msgstr ""
#: facebookinvite.php:103
#, php-format
msgid "Invite your friends to use %s"
msgstr ""
#: facebookinvite.php:125
#, php-format
msgid "Friends already using %s:"
msgstr ""
#: facebookinvite.php:143
msgid "Send invitations"
msgstr ""
#: FacebookPlugin.php:413 FacebookPlugin.php:433
msgid "Facebook"
msgstr ""
#: FacebookPlugin.php:414
msgid "Login or register using Facebook"
msgstr ""
#: FacebookPlugin.php:434 FBConnectSettings.php:56
msgid "Facebook Connect Settings"
msgstr ""
#: FacebookPlugin.php:533
msgid ""
"The Facebook plugin allows you to integrate your StatusNet instance with <a "
"href=\"http://facebook.com/\">Facebook</a> and Facebook Connect."
msgstr ""
#: facebookremove.php:58
msgid "Couldn't remove Facebook user."
msgstr ""
#: facebooksettings.php:74 #: facebooksettings.php:74
msgid "There was a problem saving your sync preferences!" msgid "There was a problem saving your sync preferences!"
msgstr "" msgstr ""
@ -193,89 +211,19 @@ msgstr ""
msgid "Sync preferences" msgid "Sync preferences"
msgstr "" msgstr ""
#: facebookinvite.php:72 #: facebookutil.php:285
#, php-format #, php-format
msgid "Thanks for inviting your friends to use %s"
msgstr ""
#: facebookinvite.php:74
msgid "Invitations have been sent to the following users:"
msgstr ""
#: facebookinvite.php:94
#, php-format
msgid "You have been invited to %s"
msgstr ""
#: facebookinvite.php:103
#, php-format
msgid "Invite your friends to use %s"
msgstr ""
#: facebookinvite.php:125
#, php-format
msgid "Friends already using %s:"
msgstr ""
#: facebookinvite.php:143
msgid "Send invitations"
msgstr ""
#: facebookremove.php:58
msgid "Couldn't remove Facebook user."
msgstr ""
#: FBConnectSettings.php:56 FacebookPlugin.php:430
msgid "Facebook Connect Settings"
msgstr ""
#: FBConnectSettings.php:67
msgid "Manage how your account connects to Facebook"
msgstr ""
#: FBConnectSettings.php:92
msgid "There is no Facebook user connected to this account."
msgstr ""
#: FBConnectSettings.php:100
msgid "Connected Facebook user"
msgstr ""
#: FBConnectSettings.php:119
msgid "Disconnect my account from Facebook"
msgstr ""
#: FBConnectSettings.php:124
msgid "" msgid ""
"Disconnecting your Faceboook would make it impossible to log in! Please " "Hi, %1$s. We're sorry to inform you that we are unable to update your "
msgstr "" "Facebook status from %2$s, and have disabled the Facebook application for "
"your account. This may be because you have removed the Facebook "
#: FBConnectSettings.php:128 "application's authorization, or have deleted your Facebook account. You can "
msgid "set a password" "re-enable the Facebook application and automatic status updating by re-"
msgstr "" "installing the %2$s Facebook application.\n"
"\n"
#: FBConnectSettings.php:130 "Regards,\n"
msgid " first." "\n"
msgstr "" "%2$s"
#: FBConnectSettings.php:142
msgid "Disconnect"
msgstr ""
#: FBConnectSettings.php:164 FBConnectAuth.php:90
msgid "There was a problem with your session token. Try again, please."
msgstr ""
#: FBConnectSettings.php:178
msgid "Couldn't delete link to Facebook."
msgstr ""
#: FBConnectSettings.php:194
msgid "You have disconnected from Facebook."
msgstr ""
#: FBConnectSettings.php:197
msgid "Not sure what you're trying to do."
msgstr "" msgstr ""
#: FBConnectAuth.php:51 #: FBConnectAuth.php:51
@ -286,6 +234,10 @@ msgstr ""
msgid "There is already a local user linked with this Facebook." msgid "There is already a local user linked with this Facebook."
msgstr "" msgstr ""
#: FBConnectAuth.php:90 FBConnectSettings.php:164
msgid "There was a problem with your session token. Try again, please."
msgstr ""
#: FBConnectAuth.php:95 #: FBConnectAuth.php:95
msgid "You can't register if you don't agree to the license." msgid "You can't register if you don't agree to the license."
msgstr "" msgstr ""
@ -385,10 +337,59 @@ msgstr ""
msgid "Invalid username or password." msgid "Invalid username or password."
msgstr "" msgstr ""
#: FacebookPlugin.php:409 FacebookPlugin.php:429 #: FBConnectLogin.php:33
msgid "Facebook" msgid "Already logged in."
msgstr "" msgstr ""
#: FacebookPlugin.php:410 #: FBConnectLogin.php:41
msgid "Login or register using Facebook" msgid "Login with your Facebook Account"
msgstr ""
#: FBConnectLogin.php:55
msgid "Facebook Login"
msgstr ""
#: FBConnectSettings.php:67
msgid "Manage how your account connects to Facebook"
msgstr ""
#: FBConnectSettings.php:92
msgid "There is no Facebook user connected to this account."
msgstr ""
#: FBConnectSettings.php:100
msgid "Connected Facebook user"
msgstr ""
#: FBConnectSettings.php:119
msgid "Disconnect my account from Facebook"
msgstr ""
#: FBConnectSettings.php:124
msgid ""
"Disconnecting your Faceboook would make it impossible to log in! Please "
msgstr ""
#: FBConnectSettings.php:128
msgid "set a password"
msgstr ""
#: FBConnectSettings.php:130
msgid " first."
msgstr ""
#: FBConnectSettings.php:142
msgid "Disconnect"
msgstr ""
#: FBConnectSettings.php:178
msgid "Couldn't delete link to Facebook."
msgstr ""
#: FBConnectSettings.php:194
msgid "You have disconnected from Facebook."
msgstr ""
#: FBConnectSettings.php:197
msgid "Not sure what you're trying to do."
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-11 16:27-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -59,3 +59,9 @@ msgstr ""
#: GravatarPlugin.php:177 #: GravatarPlugin.php:177
msgid "Gravatar removed." msgid "Gravatar removed."
msgstr "" msgstr ""
#: GravatarPlugin.php:196
msgid ""
"The Gravatar plugin allows users to use their <a href=\"http://www.gravatar."
"com/\">Gravatar</a> with StatusNet."
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-07 20:38-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -34,15 +34,21 @@ msgstr ""
msgid "User has no profile." msgid "User has no profile."
msgstr "" msgstr ""
#: MapstractionPlugin.php:182
msgid "Map"
msgstr ""
#: MapstractionPlugin.php:193
msgid "Full size"
msgstr ""
#: MapstractionPlugin.php:205
msgid ""
"Show maps of users' and friends' notices with <a href=\"http://www."
"mapstraction.com/\">Mapstraction</a> JavaScript library."
msgstr ""
#: usermap.php:71 #: usermap.php:71
#, php-format #, php-format
msgid "%s map, page %d" msgid "%s map, page %d"
msgstr "" msgstr ""
#: MapstractionPlugin.php:180
msgid "Map"
msgstr ""
#: MapstractionPlugin.php:191
msgid "Full size"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-03-01 14:08-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -223,43 +223,43 @@ msgstr ""
msgid "Salmon signature verification failed." msgid "Salmon signature verification failed."
msgstr "" msgstr ""
#: lib/salmonaction.php:66 #: lib/salmonaction.php:67
msgid "Salmon post must be an Atom entry." msgid "Salmon post must be an Atom entry."
msgstr "" msgstr ""
#: lib/salmonaction.php:114 #: lib/salmonaction.php:115
msgid "Unrecognized activity type." msgid "Unrecognized activity type."
msgstr "" msgstr ""
#: lib/salmonaction.php:122 #: lib/salmonaction.php:123
msgid "This target doesn't understand posts." msgid "This target doesn't understand posts."
msgstr "" msgstr ""
#: lib/salmonaction.php:127 #: lib/salmonaction.php:128
msgid "This target doesn't understand follows." msgid "This target doesn't understand follows."
msgstr "" msgstr ""
#: lib/salmonaction.php:132 #: lib/salmonaction.php:133
msgid "This target doesn't understand unfollows." msgid "This target doesn't understand unfollows."
msgstr "" msgstr ""
#: lib/salmonaction.php:137 #: lib/salmonaction.php:138
msgid "This target doesn't understand favorites." msgid "This target doesn't understand favorites."
msgstr "" msgstr ""
#: lib/salmonaction.php:142 #: lib/salmonaction.php:143
msgid "This target doesn't understand unfavorites." msgid "This target doesn't understand unfavorites."
msgstr "" msgstr ""
#: lib/salmonaction.php:147 #: lib/salmonaction.php:148
msgid "This target doesn't understand share events." msgid "This target doesn't understand share events."
msgstr "" msgstr ""
#: lib/salmonaction.php:152 #: lib/salmonaction.php:153
msgid "This target doesn't understand joins." msgid "This target doesn't understand joins."
msgstr "" msgstr ""
#: lib/salmonaction.php:157 #: lib/salmonaction.php:158
msgid "This target doesn't understand leave events." msgid "This target doesn't understand leave events."
msgstr "" msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-07 20:38-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,140 +16,6 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: openidlogin.php:30 finishopenidlogin.php:34
msgid "Already logged in."
msgstr ""
#: openidlogin.php:37 openidsettings.php:194 finishopenidlogin.php:38
msgid "There was a problem with your session token. Try again, please."
msgstr ""
#: openidlogin.php:66
#, php-format
msgid ""
"For security reasons, please re-login with your [OpenID](%%doc.openid%%) "
"before changing your settings."
msgstr ""
#: openidlogin.php:70
#, php-format
msgid "Login with an [OpenID](%%doc.openid%%) account."
msgstr ""
#: openidlogin.php:95 finishaddopenid.php:170
msgid "OpenID Login"
msgstr ""
#: openidlogin.php:112
msgid "OpenID login"
msgstr ""
#: openidlogin.php:117 openidsettings.php:107
msgid "OpenID URL"
msgstr ""
#: openidlogin.php:119
msgid "Your OpenID URL"
msgstr ""
#: openidlogin.php:122
msgid "Remember me"
msgstr ""
#: openidlogin.php:123
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
#: openidlogin.php:127
msgid "Login"
msgstr ""
#: openidserver.php:106
#, php-format
msgid "You are not authorized to use the identity %s"
msgstr ""
#: openidserver.php:126
msgid "Just an OpenID provider. Nothing to see here, move along..."
msgstr ""
#: OpenIDPlugin.php:123 OpenIDPlugin.php:135
msgid "OpenID"
msgstr ""
#: OpenIDPlugin.php:124
msgid "Login or register with OpenID"
msgstr ""
#: OpenIDPlugin.php:136
msgid "Add or remove OpenIDs"
msgstr ""
#: openid.php:141
msgid "Cannot instantiate OpenID consumer object."
msgstr ""
#: openid.php:151
msgid "Not a valid OpenID."
msgstr ""
#: openid.php:153
#, php-format
msgid "OpenID failure: %s"
msgstr ""
#: openid.php:180
#, php-format
msgid "Could not redirect to server: %s"
msgstr ""
#: openid.php:198
#, php-format
msgid "Could not create OpenID form: %s"
msgstr ""
#: openid.php:214
msgid ""
"This form should automatically submit itself. If not, click the submit "
"button to go to your OpenID provider."
msgstr ""
#: openid.php:246
msgid "Error saving the profile."
msgstr ""
#: openid.php:257
msgid "Error saving the user."
msgstr ""
#: openid.php:277
msgid "OpenID Auto-Submit"
msgstr ""
#: openidtrust.php:51
msgid "OpenID Identity Verification"
msgstr ""
#: openidtrust.php:69
msgid ""
"This page should only be reached during OpenID processing, not directly."
msgstr ""
#: openidtrust.php:118
#, php-format
msgid ""
"%s has asked to verify your identity. Click Continue to verify your "
"identity and login without creating a new password."
msgstr ""
#: openidtrust.php:136
msgid "Continue"
msgstr ""
#: openidtrust.php:137
msgid "Cancel"
msgstr ""
#: finishaddopenid.php:67 #: finishaddopenid.php:67
msgid "Not logged in." msgid "Not logged in."
msgstr "" msgstr ""
@ -179,71 +45,26 @@ msgstr ""
msgid "Error updating profile" msgid "Error updating profile"
msgstr "" msgstr ""
#: openidsettings.php:59 #: finishaddopenid.php:170 openidlogin.php:95
msgid "OpenID settings" msgid "OpenID Login"
msgstr "" msgstr ""
#: openidsettings.php:70 #: finishopenidlogin.php:34 openidlogin.php:30
#, php-format msgid "Already logged in."
msgid ""
"[OpenID](%%doc.openid%%) lets you log into many sites with the same user "
"account. Manage your associated OpenIDs from here."
msgstr "" msgstr ""
#: openidsettings.php:99 #: finishopenidlogin.php:38 openidlogin.php:37 openidsettings.php:194
msgid "Add OpenID" msgid "There was a problem with your session token. Try again, please."
msgstr ""
#: openidsettings.php:102
msgid ""
"If you want to add an OpenID to your account, enter it in the box below and "
"click \"Add\"."
msgstr ""
#: openidsettings.php:117
msgid "Add"
msgstr ""
#: openidsettings.php:129
msgid "Remove OpenID"
msgstr ""
#: openidsettings.php:134
msgid ""
"Removing your only OpenID would make it impossible to log in! If you need to "
"remove it, add another OpenID first."
msgstr ""
#: openidsettings.php:149
msgid ""
"You can remove an OpenID from your account by clicking the button marked "
"\"Remove\"."
msgstr ""
#: openidsettings.php:172
msgid "Remove"
msgstr ""
#: openidsettings.php:208 finishopenidlogin.php:52
msgid "Something weird happened."
msgstr ""
#: openidsettings.php:228
msgid "No such OpenID."
msgstr ""
#: openidsettings.php:233
msgid "That OpenID does not belong to you."
msgstr ""
#: openidsettings.php:237
msgid "OpenID removed."
msgstr "" msgstr ""
#: finishopenidlogin.php:43 #: finishopenidlogin.php:43
msgid "You can't register if you don't agree to the license." msgid "You can't register if you don't agree to the license."
msgstr "" msgstr ""
#: finishopenidlogin.php:52 openidsettings.php:208
msgid "Something weird happened."
msgstr ""
#: finishopenidlogin.php:66 #: finishopenidlogin.php:66
#, php-format #, php-format
msgid "" msgid ""
@ -342,3 +163,186 @@ msgstr ""
#: finishopenidlogin.php:345 #: finishopenidlogin.php:345
msgid "Error connecting user to OpenID." msgid "Error connecting user to OpenID."
msgstr "" msgstr ""
#: openid.php:141
msgid "Cannot instantiate OpenID consumer object."
msgstr ""
#: openid.php:151
msgid "Not a valid OpenID."
msgstr ""
#: openid.php:153
#, php-format
msgid "OpenID failure: %s"
msgstr ""
#: openid.php:180
#, php-format
msgid "Could not redirect to server: %s"
msgstr ""
#: openid.php:198
#, php-format
msgid "Could not create OpenID form: %s"
msgstr ""
#: openid.php:214
msgid ""
"This form should automatically submit itself. If not, click the submit "
"button to go to your OpenID provider."
msgstr ""
#: openid.php:246
msgid "Error saving the profile."
msgstr ""
#: openid.php:257
msgid "Error saving the user."
msgstr ""
#: openid.php:277
msgid "OpenID Auto-Submit"
msgstr ""
#: openidlogin.php:66
#, php-format
msgid ""
"For security reasons, please re-login with your [OpenID](%%doc.openid%%) "
"before changing your settings."
msgstr ""
#: openidlogin.php:70
#, php-format
msgid "Login with an [OpenID](%%doc.openid%%) account."
msgstr ""
#: openidlogin.php:112
msgid "OpenID login"
msgstr ""
#: openidlogin.php:117 openidsettings.php:107
msgid "OpenID URL"
msgstr ""
#: openidlogin.php:119
msgid "Your OpenID URL"
msgstr ""
#: openidlogin.php:122
msgid "Remember me"
msgstr ""
#: openidlogin.php:123
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
#: openidlogin.php:127
msgid "Login"
msgstr ""
#: OpenIDPlugin.php:123 OpenIDPlugin.php:135
msgid "OpenID"
msgstr ""
#: OpenIDPlugin.php:124
msgid "Login or register with OpenID"
msgstr ""
#: OpenIDPlugin.php:136
msgid "Add or remove OpenIDs"
msgstr ""
#: OpenIDPlugin.php:324
msgid "Use <a href=\"http://openid.net/\">OpenID</a> to login to the site."
msgstr ""
#: openidserver.php:106
#, php-format
msgid "You are not authorized to use the identity %s."
msgstr ""
#: openidserver.php:126
msgid "Just an OpenID provider. Nothing to see here, move along..."
msgstr ""
#: openidsettings.php:59
msgid "OpenID settings"
msgstr ""
#: openidsettings.php:70
#, php-format
msgid ""
"[OpenID](%%doc.openid%%) lets you log into many sites with the same user "
"account. Manage your associated OpenIDs from here."
msgstr ""
#: openidsettings.php:99
msgid "Add OpenID"
msgstr ""
#: openidsettings.php:102
msgid ""
"If you want to add an OpenID to your account, enter it in the box below and "
"click \"Add\"."
msgstr ""
#: openidsettings.php:117
msgid "Add"
msgstr ""
#: openidsettings.php:129
msgid "Remove OpenID"
msgstr ""
#: openidsettings.php:134
msgid ""
"Removing your only OpenID would make it impossible to log in! If you need to "
"remove it, add another OpenID first."
msgstr ""
#: openidsettings.php:149
msgid ""
"You can remove an OpenID from your account by clicking the button marked "
"\"Remove\"."
msgstr ""
#: openidsettings.php:172
msgid "Remove"
msgstr ""
#: openidsettings.php:228
msgid "No such OpenID."
msgstr ""
#: openidsettings.php:233
msgid "That OpenID does not belong to you."
msgstr ""
#: openidsettings.php:237
msgid "OpenID removed."
msgstr ""
#: openidtrust.php:51
msgid "OpenID Identity Verification"
msgstr ""
#: openidtrust.php:69
msgid ""
"This page should only be reached during OpenID processing, not directly."
msgstr ""
#: openidtrust.php:118
#, php-format
msgid ""
"%s has asked to verify your identity. Click Continue to verify your "
"identity and login without creating a new password."
msgstr ""
#: openidtrust.php:136
msgid "Continue"
msgstr ""
#: openidtrust.php:137
msgid "Cancel"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-01-22 15:03-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,16 +16,16 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: PoweredByStatusNetPlugin.php:49 #: PoweredByStatusNetPlugin.php:50
#, php-format #, php-format
msgid "powered by %s" msgid "powered by %s"
msgstr "" msgstr ""
#: PoweredByStatusNetPlugin.php:51 #: PoweredByStatusNetPlugin.php:52
msgid "StatusNet" msgid "StatusNet"
msgstr "" msgstr ""
#: PoweredByStatusNetPlugin.php:64 #: PoweredByStatusNetPlugin.php:65
msgid "" msgid ""
"Outputs powered by <a href=\"http://status.net/\">StatusNet</a> after site " "Outputs powered by <a href=\"http://status.net/\">StatusNet</a> after site "
"name." "name."

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-02-24 16:33-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2009-12-07 20:38-0800\n" "POT-Creation-Date: 2010-03-01 14:58-0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,23 +16,48 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: twitterauthorization.php:81 #: twitter.php:320
msgid "Not logged in." msgid "Your Twitter bridge has been disabled."
msgstr "" msgstr ""
#: twitterauthorization.php:131 twitterauthorization.php:150 #: twitter.php:324
#: twitterauthorization.php:170 twitterauthorization.php:217 #, php-format
msgid ""
"Hi, %1$s. We're sorry to inform you that your link to Twitter has been "
"disabled. We no longer seem to have permission to update your Twitter "
"status. (Did you revoke %3$s's access?)\n"
"\n"
"You can re-enable your Twitter bridge by visiting your Twitter settings "
"page:\n"
"\n"
"\t%2$s\n"
"\n"
"Regards,\n"
"%3$s\n"
msgstr ""
#: twitterauthorization.php:181 twitterauthorization.php:229
msgid "Couldn't link your Twitter account." msgid "Couldn't link your Twitter account."
msgstr "" msgstr ""
#: TwitterBridgePlugin.php:89 #: twitterauthorization.php:201
msgid "Couldn't link your Twitter account: oauth_token mismatch."
msgstr ""
#: TwitterBridgePlugin.php:114
msgid "Twitter" msgid "Twitter"
msgstr "" msgstr ""
#: TwitterBridgePlugin.php:90 #: TwitterBridgePlugin.php:115
msgid "Twitter integration options" msgid "Twitter integration options"
msgstr "" msgstr ""
#: TwitterBridgePlugin.php:207
msgid ""
"The Twitter \"bridge\" plugin allows you to integrate your StatusNet "
"instance with <a href=\"http://twitter.com/\">Twitter</a>."
msgstr ""
#: twittersettings.php:59 #: twittersettings.php:59
msgid "Twitter settings" msgid "Twitter settings"
msgstr "" msgstr ""
@ -51,78 +76,81 @@ msgstr ""
msgid "Connected Twitter account" msgid "Connected Twitter account"
msgstr "" msgstr ""
#: twittersettings.php:125 #: twittersettings.php:128
msgid "Remove" msgid "Disconnect my account from Twitter"
msgstr "" msgstr ""
#: twittersettings.php:131 #: twittersettings.php:133
msgid "Preferences" msgid "Disconnecting your Twitter could make it impossible to log in! Please "
msgstr "" msgstr ""
#: twittersettings.php:135 #: twittersettings.php:137
msgid "Automatically send my notices to Twitter." msgid "set a password"
msgstr "" msgstr ""
#: twittersettings.php:142 #: twittersettings.php:139
msgid "Send local \"@\" replies to Twitter." msgid " first."
msgstr "" msgstr ""
#: twittersettings.php:149 #: twittersettings.php:143
msgid "Subscribe to my Twitter friends here." #, php-format
msgid ""
"Keep your %1$s account but disconnect from Twitter. You can use your %1$s "
"password to log in."
msgstr ""
#: twittersettings.php:151
msgid "Disconnect"
msgstr "" msgstr ""
#: twittersettings.php:158 #: twittersettings.php:158
msgid "Import my Friends Timeline." msgid "Preferences"
msgstr "" msgstr ""
#: twittersettings.php:174 #: twittersettings.php:162
msgid "Save" msgid "Automatically send my notices to Twitter."
msgstr ""
#: twittersettings.php:169
msgid "Send local \"@\" replies to Twitter."
msgstr "" msgstr ""
#: twittersettings.php:176 #: twittersettings.php:176
msgid "Add" msgid "Subscribe to my Twitter friends here."
msgstr ""
#: twittersettings.php:185
msgid "Import my Friends Timeline."
msgstr "" msgstr ""
#: twittersettings.php:201 #: twittersettings.php:201
msgid "Save"
msgstr ""
#: twittersettings.php:203
msgid "Add"
msgstr ""
#: twittersettings.php:228
msgid "There was a problem with your session token. Try again, please." msgid "There was a problem with your session token. Try again, please."
msgstr "" msgstr ""
#: twittersettings.php:211 #: twittersettings.php:238
msgid "Unexpected form submission." msgid "Unexpected form submission."
msgstr "" msgstr ""
#: twittersettings.php:230 #: twittersettings.php:257
msgid "Couldn't remove Twitter user." msgid "Couldn't remove Twitter user."
msgstr "" msgstr ""
#: twittersettings.php:234 #: twittersettings.php:261
msgid "Twitter account removed." msgid "Twitter account disconnected."
msgstr "" msgstr ""
#: twittersettings.php:255 twittersettings.php:265 #: twittersettings.php:282 twittersettings.php:292
msgid "Couldn't save Twitter preferences." msgid "Couldn't save Twitter preferences."
msgstr "" msgstr ""
#: twittersettings.php:269 #: twittersettings.php:296
msgid "Twitter preferences saved." msgid "Twitter preferences saved."
msgstr "" msgstr ""
#: twitter.php:333
msgid "Your Twitter bridge has been disabled."
msgstr ""
#: twitter.php:337
#, php-format
msgid ""
"Hi, %1$s. We're sorry to inform you that your link to Twitter has been "
"disabled. We no longer seem to have permission to update your Twitter "
"status. (Did you revoke %3$s's access?)\n"
"\n"
"You can re-enable your Twitter bridge by visiting your Twitter settings "
"page:\n"
"\n"
"\t%2$s\n"
"\n"
"Regards,\n"
"%3$s\n"
msgstr ""